xine-lib 1.2.11
|
Go to the source code of this file.
Data Structures | |
struct | vo_frame_s |
struct | xine_video_port_s |
struct | vo_driver_s |
struct | video_driver_class_s |
struct | rle_elem_s |
struct | argb_layer_s |
struct | vo_overlay_s |
struct | video_overlay_manager_s |
Macros | |
#define | VO_PROP_INTERLACED 0 |
#define | VO_PROP_ASPECT_RATIO 1 |
#define | VO_PROP_HUE 2 |
#define | VO_PROP_SATURATION 3 |
#define | VO_PROP_CONTRAST 4 |
#define | VO_PROP_BRIGHTNESS 5 |
#define | VO_PROP_COLORKEY 6 |
#define | VO_PROP_AUTOPAINT_COLORKEY 7 |
#define | VO_PROP_ZOOM_X 8 |
#define | VO_PROP_PAN_SCAN 9 |
#define | VO_PROP_TVMODE 10 |
#define | VO_PROP_MAX_NUM_FRAMES 11 |
#define | VO_PROP_GAMMA 12 |
#define | VO_PROP_ZOOM_Y 13 |
#define | VO_PROP_DISCARD_FRAMES 14 |
#define | VO_PROP_WINDOW_WIDTH 15 /* read-only */ |
#define | VO_PROP_WINDOW_HEIGHT 16 /* read-only */ |
#define | VO_PROP_BUFS_IN_FIFO 17 /* read-only */ |
#define | VO_PROP_NUM_STREAMS 18 /* read-only */ |
#define | VO_PROP_OUTPUT_WIDTH 19 /* read-only */ |
#define | VO_PROP_OUTPUT_HEIGHT 20 /* read-only */ |
#define | VO_PROP_OUTPUT_XOFFSET 21 /* read-only */ |
#define | VO_PROP_OUTPUT_YOFFSET 22 /* read-only */ |
#define | VO_PROP_SHARPNESS 24 |
#define | VO_PROP_NOISE_REDUCTION 25 |
#define | VO_PROP_BUFS_TOTAL 26 /* read-only */ |
#define | VO_PROP_BUFS_FREE 27 /* read-only */ |
#define | VO_PROP_MAX_VIDEO_WIDTH 28 /* read-only */ |
#define | VO_PROP_MAX_VIDEO_HEIGHT 29 /* read-only */ |
#define | VO_NUM_PROPERTIES 30 |
#define | OVL_PALETTE_SIZE 256 |
#define | OVL_MAX_OPACITY 0x0f |
#define | VO_NUM_RECENT_FRAMES 2 |
#define | VO_TOP_FIELD 0x0001 |
#define | VO_BOTTOM_FIELD 0x0002 |
#define | VO_BOTH_FIELDS (VO_TOP_FIELD | VO_BOTTOM_FIELD) |
#define | VO_PAN_SCAN_FLAG 0x0004 |
#define | VO_INTERLACED_FLAG 0x0008 |
#define | VO_NEW_SEQUENCE_FLAG 0x0010 /* set after MPEG2 Sequence Header Code (used by XvMC) */ |
#define | VO_CHROMA_422 0x0020 /* used by VDPAU, default is chroma_420 */ |
#define | VO_STILL_IMAGE 0x0040 |
#define | VO_GET_FRAME_MAY_FAIL 0x0080 /* video out may return NULL if frame allocation failed */ |
#define | VO_FULLRANGE 0x100 |
#define | VO_GET_FLAGS_CM(flags) ((flags >> 8) & 31) |
#define | VO_SET_FLAGS_CM(cm, flags) flags = ((flags) & ~0x1f00) | (((cm) & 31) << 8) |
#define | VO_CAP_YV12 0x00000001 /* driver can handle YUV 4:2:0 pictures */ |
#define | VO_CAP_YUY2 0x00000002 /* driver can handle YUY2 pictures */ |
#define | VO_CAP_XVMC_MOCOMP 0x00000004 /* driver can use XvMC motion compensation */ |
#define | VO_CAP_XVMC_IDCT 0x00000008 /* driver can use XvMC idct acceleration */ |
#define | VO_CAP_UNSCALED_OVERLAY 0x00000010 /* driver can blend overlay at output resolution */ |
#define | VO_CAP_CROP 0x00000020 /* driver can crop */ |
#define | VO_CAP_XXMC 0x00000040 /* driver can use extended XvMC */ |
#define | VO_CAP_VDPAU_H264 0x00000080 /* driver can use VDPAU for H264 */ |
#define | VO_CAP_VDPAU_MPEG12 0x00000100 /* driver can use VDPAU for mpeg1/2 */ |
#define | VO_CAP_VDPAU_VC1 0x00000200 /* driver can use VDPAU for VC1 */ |
#define | VO_CAP_VDPAU_MPEG4 0x00000400 /* driver can use VDPAU for mpeg4-part2 */ |
#define | VO_CAP_VAAPI 0x00000800 /* driver can use VAAPI */ |
#define | VO_CAP_COLOR_MATRIX 0x00004000 /* driver can use alternative yuv->rgb matrices */ |
#define | VO_CAP_FULLRANGE 0x00008000 /* driver handles fullrange yuv */ |
#define | VO_CAP_HUE 0x00010000 |
#define | VO_CAP_SATURATION 0x00020000 |
#define | VO_CAP_CONTRAST 0x00040000 |
#define | VO_CAP_BRIGHTNESS 0x00080000 |
#define | VO_CAP_COLORKEY 0x00100000 |
#define | VO_CAP_AUTOPAINT_COLORKEY 0x00200000 |
#define | VO_CAP_ZOOM_X 0x00400000 |
#define | VO_CAP_ZOOM_Y 0x00800000 |
#define | VO_CAP_CUSTOM_EXTENT_OVERLAY 0x01000000 /* driver can blend custom extent overlay to output extent */ |
#define | VO_CAP_ARGB_LAYER_OVERLAY 0x02000000 /* driver supports true color overlay */ |
#define | VO_CAP_VIDEO_WINDOW_OVERLAY 0x04000000 /* driver can scale video to an area within overlay */ |
#define | VO_CAP_GAMMA 0x08000000 |
#define | VO_CAP_SHARPNESS 0x10000000 |
#define | VO_CAP_NOISE_REDUCTION 0x20000000 |
#define | VIDEO_OUT_DRIVER_IFACE_VERSION 22 |
#define | default_video_driver_class_dispose (void (*) (video_driver_class_t *this_gen))free |
Typedefs | |
typedef struct vo_frame_s | vo_frame_t |
typedef struct vo_driver_s | vo_driver_t |
typedef struct video_driver_class_s | video_driver_class_t |
typedef struct vo_overlay_s | vo_overlay_t |
typedef struct video_overlay_manager_s | video_overlay_manager_t |
typedef struct rle_elem_s | rle_elem_t |
typedef struct argb_layer_s | argb_layer_t |
Functions | |
void | set_argb_layer_ptr (argb_layer_t **dst, argb_layer_t *src) |
xine_video_port_t * | _x_vo_new_port (xine_t *xine, vo_driver_t *driver, int grabonly) |
Build a video output port from a given video driver. More... | |
#define default_video_driver_class_dispose (void (*) (video_driver_class_t *this_gen))free |
#define OVL_MAX_OPACITY 0x0f |
#define OVL_PALETTE_SIZE 256 |
#define VIDEO_OUT_DRIVER_IFACE_VERSION 22 |
#define VO_BOTH_FIELDS (VO_TOP_FIELD | VO_BOTTOM_FIELD) |
#define VO_BOTTOM_FIELD 0x0002 |
#define VO_CAP_ARGB_LAYER_OVERLAY 0x02000000 /* driver supports true color overlay */ |
#define VO_CAP_AUTOPAINT_COLORKEY 0x00200000 |
#define VO_CAP_BRIGHTNESS 0x00080000 |
#define VO_CAP_COLOR_MATRIX 0x00004000 /* driver can use alternative yuv->rgb matrices */ |
#define VO_CAP_COLORKEY 0x00100000 |
#define VO_CAP_CONTRAST 0x00040000 |
#define VO_CAP_CROP 0x00000020 /* driver can crop */ |
#define VO_CAP_CUSTOM_EXTENT_OVERLAY 0x01000000 /* driver can blend custom extent overlay to output extent */ |
#define VO_CAP_FULLRANGE 0x00008000 /* driver handles fullrange yuv */ |
#define VO_CAP_GAMMA 0x08000000 |
#define VO_CAP_HUE 0x00010000 |
#define VO_CAP_NOISE_REDUCTION 0x20000000 |
#define VO_CAP_SATURATION 0x00020000 |
#define VO_CAP_SHARPNESS 0x10000000 |
#define VO_CAP_UNSCALED_OVERLAY 0x00000010 /* driver can blend overlay at output resolution */ |
#define VO_CAP_VAAPI 0x00000800 /* driver can use VAAPI */ |
#define VO_CAP_VDPAU_H264 0x00000080 /* driver can use VDPAU for H264 */ |
#define VO_CAP_VDPAU_MPEG12 0x00000100 /* driver can use VDPAU for mpeg1/2 */ |
#define VO_CAP_VDPAU_MPEG4 0x00000400 /* driver can use VDPAU for mpeg4-part2 */ |
#define VO_CAP_VDPAU_VC1 0x00000200 /* driver can use VDPAU for VC1 */ |
#define VO_CAP_VIDEO_WINDOW_OVERLAY 0x04000000 /* driver can scale video to an area within overlay */ |
#define VO_CAP_XVMC_IDCT 0x00000008 /* driver can use XvMC idct acceleration */ |
#define VO_CAP_XVMC_MOCOMP 0x00000004 /* driver can use XvMC motion compensation */ |
#define VO_CAP_XXMC 0x00000040 /* driver can use extended XvMC */ |
#define VO_CAP_YUY2 0x00000002 /* driver can handle YUY2 pictures */ |
#define VO_CAP_YV12 0x00000001 /* driver can handle YUV 4:2:0 pictures */ |
#define VO_CAP_ZOOM_X 0x00400000 |
#define VO_CAP_ZOOM_Y 0x00800000 |
#define VO_CHROMA_422 0x0020 /* used by VDPAU, default is chroma_420 */ |
#define VO_FULLRANGE 0x100 |
#define VO_GET_FLAGS_CM | ( | flags | ) | ((flags >> 8) & 31) |
#define VO_GET_FRAME_MAY_FAIL 0x0080 /* video out may return NULL if frame allocation failed */ |
#define VO_INTERLACED_FLAG 0x0008 |
#define VO_NEW_SEQUENCE_FLAG 0x0010 /* set after MPEG2 Sequence Header Code (used by XvMC) */ |
#define VO_NUM_PROPERTIES 30 |
#define VO_NUM_RECENT_FRAMES 2 |
#define VO_PAN_SCAN_FLAG 0x0004 |
#define VO_PROP_ASPECT_RATIO 1 |
#define VO_PROP_AUTOPAINT_COLORKEY 7 |
#define VO_PROP_BRIGHTNESS 5 |
#define VO_PROP_BUFS_FREE 27 /* read-only */ |
#define VO_PROP_BUFS_IN_FIFO 17 /* read-only */ |
#define VO_PROP_BUFS_TOTAL 26 /* read-only */ |
#define VO_PROP_COLORKEY 6 |
#define VO_PROP_CONTRAST 4 |
#define VO_PROP_DISCARD_FRAMES 14 |
#define VO_PROP_GAMMA 12 |
#define VO_PROP_HUE 2 |
#define VO_PROP_INTERLACED 0 |
#define VO_PROP_MAX_NUM_FRAMES 11 |
#define VO_PROP_MAX_VIDEO_HEIGHT 29 /* read-only */ |
#define VO_PROP_MAX_VIDEO_WIDTH 28 /* read-only */ |
#define VO_PROP_NOISE_REDUCTION 25 |
#define VO_PROP_NUM_STREAMS 18 /* read-only */ |
#define VO_PROP_OUTPUT_HEIGHT 20 /* read-only */ |
#define VO_PROP_OUTPUT_WIDTH 19 /* read-only */ |
#define VO_PROP_OUTPUT_XOFFSET 21 /* read-only */ |
#define VO_PROP_OUTPUT_YOFFSET 22 /* read-only */ |
#define VO_PROP_PAN_SCAN 9 |
#define VO_PROP_SATURATION 3 |
#define VO_PROP_SHARPNESS 24 |
#define VO_PROP_TVMODE 10 |
#define VO_PROP_WINDOW_HEIGHT 16 /* read-only */ |
#define VO_PROP_WINDOW_WIDTH 15 /* read-only */ |
#define VO_PROP_ZOOM_X 8 |
#define VO_PROP_ZOOM_Y 13 |
#define VO_SET_FLAGS_CM | ( | cm, | |
flags | |||
) | flags = ((flags) & ~0x1f00) | (((cm) & 31) << 8) |
#define VO_STILL_IMAGE 0x0040 |
#define VO_TOP_FIELD 0x0001 |
typedef struct argb_layer_s argb_layer_t |
typedef struct rle_elem_s rle_elem_t |
typedef struct video_driver_class_s video_driver_class_t |
typedef struct video_overlay_manager_s video_overlay_manager_t |
typedef struct vo_driver_s vo_driver_t |
typedef struct vo_frame_s vo_frame_t |
typedef struct vo_overlay_s vo_overlay_t |
xine_video_port_t * _x_vo_new_port | ( | xine_t * | xine, |
vo_driver_t * | driver, | ||
int | grabonly | ||
) |
Build a video output port from a given video driver.
References _, _x_video_overlay_new_manager(), xine_s::clock, xine_s::config, vo_frame_s::draw, vo_frame_s::extra_info, vo_frame_s::free, vo_frame_s::id, vo_frame_s::lock, vo_frame_s::next, NULL, NUM_FRAME_BUFFERS, vo_driver_t::open, vo_frame_s::port, vo_frame_s::proc_duplicate_frame_data, config_values_s::register_num, video_out_loop(), vo_close(), vo_display_queue_open(), vo_enable_overlay(), vo_exit(), vo_flush(), vo_frame_dec_lock(), vo_frame_draw(), vo_frame_inc_lock(), vo_free_queue_open(), vo_get_capabilities(), vo_get_frame(), vo_get_last_frame(), vo_get_overlay_manager(), vo_get_property(), vo_new_grab_video_frame(), vo_open(), VO_PROP_MAX_NUM_FRAMES, vo_set_property(), vo_speed_change_cb(), vo_status(), vo_streams_open(), vo_ticket_revoked(), vo_trigger_drawing(), xine_mallocz_aligned(), XINE_VERBOSITY_DEBUG, XINE_VERBOSITY_LOG, XINE_VERBOSITY_NONE, and xprintf.
Referenced by xine_new_framegrab_video_port(), and xine_open_video_driver().
void set_argb_layer_ptr | ( | argb_layer_t ** | dst, |
argb_layer_t * | src | ||
) |
References argb_layer_destroy(), argb_layer_s::mutex, and argb_layer_s::ref_count.
Referenced by _osd_show(), internal_video_overlay_free_handle(), osd_free_object(), osd_set_argb_buffer(), and video_overlay_event().