32#ifndef HAVE_VIDEO_OUT_H
33#define HAVE_VIDEO_OUT_H
195 uint32_t
height,
double ratio,
196 int format,
int flags);
241#define VO_PROP_INTERLACED 0
242#define VO_PROP_ASPECT_RATIO 1
244#define VO_PROP_SATURATION 3
245#define VO_PROP_CONTRAST 4
246#define VO_PROP_BRIGHTNESS 5
247#define VO_PROP_COLORKEY 6
248#define VO_PROP_AUTOPAINT_COLORKEY 7
249#define VO_PROP_ZOOM_X 8
250#define VO_PROP_PAN_SCAN 9
251#define VO_PROP_TVMODE 10
252#define VO_PROP_MAX_NUM_FRAMES 11
253#define VO_PROP_GAMMA 12
254#define VO_PROP_ZOOM_Y 13
260#define VO_PROP_DISCARD_FRAMES 14
261#define VO_PROP_WINDOW_WIDTH 15
262#define VO_PROP_WINDOW_HEIGHT 16
263#define VO_PROP_BUFS_IN_FIFO 17
264#define VO_PROP_NUM_STREAMS 18
265#define VO_PROP_OUTPUT_WIDTH 19
266#define VO_PROP_OUTPUT_HEIGHT 20
267#define VO_PROP_OUTPUT_XOFFSET 21
268#define VO_PROP_OUTPUT_YOFFSET 22
269#define VO_PROP_SHARPNESS 24
270#define VO_PROP_NOISE_REDUCTION 25
271#define VO_PROP_BUFS_TOTAL 26
272#define VO_PROP_BUFS_FREE 27
273#define VO_PROP_MAX_VIDEO_WIDTH 28
274#define VO_PROP_MAX_VIDEO_HEIGHT 29
275#define VO_NUM_PROPERTIES 30
280#define OVL_PALETTE_SIZE 256
282#define OVL_MAX_OPACITY 0x0f
288#define VO_NUM_RECENT_FRAMES 2
291#define VO_TOP_FIELD 0x0001
292#define VO_BOTTOM_FIELD 0x0002
293#define VO_BOTH_FIELDS (VO_TOP_FIELD | VO_BOTTOM_FIELD)
294#define VO_PAN_SCAN_FLAG 0x0004
295#define VO_INTERLACED_FLAG 0x0008
296#define VO_NEW_SEQUENCE_FLAG 0x0010
297#define VO_CHROMA_422 0x0020
298#define VO_STILL_IMAGE 0x0040
299#define VO_GET_FRAME_MAY_FAIL 0x0080
302#define VO_FULLRANGE 0x100
303#define VO_GET_FLAGS_CM(flags) ((flags >> 8) & 31)
304#define VO_SET_FLAGS_CM(cm,flags) flags = ((flags) & ~0x1f00) | (((cm) & 31) << 8)
307#define VO_CAP_YV12 0x00000001
308#define VO_CAP_YUY2 0x00000002
309#define VO_CAP_XVMC_MOCOMP 0x00000004
310#define VO_CAP_XVMC_IDCT 0x00000008
311#define VO_CAP_UNSCALED_OVERLAY 0x00000010
312#define VO_CAP_CROP 0x00000020
313#define VO_CAP_XXMC 0x00000040
314#define VO_CAP_VDPAU_H264 0x00000080
315#define VO_CAP_VDPAU_MPEG12 0x00000100
316#define VO_CAP_VDPAU_VC1 0x00000200
317#define VO_CAP_VDPAU_MPEG4 0x00000400
318#define VO_CAP_VAAPI 0x00000800
319#define VO_CAP_COLOR_MATRIX 0x00004000
320#define VO_CAP_FULLRANGE 0x00008000
321#define VO_CAP_HUE 0x00010000
322#define VO_CAP_SATURATION 0x00020000
323#define VO_CAP_CONTRAST 0x00040000
324#define VO_CAP_BRIGHTNESS 0x00080000
325#define VO_CAP_COLORKEY 0x00100000
326#define VO_CAP_AUTOPAINT_COLORKEY 0x00200000
327#define VO_CAP_ZOOM_X 0x00400000
328#define VO_CAP_ZOOM_Y 0x00800000
329#define VO_CAP_CUSTOM_EXTENT_OVERLAY 0x01000000
330#define VO_CAP_ARGB_LAYER_OVERLAY 0x02000000
331#define VO_CAP_VIDEO_WINDOW_OVERLAY 0x04000000
332#define VO_CAP_GAMMA 0x08000000
333#define VO_CAP_SHARPNESS 0x10000000
334#define VO_CAP_NOISE_REDUCTION 0x20000000
346#define VIDEO_OUT_DRIVER_IFACE_VERSION 22
364 double ratio,
int format,
int flags);
390 int property,
int value);
392 int property,
int *min,
int *max);
456#define default_video_driver_class_dispose (void (*) (video_driver_class_t *this_gen))free
unsigned int height
Definition: gfontrle.c:5
unsigned int width
Definition: gfontrle.c:4
#define OVL_PALETTE_SIZE
Definition: video_out.h:280
void set_argb_layer_ptr(argb_layer_t **dst, argb_layer_t *src)
Definition: osd.c:347
struct rle_elem_s rle_elem_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.
Definition: video_out.c:3110
struct argb_layer_s argb_layer_t
Definition: video_out.h:463
int x2
Definition: video_out.h:468
uint32_t * buffer
Definition: video_out.h:465
int y2
Definition: video_out.h:468
int y1
Definition: video_out.h:467
int ref_count
Definition: video_out.h:469
int x1
Definition: video_out.h:467
pthread_mutex_t mutex
Definition: video_out.h:464
Definition: plugin_catalog.h:44
Definition: video_out.h:458
uint16_t len
Definition: video_out.h:459
uint16_t color
Definition: video_out.h:460
Definition: video_out.h:426
const char * identifier
short human readable identifier for this plugin class
Definition: video_out.h:436
const char * text_domain
Optional non-standard catalog to use with dgettext() for description.
Definition: video_out.h:448
void(* dispose)(video_driver_class_t *self)
Definition: video_out.h:453
const char * description
human readable (verbose = 1 line) description for this plugin class
Definition: video_out.h:443
Definition: video_out.h:518
void(* free_handle)(video_overlay_manager_t *this_gen, int32_t handle)
Definition: video_out.h:525
void(* init)(video_overlay_manager_t *this_gen)
Definition: video_out.h:519
void(* flush_events)(video_overlay_manager_t *this_gen)
Definition: video_out.h:529
void(* multiple_overlay_blend)(video_overlay_manager_t *this_gen, int64_t vpts, vo_driver_t *output, vo_frame_t *vo_img, int enabled)
Definition: video_out.h:533
void(* dispose)(video_overlay_manager_t *this_gen)
Definition: video_out.h:521
int32_t(* add_event)(video_overlay_manager_t *this_gen, void *event)
Definition: video_out.h:527
int(* redraw_needed)(video_overlay_manager_t *this_gen, int64_t vpts)
Definition: video_out.h:531
int32_t(* get_handle)(video_overlay_manager_t *this_gen, int object_type)
Definition: video_out.h:523
Definition: video_out.h:348
void(* update_frame_format)(vo_driver_t *self, vo_frame_t *img, uint32_t width, uint32_t height, double ratio, int format, int flags)
Definition: video_out.h:362
struct plugin_node_s *node XINE_PRIVATE_FIELD
Pointer to the loaded plugin node.
Definition: video_out.h:423
void(* overlay_end)(vo_driver_t *self, vo_frame_t *vo_img)
Definition: video_out.h:383
void(* get_property_min_max)(vo_driver_t *self, int property, int *min, int *max)
Definition: video_out.h:391
void(* overlay_begin)(vo_driver_t *self, vo_frame_t *vo_img, int changed)
Definition: video_out.h:381
int(* gui_data_exchange)(vo_driver_t *self, int data_type, void *data)
Definition: video_out.h:400
uint32_t(* get_capabilities)(vo_driver_t *self)
Definition: video_out.h:350
int(* set_property)(vo_driver_t *self, int property, int value)
Definition: video_out.h:389
int(* redraw_needed)(vo_driver_t *self)
Definition: video_out.h:407
void(* overlay_blend)(vo_driver_t *self, vo_frame_t *vo_img, vo_overlay_t *overlay)
Definition: video_out.h:382
int(* get_property)(vo_driver_t *self, int property)
Definition: video_out.h:388
void(* dispose)(vo_driver_t *self)
Definition: video_out.h:415
void(* display_frame)(vo_driver_t *self, vo_frame_t *vo_img)
Definition: video_out.h:367
Definition: video_out.h:50
Definition: video_out.h:59
int drawn
Definition: video_out.h:142
int64_t vpts
Definition: video_out.h:110
void * accel_data
Definition: video_out.h:147
int crop_right
Definition: video_out.h:129
void(* proc_slice)(vo_frame_t *vo_img, uint8_t **src)
Definition: video_out.h:83
int crop_top
Definition: video_out.h:129
void(* lock)(vo_frame_t *vo_img)
Definition: video_out.h:97
int is_first
Definition: video_out.h:167
int progressive_frame
Definition: video_out.h:125
int pitches[3]
Definition: video_out.h:117
int lock_counter
Definition: video_out.h:131
double ratio
Definition: video_out.h:139
int proc_called
Definition: video_out.h:144
int bad_frame
Definition: video_out.h:111
void(* proc_provide_standard_frame_data)(vo_frame_t *vo_img, xine_current_frame_data_t *data)
Definition: video_out.h:70
int duration
Definition: video_out.h:112
int overlay_offset_x
Definition: video_out.h:155
int id
Definition: video_out.h:166
void(* proc_duplicate_frame_data)(vo_frame_t *vo_img, vo_frame_t *src)
Definition: video_out.h:75
xine_video_port_t * port
Definition: video_out.h:150
int overlay_offset_y
Definition: video_out.h:155
int width
Definition: video_out.h:138
struct vo_frame_s * next
Definition: video_out.h:164
void(* proc_frame)(vo_frame_t *vo_img)
Definition: video_out.h:79
extra_info_t * extra_info
Definition: video_out.h:135
pthread_mutex_t mutex
Definition: video_out.h:132
int height
Definition: video_out.h:138
void(* field)(vo_frame_t *vo_img, int which_field)
Definition: video_out.h:86
int crop_left
Definition: video_out.h:129
vo_driver_t * driver
Definition: video_out.h:151
uint8_t * base[3]
Definition: video_out.h:116
int repeat_first_field
Definition: video_out.h:121
void(* free)(vo_frame_t *vo_img)
Definition: video_out.h:100
int picture_coding_type
Definition: video_out.h:126
void(* dispose)(vo_frame_t *vo_img)
Definition: video_out.h:103
int(* draw)(vo_frame_t *vo_img, xine_stream_t *stream)
Definition: video_out.h:91
int crop_bottom
Definition: video_out.h:129
int format
Definition: video_out.h:140
xine_stream_t * stream
Definition: video_out.h:152
int top_field_first
Definition: video_out.h:120
int flags
Definition: video_out.h:143
int64_t pts
Definition: video_out.h:109
struct vo_frame_s * future_frame
Definition: video_out.h:158
Definition: video_out.h:472
int rgb_clut
Definition: video_out.h:494
uint8_t hili_trans[256]
Definition: video_out.h:502
int hili_bottom
Definition: video_out.h:498
int x
Definition: video_out.h:477
uint32_t hili_color[256]
Definition: video_out.h:501
int video_window_x
Definition: video_out.h:483
int video_window_y
Definition: video_out.h:484
int num_rle
Definition: video_out.h:476
int width
Definition: video_out.h:479
int video_window_height
Definition: video_out.h:486
int hili_left
Definition: video_out.h:499
int extent_width
Definition: video_out.h:489
int height
Definition: video_out.h:480
int extent_height
Definition: video_out.h:490
int data_size
Definition: video_out.h:475
int hili_right
Definition: video_out.h:500
uint32_t color[256]
Definition: video_out.h:492
rle_elem_t * rle
Definition: video_out.h:474
int hili_rgb_clut
Definition: video_out.h:503
int unscaled
Definition: video_out.h:505
uint8_t trans[256]
Definition: video_out.h:493
int video_window_width
Definition: video_out.h:485
int hili_top
Definition: video_out.h:497
int y
Definition: video_out.h:478
argb_layer_t * argb_layer
Definition: video_out.h:507
Definition: xine_internal.h:80
Definition: xine_internal.h:123
Definition: video_out.h:176
void(* exit)(xine_video_port_t *self)
Definition: video_out.h:233
void(* trigger_drawing)(xine_video_port_t *self)
Definition: video_out.h:214
void(* enable_ovl)(xine_video_port_t *self, int ovl_enable)
Definition: video_out.h:205
int(* set_property)(xine_video_port_t *self, int property, int value)
Definition: video_out.h:221
void(* flush)(xine_video_port_t *self)
Definition: video_out.h:211
uint32_t(* get_capabilities)(xine_video_port_t *self)
Definition: video_out.h:178
void(* open)(xine_video_port_t *self, xine_stream_t *stream)
Definition: video_out.h:183
int(* status)(xine_video_port_t *self, xine_stream_t *stream, int *width, int *height, int64_t *img_duration)
Definition: video_out.h:224
vo_driver_t * driver
Definition: video_out.h:236
int(* get_property)(xine_video_port_t *self, int property)
Definition: video_out.h:220
void(* close)(xine_video_port_t *self, xine_stream_t *stream)
Definition: video_out.h:230
enabled
Definition: xine_plugin.c:78