Go to the documentation of this file.
29 #ifndef XINE_PRIVATE_H__
30 #define XINE_PRIVATE_H__
32 #ifndef XINE_LIBRARY_COMPILE
33 # error xine_private.h is for libxine private use only!
35 #if defined(HAVE_CONFIG_H) && !defined(__XINE_LIB_CONFIG_H__)
36 # error config.h not included
41 #if SUPPORT_ATTRIBUTE_VISIBILITY_INTERNAL
42 # define INTERNAL __attribute__((visibility("internal")))
43 #elif SUPPORT_ATTRIBUTE_VISIBILITY_DEFAULT
44 # define INTERNAL __attribute__((__visibility__("default")))
49 #if defined (__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6 ))
50 # define XINE_DISABLE_DEPRECATION_WARNINGS _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
51 # define XINE_ENABLE_DEPRECATION_WARNINGS _Pragma("GCC diagnostic warning \"-Wdeprecated-declarations\"")
53 # define XINE_DISABLE_DEPRECATION_WARNINGS
54 # define XINE_ENABLE_DEPRECATION_WARNINGS
58 # define EXTERN_C_START extern "C" {
59 # define EXTERN_C_STOP }
61 # define EXTERN_C_START
62 # define EXTERN_C_STOP
68 #if (HAVE_ATOMIC_VARS > 0)
69 # if (HAVE_ATOMIC_VARS == 1)
70 # include <stdatomic.h>
71 # define XINE_ATINT_T atomic_int
72 # define XINE_ATINIT(xatfa_refs,xatfa_n) atomic_init (&(xatfa_refs), (xatfa_n))
73 # define XINE_ATFA(xatfa_refs,xatfa_n) atomic_fetch_add_explicit (&(xatfa_refs), (xatfa_n), memory_order_acq_rel)
74 # elif (HAVE_ATOMIC_VARS == 2)
75 # define XINE_ATINT_T int
76 # define XINE_ATINIT(xatfa_refs,xatfa_n) __atomic_store_n (&(xatfa_refs), (xatfa_n), __ATOMIC_RELAXED)
77 # define XINE_ATFA(xatfa_refs,xatfa_n) __atomic_fetch_add (&(xatfa_refs), (xatfa_n), __ATOMIC_ACQ_REL)
79 # define XINE_ATINT_T int
80 # define XINE_ATINIT(xatfa_refs,xatfa_n) xatfa_refs = xatfa_n
81 # define XINE_ATFA(xatfa_refs,xatfa_n) __sync_fetch_and_add (&(xatfa_refs), (xatfa_n))
86 void (*destructor) (
void *object);
91 void (*destructor) (
void *
object),
void *
object) {
94 XINE_ATINIT (refs->
refs, 1);
98 return XINE_ATFA (refs->
refs, n) + n;
102 int v = XINE_ATFA (refs->
refs, -n) - n;
113 void (*destructor) (
void *object);
118 void (*destructor) (
void *
object),
void *
object) {
127 pthread_mutex_lock (&refs->
mutex);
130 pthread_mutex_unlock (&refs->
mutex);
136 pthread_mutex_lock (&refs->
mutex);
139 pthread_mutex_unlock (&refs->
mutex);
141 pthread_mutex_destroy (&refs->
mutex);
211 #if defined(HAVE_PTHREAD_RWLOCK)
212 # define xine_rwlock_t pthread_rwlock_t
213 # define xine_rwlock_init_default(l) pthread_rwlock_init (l, NULL)
214 # define xine_rwlock_rdlock(l) pthread_rwlock_rdlock (l)
215 # define xine_rwlock_tryrdlock(l) pthread_rwlock_tryrdlock (l)
216 # define xine_rwlock_timedrdlock(l,t) pthread_rwlock_timedrdlock (l, t)
217 # define xine_rwlock_wrlock(l) pthread_rwlock_wrlock (l)
218 # define xine_rwlock_trywrlock(l) pthread_rwlock_trywrlock (l)
219 # define xine_rwlock_timedwrlock(l,t) pthread_rwlock_timedwrlock (l, t)
220 # define xine_rwlock_unlock(l) pthread_rwlock_unlock (l)
221 # define xine_rwlock_destroy(l) pthread_rwlock_destroy (l)
223 # define xine_rwlock_t pthread_mutex_t
224 # define xine_rwlock_init_default(l) pthread_mutex_init (l, NULL)
225 # define xine_rwlock_rdlock(l) pthread_mutex_lock (l)
226 # define xine_rwlock_tryrdlock(l) pthread_mutex_trylock (l)
227 # define xine_rwlock_timedrdlock(l,t) pthread_mutex_timedlock (l, t)
228 # define xine_rwlock_wrlock(l) pthread_mutex_lock (l)
229 # define xine_rwlock_trywrlock(l) pthread_mutex_trylock (l)
230 # define xine_rwlock_timedwrlock(l,t) pthread_mutex_timedlock (l, t)
231 # define xine_rwlock_unlock(l) pthread_mutex_unlock (l)
232 # define xine_rwlock_destroy(l) pthread_mutex_destroy (l)
235 #ifdef HAVE_POSIX_TIMERS
236 # define xine_gettime(t) clock_gettime (CLOCK_REALTIME, t)
241 r = gettimeofday (&tv,
NULL);
243 ts->tv_sec = tv.tv_sec;
244 ts->tv_nsec = tv.tv_usec * 1000;
251 const uint8_t *p = (
const uint8_t *)*s;
257 *s = (
const char *)p;
262 }
while ((z > 9) && (z != (
'-' ^
'0')));
263 if (z == (
'-' ^
'0')) {
278 *s = (
const char *)(p - 1);
283 const uint8_t *p = (
const uint8_t *)*s;
289 *s = (
const char *)p;
300 *s = (
const char *)(p - 1);
305 const uint8_t *p = (
const uint8_t *)*s;
308 #if defined(__WORDSIZE) && (__WORDSIZE == 32)
314 *s = (
const char *)p;
320 #if defined(__WORDSIZE) && (__WORDSIZE == 32)
326 *s = (
const char *)(p - 1);
329 }
while (!(u & 0xf0000000));
335 v = (v << 3) + (v << 1) + z;
338 *s = (
const char *)(p - 1);
342 #define XINE_MAX_INT32_STR 13
344 uint8_t b[24], *t = b + 11, *q = (uint8_t *)*s;
354 *--t = u % 10u +
'0';
358 *s = (
char *)(q + (b + 11 - t));
362 uint8_t b[24], *t = b + 11, *q = (uint8_t *)*s;
365 *--t = v % 10u +
'0';
369 *s = (
char *)(q + (b + 11 - t));
372 #define XINE_MAX_INT64_STR 21
374 uint8_t b[44], *t = b + 21, *q = (uint8_t *)*s;
377 *--t = v % 10u +
'0';
381 *s = (
char *)(q + (b + 21 - t));
385 #define xine_uint2str(s,v) do { \
386 if (sizeof (v) == 64) \
387 xine_uint64_2str (s, v); \
389 xine_uint32_2str (s, v); \
393 # define PTR_IN_RANGE(_ptr,_start,_size) \
394 ((uintptr_t)((uint8_t *)(_ptr) - (uint8_t *)(_start)) < (uintptr_t)(_size))
396 # define PTR_IN_RANGE(_ptr,_start,_size) \
397 ((uint8_t *)(_ptr) >= (uint8_t *)(_start) && ((uint8_t *)(_ptr) < (uint8_t *)(_start) + (_size)))
416 #define SPEED_FLAG_IGNORE_CHANGE 1
417 #define SPEED_FLAG_CHANGING 2
418 #define SPEED_FLAG_WANT_LIVE 4
419 #define SPEED_FLAG_WANT_NEW 8
427 # define XINE_LIVE_PAUSE_ON 0x7ffffffd
428 # define XINE_LIVE_PAUSE_OFF 0x7ffffffc
484 #define XINE_NUM_SIDE_STREAMS 4
575 #define XINE_NBC_EVENT_AUDIO_DRY 1
int64_t a_remaining
Definition: xine.h:2023
#define OVERLAY_EVENT_MENU_BUTTON
Definition: video_overlay.h:41
Definition: xine_internal.h:80
int xine_config_lookup_entry(xine_t *this, const char *key, xine_cfg_entry_t *entry)
Definition: xine_interface.c:272
#define _x_post_dec_usage(port)
Definition: post.h:406
#define LUT_SIZE
Definition: video_overlay.c:552
int crop_left
Definition: xine.h:476
#define XINE_STREAM_INFO_VIDEO_WIDTH
Definition: xine.h:1007
const char * name
Definition: xine.h:738
#define XINE_IMGFMT_YV12
Definition: xine.h:494
pthread_mutex_t streams_lock
Definition: video_out.c:118
int pitches[3]
Definition: video_out.h:117
static void post_video_flush(xine_video_port_t *port_gen)
Definition: post.c:426
static void lock_run(xine_stream_private_t *stream, int wait)
Definition: xine.c:724
static void vo_queue_read_lock(img_buf_fifo_t *queue)
Definition: video_out.c:455
static int post_audio_open(xine_audio_port_t *port_gen, xine_stream_t *stream, uint32_t bits, uint32_t rate, int mode)
Definition: post.c:870
uint32_t color[256]
Definition: video_out.h:492
xine_audio_port_t ** audio_input
Definition: xine.h:673
#define XINE_PARAM_VO_ASPECT_RATIO
Definition: xine.h:376
#define XINE_PARAM_VO_CROP_RIGHT
Definition: xine.h:391
static int post_audio_port_unref(xine_audio_port_t *port_gen)
Definition: post.c:266
int(* get_optional_data)(demux_plugin_t *this_gen, void *data, int data_type)
Definition: demux.h:167
extra_info_t * extra_info_base
Definition: video_out.c:195
int _x_post_audio_port_unref(xine_audio_port_t *port_gen)
Definition: post.c:287
uint8_t * data
Definition: osd.c:212
uint32_t first_frame_flag
Definition: xine_private.h:511
int(* intercept_frame)(post_video_port_t *self, vo_frame_t *frame)
Definition: post.h:185
xine_t * xine
Definition: xine_internal.h:126
static void osd_free_object(osd_object_t *osd_to_close)
Definition: osd.c:1828
Definition: video_out.h:463
int finished_count_video
Definition: xine_private.h:519
uint32_t finished_naturally
Definition: xine_private.h:445
metronom_t metronom
Definition: metronom.c:376
Definition: video_out.c:92
pthread_mutex_t events_mutex
Definition: video_overlay.c:56
#define CLIP0MAX(val, max)
Definition: osd.c:99
static void post_frame_proc_frame(vo_frame_t *vo_img)
Definition: post.c:598
void xine_register_log_cb(xine_t *this_gen, xine_log_cb_t cb, void *user_data)
Definition: xine.c:3385
#define XINE_STREAM_INFO_AUDIO_HANDLED
Definition: xine.h:1021
const char * identifier
short human readable identifier for this plugin class
Definition: demux.h:56
char name[40]
Definition: osd.c:209
static void close_internal(xine_stream_private_t *stream)
Definition: xine.c:796
pthread_mutex_t mutex
Definition: video_out.h:132
int video_window_y
Definition: osd.h:47
int64_t bounce_diff
Definition: metronom.c:414
#define FONT_OVERLAP
Definition: osd.c:1408
struct osd_ft2context_s osd_ft2context_t
Definition: osd.h:35
#define XINE_STREAM_INFO_DVD_TITLE_COUNT
Definition: xine.h:1036
int header_count_audio
Definition: xine_private.h:516
#define KF_SIZE
Definition: xine.c:3585
Definition: video_decoder.h:73
#define XINE_PARAM_EQ_125HZ
Definition: xine.h:342
void * xine_mallocz_aligned(size_t size)
Definition: utils.c:856
xine_stream_t * stream
Definition: post.h:216
xine_config_cb_t callback
Definition: configfile.h:79
static void ticket_revoke_cb_register(xine_ticket_t *tgen, xine_ticket_revoke_cb_t *cb, void *user_data)
Definition: xine.c:173
enabled
Definition: xine_plugin.c:78
uint32_t emergency_brake
Definition: xine_private.h:439
#define XINE_STREAM_INFO_VIDEO_RATIO
Definition: xine.h:1009
xine_stream_t * xine_stream_new(xine_t *this, xine_audio_port_t *ao, xine_video_port_t *vo)
Definition: xine.c:993
#define XINE_STREAM_INFO_DVD_CHAPTER_COUNT
Definition: xine.h:1038
Definition: xine_internal.h:123
struct video_overlay_events_s video_overlay_events_t
xine_t x
Definition: xine_private.h:401
void(* unregister_speed_change_callback)(metronom_clock_t *self, xine_speed_change_cb_t *callback, void *user_data)
Definition: metronom.h:289
#define AUDIO_SAMPLE_LD
Definition: metronom.c:51
#define XINE_ERROR_DEMUX_FAILED
Definition: xine.h:959
#define VO_GET_FRAME_MAY_FAIL
Definition: video_out.h:299
#define DISC_STREAMSEEK
Definition: metronom.h:68
int height
Definition: xine.h:475
Definition: metronom.h:199
uint32_t start_buffers_sent
Definition: xine_private.h:521
int x1
Definition: osd.h:54
void(* unregister_scr)(metronom_clock_t *self, scr_plugin_t *scr)
Definition: metronom.h:262
int audio_samples
Definition: metronom.c:399
void xine_osd_set_encoding(xine_osd_t *this, const char *encoding)
Definition: xine_interface.c:854
void _x_unlock_frontend(xine_stream_t *s)
Definition: xine.c:3529
#define XINE_VO_ASPECT_DVB
Definition: xine.h:405
#define XINE_FINE_SPEED_NORMAL
Definition: xine.h:372
#define BUF_VIDEO_UNKNOWN
Definition: buffer.h:89
int64_t spu_offset
Definition: metronom.c:404
#define XINE_STREAM_INFO_VIDEO_BITRATE
Definition: xine.h:1012
#define XINE_PARAM_VO_SATURATION
Definition: xine.h:378
#define XINE_MALLOC
Definition: attributes.h:139
static int64_t metronom_got_audio_samples(metronom_t *this_gen, int64_t pts, int nsamples)
Definition: metronom.c:1020
input_plugin_t * _x_rip_plugin_get_instance(xine_stream_t *stream, const char *filename)
Definition: input_rip.c:550
int index_size
Definition: xine_private.h:560
static void XINE_FORMAT_PRINTF(2, 0)
Definition: scratch.c:40
int a_in_disc
Definition: xine.h:2025
input_class_t * eject_class
Definition: xine_private.h:447
uint32_t id_flag
Definition: xine_private.h:491
uint32_t video_opened
Definition: video_out.c:165
void(* close)(osd_renderer_t *this_gen)
Definition: osd.h:199
int y_stride
Definition: video_out.c:86
#define BUF_CONTROL_RESET_TRACK_MAP
Definition: buffer.h:80
static void display_stats(xine_nbc_t *this)
Definition: net_buf_ctrl.c:381
int64_t pts
Definition: video_out.h:109
struct video_overlay_showing_s video_overlay_showing_t
static vo_frame_t * post_video_get_last_frame(xine_video_port_t *port_gen)
Definition: post.c:345
void(* acquire)(xine_ticket_t *self, int irrevocable)
Definition: tickets.h:66
int _x_set_file_close_on_exec(int fd)
Make file descriptors and sockets uninheritable.
Definition: utils.c:796
void xine_stop(xine_stream_t *s)
Definition: xine.c:756
cfg_entry_t *(* lookup_entry)(config_values_t *self, const char *key)
lookup config entries
Definition: configfile.h:182
static void vo_scale_vertical_pos_changed(void *data, xine_cfg_entry_t *entry)
Definition: vo_scale.c:367
Definition: metronom.h:309
int trigger_drawing
Definition: video_out.c:209
static void video_overlay_reset(video_overlay_t *this)
Definition: video_overlay.c:197
xine_post_t xine_post
Definition: post.h:83
int ready_num
Definition: video_out.c:141
static void _x_query_buffers_fix_data(xine_query_buffers_data_t *data)
Definition: xine.c:3442
osd_renderer_t r
Definition: osd.c:102
void xine_get_version(int *major, int *minor, int *sub)
Definition: xine_interface.c:59
int(* status)(xine_audio_port_t *, xine_stream_t *stream, uint32_t *bits, uint32_t *rate, int *mode)
Definition: audio_out.h:226
static void post_audio_flush(xine_audio_port_t *port_gen)
Definition: post.c:943
#define FULL_FIFO_MARK
Definition: net_buf_ctrl.c:47
char * meta_info[XINE_STREAM_INFO_MAX]
Definition: xine_private.h:501
void(* trigger_drawing)(xine_video_port_t *self)
Definition: video_out.h:214
int y1
Definition: video_out.h:467
xine_list_t * xine_list_new(void)
Definition: list.c:72
#define MIN(a, b)
Definition: demux_ts.c:321
post_audio_port_t * _x_post_intercept_audio_port(post_plugin_t *post, xine_audio_port_t *original, post_in_t **input, post_out_t **output)
Definition: post.c:993
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:3041
#define XINE_ERROR_MALFORMED_MRL
Definition: xine.h:960
#define SPU_TRACK_MAP_END
#define XINE_PARAM_GAPLESS_SWITCH
Definition: xine.h:354
int base_av_offset
Definition: metronom.c:397
int num_buffers_max
Definition: video_out.c:96
int64_t prebuffer
Definition: metronom.c:402
int64_t bounce_vpts_offs
Definition: metronom.c:415
#define XINE_PARAM_EQ_2000HZ
Definition: xine.h:346
int enabled
Definition: net_buf_ctrl.c:77
int format
Definition: xine.h:482
static int ticket_acquire_nonblocking(xine_ticket_t *tgen, int irrevocable)
Definition: xine.c:264
static uint32_t xine_str2uint32(const char **s)
Definition: xine_private.h:282
int xine_stream_master_slave(xine_stream_t *m, xine_stream_t *slave, int affection)
Definition: xine.c:3397
#define VO_CAP_VIDEO_WINDOW_OVERLAY
Definition: video_out.h:331
#define DEMUX_CAP_AUDIOLANG
Definition: demux.h:200
static void nbc_set_speed_normal(xine_nbc_t *this)
Definition: net_buf_ctrl.c:129
int num_video_waiters
Definition: metronom.c:422
uint32_t fifo_length
Definition: net_buf_ctrl.c:59
struct timeval cur_time
Definition: metronom.c:80
extra_info_t ei[3]
Definition: xine_private.h:571
void _x_post_frame_u_turn(vo_frame_t *frame, xine_stream_t *stream)
Definition: post.c:719
static int unixscr_set_speed(scr_plugin_t *scr, int speed)
Definition: metronom.c:109
#define XINE_PARAM_VO_SHARPNESS
Definition: xine.h:388
uint32_t gapless_switch
Definition: xine_private.h:443
struct osd_fontchar_s osd_fontchar_t
video_decoder_t * video_decoder_plugin
Definition: xine_private.h:452
void _x_audio_out_resample_6channel(int16_t *last_sample, int16_t *input_samples, uint32_t in_samples, int16_t *output_samples, uint32_t out_samples)
Definition: resample.c:242
#define OVL_MAX_OPACITY
Definition: video_out.h:282
int left
Definition: xine.h:2001
#define XINE_STATUS_QUIT
Definition: xine.h:951
#define XINE_PARAM_BROADCASTER_PORT
Definition: xine.h:338
int buffer_pool_capacity
Definition: buffer.h:645
int _x_continue_stream_processing(xine_stream_t *s)
Definition: xine.c:3560
int index_used
Definition: xine_private.h:560
metronom_clock_t * _x_metronom_clock_init(xine_t *xine)
Definition: metronom.c:1621
video_overlay_manager_t * overlay_source
Definition: video_out.c:193
char key[16]
Definition: xine_speex_decoder.c:94
int xine_get_next_video_frame(xine_video_port_t *this_gen, xine_video_frame_t *frame)
Definition: video_out.c:2498
#define VO_CAP_CROP
Definition: video_out.h:312
int video_mode
Definition: metronom.c:435
int progress
Definition: net_buf_ctrl.c:82
void(* free_handle)(video_overlay_manager_t *this_gen, int32_t handle)
Definition: video_out.h:525
int64_t current_duration
Definition: video_out.c:198
static vo_frame_t * vo_queue_get_all(img_buf_fifo_t *queue)
Definition: video_out.c:434
int64_t last_pts
Definition: net_buf_ctrl.c:62
#define XINE_PARAM_VO_CONTRAST
Definition: xine.h:379
xine_t * xine
Definition: osd.c:104
void(* close)(xine_audio_port_t *self, xine_stream_t *stream)
Definition: audio_out.h:205
#define BUF_FLAG_HEADER
Definition: buffer.h:375
int force_video_jump
Definition: metronom.c:427
int crop_bottom
Definition: video_out.h:129
xine_nbc_fifo_info_t video
Definition: net_buf_ctrl.c:85
cfg_entry_t * first
Definition: configfile.h:224
#define MAX_USEC_TO_SLEEP
Definition: video_out.c:57
xine_post_out_t * xine_get_video_source(xine_stream_t *s)
Definition: xine_interface.c:987
uint8_t * img
Definition: xine.h:567
void xine_set_flags(xine_t *this_gen, int flags)
Definition: xine.c:2619
Definition: refcounter.h:27
void(* exit)(metronom_t *self)
Definition: metronom.h:164
osd_font_t * next
Definition: osd.c:213
pthread_mutex_t mutex
Definition: net_buf_ctrl.c:89
uint16_t num_fontchars
Definition: osd.c:216
xine_post_out_t video_source
Definition: xine_private.h:551
int type
Definition: xine.h:756
const char * xine_config_register_filename(xine_t *self, const char *key, const char *def_value, int req_type, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: xine_interface.c:99
int64_t vpts
Definition: xine.h:568
char * str_value
Definition: xine.h:1646
static void metronom_unregister_speed_change_callback(metronom_clock_t *this, xine_speed_change_cb_t *callback, void *user_data)
Definition: metronom.c:253
static void metronom_clock_set_option(metronom_clock_t *this, int option, int64_t value)
Definition: metronom.c:1212
static void post_overlay_multiple_overlay_blend(video_overlay_manager_t *ovl_gen, int64_t vpts, vo_driver_t *output, vo_frame_t *vo_img, int enabled)
Definition: post.c:807
pthread_t video_thread
Definition: video_out.c:176
void _x_free_audio_driver(xine_t *xine, ao_driver_t **driver)
Definition: load_plugins.c:2532
pthread_cond_t grab_cond
Definition: video_out.c:162
int crop_right
Definition: xine.h:477
void _x_select_spu_channel(xine_stream_t *s, int channel)
Definition: xine.c:2772
void * data
Definition: xine.h:742
int64_t v_bitrate
Definition: xine.h:2020
uint8_t * img
Definition: video_out.c:88
int64_t(* get_option)(metronom_clock_t *self, int option)
Definition: metronom.h:205
#define XINE_STREAM_INFO_SEEKABLE
Definition: xine.h:1006
void xine_profiler_start_count(int id)
Definition: monitor.c:88
uint8_t cb
Definition: alphablend.h:45
static void metronom_start_sync_thread(metronom_clock_private_t *this_priv)
Definition: metronom.c:1368
static int vo_frame_draw(vo_frame_t *img, xine_stream_t *s)
Definition: video_out.c:1356
int frame_drop_limit_max
Definition: video_out.c:200
pthread_t atomic_revoker_thread
Definition: xine.c:160
static xine_grab_video_frame_t * vo_new_grab_video_frame(xine_video_port_t *this_gen)
Definition: video_out.c:1114
Definition: yuv2rgb.h:123
uint32_t redraw_needed
Definition: video_out.c:174
xine_ticket_t t
Definition: xine.c:145
static int metronom_handle_discontinuity(metronom_impl_t *this, int type, int try, int64_t disc_off)
Definition: metronom.c:508
#define XINE_PARAM_SPU_CHANNEL
Definition: xine.h:326
#define XINE_PARAM_IGNORE_VIDEO
Definition: xine.h:335
static void vo_queue_read_unlock(img_buf_fifo_t *queue)
Definition: video_out.c:461
void * object
Definition: refcounter.h:29
vo_driver_t * video_driver
Definition: xine_internal.h:157
int vo_width
Definition: video_out.c:84
static xine_ticket_t * ticket_init(void)
Definition: xine.c:580
static void osd_get_palette(osd_object_t *osd, uint32_t *color, uint8_t *trans)
Definition: osd.c:846
#define XINE_PARAM_EQ_8000HZ
Definition: xine.h:348
int audio_decoder_streamtype
Definition: xine_private.h:459
static int _osd_hide(osd_object_t *osd, int64_t vpts)
Definition: osd.c:528
static void osd_set_argb_buffer(osd_object_t *osd, uint32_t *argb_buffer, int dirty_x, int dirty_y, int dirty_width, int dirty_height)
Definition: osd.c:1940
int overlay_offset_y
Definition: video_out.h:155
#define CLUT_Y_CR_CB_INIT(_y, _cr, _cb)
Definition: video_overlay.h:31
Definition: audio_decoder.h:73
int64_t vpts_offset
Definition: metronom.c:392
static argb_layer_t * argb_layer_create()
Definition: osd.c:329
#define XINE_PARAM_DELAY_FINISHED_EVENT
Definition: xine.h:355
void xine_list_push_back(xine_list_t *list, void *value)
Definition: list.c:162
int spu_decoder_streamtype
Definition: xine_internal.h:161
int64_t pts_per_smpls
Definition: metronom.c:385
#define XINE_STREAM_INFO_HAS_VIDEO
Definition: xine.h:1023
#define xine_rwlock_tryrdlock(l)
Definition: xine_private.h:226
int fifo_size
Definition: buffer.h:585
void xine_list_delete(xine_list_t *list)
Definition: list.c:108
Definition: xine_internal.h:175
void *(* xine_fast_memcpy)(void *to, const void *from, size_t len)
Definition: memcpy.c:60
int irrevocable_tickets
Definition: xine.c:154
int flush_extra
Definition: video_out.c:127
xine_t * xine
Definition: metronom.c:381
struct xine_stream_private_st xine_stream_private_t
void * object
Definition: xine_private.h:114
const char * description
human readable (verbose = 1 line) description for this plugin class
Definition: demux.h:63
int discarded_frames
Definition: xine.h:2175
#define XINE_PARAM_AUDIO_COMPR_LEVEL
Definition: xine.h:330
#define VIDEO_DRIFT_TOLERANCE
Definition: metronom.c:58
int num_audio_waiters
Definition: metronom.c:423
pthread_mutex_t driver_lock
Definition: video_out.c:108
uint32_t overlay_enabled
Definition: video_out.c:167
static void ticket_issue(xine_ticket_t *tgen, int flags)
Definition: xine.c:388
int textpalette
Definition: osd.h:260
int64_t spu_vpts
Definition: metronom.c:388
int plain_renewers
Definition: xine.c:155
static void mutex_cleanup(void *mutex)
Definition: xine.c:89
static int post_video_status(xine_video_port_t *port_gen, xine_stream_t *stream, int *width, int *height, int64_t *img_duration)
Definition: post.c:442
void _x_handle_stream_end(xine_stream_t *s, int non_user)
Definition: xine.c:93
static void video_out_update_disable_flush_from_video_out(void *this_gen, xine_cfg_entry_t *entry)
Definition: video_out.c:2279
void(* xine_log_cb_t)(void *user_data, int section)
Definition: xine.h:931
xine_video_port_t new_port
Definition: post.h:176
#define MAX_SCR_PROVIDERS
Definition: metronom.c:56
void _x_vo_scale_cleanup(vo_scale_t *self, config_values_t *config)
Definition: vo_scale.c:394
scr_plugin_t scr
Definition: metronom.c:77
#define xine_rwlock_init_default(l)
Definition: xine_private.h:224
static void video_decoder_update_disable_flush_at_discontinuity(void *s, xine_cfg_entry_t *entry)
Definition: xine.c:985
int type
Definition: xine.h:731
static void ticket_release(xine_ticket_t *tgen, int irrevocable)
Definition: xine.c:317
fifo_buffer_t * _x_fifo_buffer_new(int num_buffers, uint32_t buf_size)
Allocate and initialise new (empty) FIFO buffers.
Definition: buffer.c:873
static vo_frame_t * vo_queue_pop_int(img_buf_fifo_t *queue)
Definition: video_out.c:552
void(* dispose)(post_plugin_t *this_gen)
Definition: post.h:95
void _x_trigger_relaxed_frame_drop_mode(xine_stream_t *s)
Definition: xine.c:3567
int crop_bottom
Definition: xine.h:557
metronom_clock_t * clock
Definition: xine_internal.h:97
uint8_t * bmp
Definition: osd.c:202
static int post_video_set_property(xine_video_port_t *port_gen, int property, int value)
Definition: post.c:463
#define XINE_MASTER_SLAVE_STOP
Definition: xine.h:226
#define DEMUX_OK
Definition: demux.h:33
static void video_overlay_init(video_overlay_manager_t *this_gen)
Definition: video_overlay.c:229
static vo_frame_t * vo_free_get_dupl(vos_t *this, vo_frame_t *s)
Definition: video_out.c:704
xine_list_iterator_t xine_list_find(xine_list_t *list, void *value)
Definition: list.c:275
#define MAX_SHOWING
Definition: video_overlay.h:36
pthread_mutex_t first_frame_lock
Definition: xine_private.h:504
xine_video_port_t * video_port
Definition: video_out.c:80
double speed_factor_2
Definition: metronom.c:85
#define ADD_READY_FRAMES
Definition: video_out.c:1685
int _x_config_change_opt(config_values_t *config, const char *opt)
interpret stream_setup part of mrls for config value changes
Definition: configfile.c:2087
int wakeups_total
Definition: video_out.c:143
const char * description
Definition: xine.h:1667
void(* flush)(video_decoder_t *this_gen)
Definition: video_decoder.h:96
int picture_coding_type
Definition: video_out.h:126
int interlaced
Definition: xine.h:481
#define XINE_STREAM_INFO_AUDIO_FOURCC
Definition: xine.h:1020
static void vo_flush(xine_video_port_t *this_gen)
Definition: video_out.c:3017
uint32_t speed_change_flags
Definition: xine_private.h:420
static int _get_audio_lang(xine_stream_private_t *stream, int channel, char *lang)
Definition: xine.c:3261
int xine_keyframes_find(xine_stream_t *s, xine_keyframes_entry_t *pos, int offs)
Query stream keyframe seek index.
Definition: xine.c:3588
int dvbs_video_fill
Definition: net_buf_ctrl.c:99
#define XINE_STATUS_IDLE
Definition: xine.h:948
vos_grab_video_frame_t * pending_grab_request
Definition: video_out.c:160
int drawn
Definition: video_out.h:142
int xine_config_register_num(xine_t *self, const char *key, int def_value, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: xine_interface.c:147
int xine_post_wire_audio_port(xine_post_out_t *source, xine_audio_port_t *ao)
Definition: xine_interface.c:974
metronom_clock_t * clock
Definition: video_out.c:110
int has_video
Definition: net_buf_ctrl.c:80
char * _x_mrl_remove_auth(const char *mrl_in)
Definition: xine.c:1435
int index_lastadd
Definition: xine_private.h:560
static void osd_free_ft2(osd_object_t *osd __attr_unused)
Definition: osd.c:238
int dvbs_width
Definition: net_buf_ctrl.c:99
demux_class_t * demux_class
Definition: demux.h:173
int _x_demux_stop_thread(xine_stream_t *s)
Definition: demux.c:577
xine_audio_port_t new_port
Definition: post.h:302
int v_in_disc
Definition: xine.h:2021
#define XINE_SPEED_SLOW_4
Definition: xine.h:365
Definition: net_buf_ctrl.c:52
uint32_t hili_color[256]
Definition: video_out.h:501
#define BUFTYPE_BASE(type)
static void post_audio_close(xine_audio_port_t *port_gen, xine_stream_t *stream)
Definition: post.c:909
#define MAX_SPEED_CHANGE_CALLBACKS
Definition: metronom.c:57
static int post_video_port_unref(xine_video_port_t *port_gen)
Definition: post.c:215
void _x_set_speed(xine_stream_t *stream, int speed)
Definition: xine.c:2897
#define BUF_CONTROL_SPU_CHANNEL
Definition: buffer.h:75
int speed_change_new_live
Definition: xine_private.h:421
void _x_extra_info_merge(extra_info_t *dst, extra_info_t *src)
Definition: xine.c:122
#define METRONOM_VPTS_OFFSET
Definition: metronom.h:176
static void post_overlay_init(video_overlay_manager_t *ovl_gen)
Definition: post.c:745
xine_stream_t s
Definition: xine_private.h:432
void xine_osd_show_unscaled(xine_osd_t *this, int64_t vpts)
Definition: xine_interface.c:866
metronom_t * master
Definition: metronom.c:383
#define BUFTYPE_SUB(type)
static void * video_decoder_loop(void *stream_gen)
Definition: video_decoder.c:113
static void vo_frame_inc2_lock(vo_frame_t *img)
Definition: video_out.c:745
void * log_cb_user_data
Definition: xine_private.h:407
#define XINE_EVENT_PROGRESS
Definition: xine.h:1821
void xine_osd_set_video_window(xine_osd_t *this, int window_x, int window_y, int window_width, int window_height)
Definition: xine_interface.c:909
int(* get_property)(xine_video_port_t *self, int property)
Definition: video_out.h:220
#define SPEED_FLAG_WANT_LIVE
Definition: xine_private.h:418
void(* send_headers)(demux_plugin_t *this_gen)
Definition: demux.h:103
osd_renderer_t * osd_renderer
Definition: xine_internal.h:147
void(* proc_provide_standard_frame_data)(vo_frame_t *vo_img, xine_current_frame_data_t *data)
Definition: video_out.h:70
static void vo_frame_dec_lock(vo_frame_t *img)
Definition: video_out.c:774
int dispose_pending
Definition: post.h:128
metronom_clock_t mct
Definition: metronom.c:237
int(* register_enum)(config_values_t *self, const char *key, int def_value, char **values, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: configfile.h:135
#define xine_rwlock_timedrdlock(l, t)
Definition: xine_private.h:227
#define BUF_CONTROL_HEADERS_DONE
Definition: buffer.h:78
#define XINE_STREAM_INFO_IGNORE_AUDIO
Definition: xine.h:1026
#define SCRATCH_LINE_LEN_MAX
Definition: scratch.h:33
void _x_demux_control_end(xine_stream_t *s, uint32_t flags)
Definition: demux.c:295
#define NUMBER_OF_TEXT_PALETTES
Definition: osd.h:297
#define XINE_PARAM_VO_DEINTERLACE
Definition: xine.h:375
uint32_t xine_get_stream_info(xine_stream_t *s, int info)
Definition: xine_interface.c:742
int fifo_fill
Definition: net_buf_ctrl.c:56
static int osd_hide(osd_object_t *osd, int64_t vpts)
Definition: osd.c:552
int buffer_pool_num_free
Definition: buffer.h:644
void * xine_list_next_value(xine_list_t *list, xine_list_iterator_t *ite)
Definition: list.c:197
void xine_set_param(xine_stream_t *s, int param, int value)
Definition: xine_interface.c:361
int64_t audio_vpts
Definition: metronom.c:389
Definition: audio_out.h:144
int64_t v_remaining
Definition: xine.h:2019
#define AO_PROP_EQ_30HZ
Definition: audio_out.h:325
static void update_text_palette(void *this_gen, xine_cfg_entry_t *entry)
Definition: osd.c:1905
#define XINE_OSD_CAP_CUSTOM_EXTENT
Definition: xine.h:2290
xine_video_port_t * original_port
Definition: post.h:179
int xine_open(xine_stream_t *s, const char *mrl)
Definition: xine.c:1935
static void metronom_base_av_offs_hook(void *this_gen, xine_cfg_entry_t *entry)
Definition: metronom.c:1512
static const uint8_t tab_parse[256]
Definition: xine.c:1467
int xine_get_current_frame(xine_stream_t *stream, int *width, int *height, int *ratio_code, int *format, uint8_t *img)
Definition: xine.c:3182
#define XINE_PARAM_VO_HUE
Definition: xine.h:377
int(* register_scr)(metronom_clock_t *self, scr_plugin_t *scr)
Definition: metronom.h:261
static void metronom_clock_exit(metronom_clock_t *this)
Definition: metronom.c:1494
int(* rewire)(xine_post_out_t *self, void *data)
Definition: xine.h:753
#define BUF_FLAG_END_STREAM
Definition: buffer.h:386
#define XINE_VO_ASPECT_SQUARE
Definition: xine.h:402
pthread_cond_t first_frame_reached
Definition: xine_private.h:505
#define xine_rwlock_t
Definition: xine_private.h:223
yuy22rgb_fun_t yuy22rgb_fun
Definition: yuv2rgb.h:109
static void post_frame_field(vo_frame_t *vo_img, int which_field)
Definition: post.c:608
int x1
Definition: video_out.h:467
char * str_value
Definition: configfile.h:60
static void report_progress(xine_stream_t *stream, int p)
Definition: net_buf_ctrl.c:104
const char *const * xine_get_log_names(xine_t *this)
Definition: xine.c:3315
void(* register_get_cb)(fifo_buffer_t *fifo, void(*cb)(fifo_buffer_t *fifo, buf_element_t *buf, void *), void *cb_data)
Definition: buffer.h:633
int64_t video_vpts
Definition: metronom.c:387
#define XINE_PARAM_SPU_OFFSET
Definition: xine.h:334
#define XINE_CONFIG_TYPE_STRING
Definition: xine.h:1617
void xine_config_reset(xine_t *this)
Definition: xine_interface.c:316
static void internal_video_overlay_free_handle(video_overlay_t *this, int32_t handle)
Definition: video_overlay.c:169
int y2
Definition: osd.h:55
xine_post_out_t * xine_post_output(xine_post_t *this_gen, const char *name)
Definition: xine_interface.c:936
#define XINE_OSD_CAP_UNSCALED
Definition: xine.h:2289
#define XINE_STREAM_INFO_DVD_TITLE_NUMBER
Definition: xine.h:1035
char * str_default
Definition: configfile.h:61
#define XINE_PARAM_AUDIO_AMP_MUTE
Definition: xine.h:351
int interface_version
Definition: metronom.h:332
int xine_profiler_allocate_slot(const char *label)
Definition: monitor.c:51
int dvbs_audio_fill
Definition: net_buf_ctrl.c:99
#define XINE_PARAM_VO_CROP_TOP
Definition: xine.h:392
static void scratch_dispose(scratch_buffer_t *this)
Definition: scratch.c:92
#define METRONOM_VPTS
Definition: metronom.h:178
int dvbs_center
Definition: net_buf_ctrl.c:99
uint16_t width
Definition: osd.c:204
#define _x_post_inc_usage(port)
Definition: post.h:399
#define VO_PROP_DISCARD_FRAMES
Definition: video_out.h:260
static void set_speed_internal(xine_stream_private_t *stream, int speed)
Definition: xine.c:630
#define AUDIO_SAMPLE_NUM
Definition: metronom.c:52
int(* set_property)(xine_audio_port_t *, int property, int value)
Definition: audio_out.h:180
static void post_frame_proc_slice(vo_frame_t *vo_img, uint8_t **src)
Definition: post.c:588
static void report_stats(xine_nbc_t *this, int type)
Definition: net_buf_ctrl.c:402
static void vo_dispose_grab_video_frame(xine_grab_video_frame_t *frame_gen)
Definition: video_out.c:862
void xine_osd_set_position(xine_osd_t *this, int x, int y)
Definition: xine_interface.c:858
int right
Definition: xine.h:2002
int64_t first_pts
Definition: net_buf_ctrl.c:63
int nbc_refs
Definition: xine_private.h:563
#define XINE_FRAME_DATA_ALLOCATE_IMG
Definition: xine.h:487
void xine_osd_draw_line(xine_osd_t *this, int x1, int y1, int x2, int y2, int color)
Definition: xine_interface.c:827
xine_list_t * output
Definition: post.h:90
xine_stream_t * master
Definition: xine_internal.h:150
int stream_info[XINE_STREAM_INFO_MAX]
Definition: xine_private.h:496
uint32_t xine_osd_get_capabilities(xine_osd_t *this)
Definition: xine_interface.c:819
void yv12_to_yv12(const unsigned char *y_src, int y_src_pitch, unsigned char *y_dst, int y_dst_pitch, const unsigned char *u_src, int u_src_pitch, unsigned char *u_dst, int u_dst_pitch, const unsigned char *v_src, int v_src_pitch, unsigned char *v_dst, int v_dst_pitch, int width, int height)
Definition: copy.c:48
buf_element_t *(* buffer_pool_alloc)(fifo_buffer_t *self)
Definition: buffer.h:617
#define XINE_PARAM_METRONOM_PREBUFFER
Definition: xine.h:339
void(* proc_slice)(vo_frame_t *vo_img, uint8_t **src)
Definition: video_out.h:83
static int64_t metronom_get_current_time(metronom_clock_t *this)
Definition: metronom.c:296
uint32_t join_av
Definition: xine_private.h:411
static void post_video_close(xine_video_port_t *port_gen, xine_stream_t *stream)
Definition: post.c:373
vo_frame_t * ready_first
Definition: video_out.c:139
static void post_video_trigger_drawing(xine_video_port_t *port_gen)
Definition: post.c:434
static vo_frame_t * next_frame(vos_t *this, int64_t *vpts)
Definition: video_out.c:1909
int pending_revocations
Definition: xine.c:158
#define XINE_PARAM_VIDEO_CHANNEL
Definition: xine.h:327
#define XINE_EVENT_DROPPED_FRAMES
Definition: xine.h:1825
#define MAX_OBJECTS
Definition: video_overlay.h:34
void _x_dispose_plugins(xine_t *this)
Dispose (shutdown) all currently loaded plugins.
Definition: load_plugins.c:3349
int locked_for_read
Definition: video_out.c:98
static void xine_refs_init(xine_refs_t *refs, void(*destructor)(void *object), void *object)
Definition: xine_private.h:117
static int xine_refs_add(xine_refs_t *refs, int n)
Definition: xine_private.h:125
void(* put)(fifo_buffer_t *fifo, buf_element_t *buf)
Definition: buffer.h:596
int id
Definition: video_out.h:166
int video_discontinuity_count
Definition: metronom.c:419
cfg_entry_t * last
Definition: configfile.h:224
const char * help
Definition: xine.h:1668
static void vo_reref(vos_t *this, vo_frame_t *img)
Definition: video_out.c:317
void _x_reset_relaxed_frame_drop_mode(xine_stream_t *s)
Definition: xine.c:3575
static int vo_grab_grab_video_frame(xine_grab_video_frame_t *frame_gen)
Definition: video_out.c:881
static void osd_set_palette(osd_object_t *osd, const uint32_t *color, const uint8_t *trans)
Definition: osd.c:812
#define XINE_EVENT_AUDIO_AMP_LEVEL
Definition: xine.h:1827
int crop_right
Definition: video_out.h:129
Definition: video_overlay.c:46
int32_t(* get_handle)(video_overlay_manager_t *this_gen, int object_type)
Definition: video_out.h:523
#define STREAMS_DEFAULT_SIZE
Definition: video_out.c:112
pthread_mutex_t mutex
Definition: xine_private.h:111
#define DISC_STREAMSTART
Definition: metronom.h:65
int audio_discontinuity_count
Definition: metronom.c:420
uint32_t demux_action_pending
Definition: xine_private.h:535
static void nbc_alloc_cb(fifo_buffer_t *fifo, void *this_gen)
Definition: net_buf_ctrl.c:509
#define BUF_SPU_BASE
Definition: buffer.h:285
#define AO_PROP_MUTE_VOL
Definition: audio_out.h:320
Definition: vo_scale.h:39
static void vo_streams_unregister(vos_t *this, xine_stream_private_t *s)
Definition: video_out.c:291
int force_audio_jump
Definition: metronom.c:428
#define XINE_GRAB_VIDEO_FRAME_FLAGS_WAIT_NEXT
Definition: xine.h:575
int _x_message(xine_stream_t *stream, int type,...)
Definition: xine_interface.c:1000
void _x_vo_scale_translate_gui2video(vo_scale_t *this, int x, int y, int *vid_x, int *vid_y)
Definition: vo_scale.c:312
int _x_get_spu_channel(xine_stream_t *stream)
Definition: xine.c:3295
int mute
Definition: xine.h:2003
static int osd_show_unscaled(osd_object_t *osd, int64_t vpts)
Definition: osd.c:520
#define XINE_PARAM_EARLY_FINISHED_EVENT
Definition: xine.h:353
#define XINE_ERROR_NO_DEMUX_PLUGIN
Definition: xine.h:958
extra_info_t * video_decoder_extra_info
Definition: xine_private.h:453
int xine_get_current_frame_s(xine_stream_t *stream, int *width, int *height, int *ratio_code, int *format, uint8_t *img, int *img_size)
Definition: xine.c:3162
static vo_frame_t * duplicate_frame(vos_t *this, vo_frame_t *img)
Definition: video_out.c:1793
osd_font_t * fonts
Definition: osd.h:259
video_overlay_manager_t * original_manager
Definition: post.h:207
int disable_decoder_flush_from_video_out
Definition: video_out.c:188
#define XINE_CONFIG_STRING_IS_DIRECTORY_NAME
Definition: xine.h:1626
void(* destructor)(void *object)
Definition: xine_private.h:113
#define MAX_EVENTS
Definition: video_overlay.h:35
Definition: video_out.h:176
static vo_frame_t * vo_get_last_frame(xine_video_port_t *this_gen)
Definition: video_out.c:2967
int top_field_first
Definition: video_out.h:120
vo_frame_t * first
Definition: video_out.c:93
int hili_bottom
Definition: video_out.h:498
pthread_mutex_t * manager_lock
Definition: post.h:221
void * data
Definition: xine.h:728
Definition: video_out.c:103
static void vo_trigger_drawing(xine_video_port_t *this_gen)
Definition: video_out.c:3032
uint32_t(* get_capabilities)(xine_video_port_t *self)
Definition: video_out.h:178
void xine_engine_set_param(xine_t *this, int param, int value)
Definition: xine.c:2554
#define AO_PROP_BUFS_TOTAL
Definition: audio_out.h:339
uint16_t height
Definition: osd.c:205
#define XINE_ERROR_INPUT_FAILED
Definition: xine.h:961
static void argb_layer_destroy(argb_layer_t *argb_layer)
Definition: osd.c:337
static vo_frame_t * vo_get_unblock_frame(vos_t *this)
Definition: video_out.c:570
Definition: metronom.c:76
#define lprintf(...)
Definition: xineutils.h:620
xine_nbc_t * xine_nbc_init(xine_stream_t *stream)
Definition: net_buf_ctrl.c:768
int xine_engine_get_param(xine_t *this, int param)
Definition: xine.c:2570
#define KERNING_DEFAULT
Definition: osd.c:90
char * key
Definition: configfile.h:50
static int open_internal(xine_stream_private_t *stream, const char *mrl)
Definition: xine.c:1495
#define XINE_STREAM_INFO_VIDEO_HANDLED
Definition: xine.h:1014
int xine_port_send_gui_data(xine_video_port_t *vo, int type, void *data)
Definition: xine_interface.c:337
pthread_mutex_t * frame_lock
Definition: post.h:220
int v_percent
Definition: xine.h:2018
pthread_mutex_t speed_change_lock
Definition: xine_private.h:423
int hili_top
Definition: video_out.h:497
#define XINE_PARAM_VO_NOISE_REDUCTION
Definition: xine.h:389
pthread_cond_t done_stepping
Definition: video_out.c:211
void(* dispose)(yuv2rgb_factory_t *this)
Definition: yuv2rgb.h:136
int xine_get_param(xine_stream_t *s, int param)
Definition: xine_interface.c:567
#define FIFO_GET
Definition: net_buf_ctrl.c:50
#define XINE_PARAM_EQ_16000HZ
Definition: xine.h:349
#define XINE_CONFIG_TYPE_BOOL
Definition: xine.h:1620
cfg_entry_t * cur
Definition: configfile.h:224
static void osd_point(osd_object_t *osd, int x, int y, int color)
Definition: osd.c:616
int(* register_num)(config_values_t *self, const char *key, int def_value, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: configfile.h:145
uint32_t fifo_length_int
Definition: net_buf_ctrl.c:60
void _x_unlock_port_rewiring(xine_t *xine_gen)
Definition: xine.c:3517
void _x_free_spu_decoder(xine_stream_t *stream, spu_decoder_t *sd)
Definition: load_plugins.c:2967
pthread_mutex_t streams_lock
Definition: xine_internal.h:95
const char *const * xine_post_list_outputs(xine_post_t *this_gen)
Definition: xine_interface.c:919
void(* decode_data)(video_decoder_t *this_gen, buf_element_t *buf)
Definition: video_decoder.h:79
struct xine_stream_private_st * side_streams[4]
Definition: xine_private.h:489
int xine_get_current_frame_alloc(xine_stream_t *stream, int *width, int *height, int *ratio_code, int *format, uint8_t **img, int *img_size)
Definition: xine.c:3143
xine_grab_video_frame_t *(* new_grab_video_frame)(xine_video_port_t *self)
Definition: video_out.h:199
vo_frame_t *(* get_last_frame)(xine_video_port_t *self)
Definition: video_out.h:202
int num_frames_skipped
Definition: video_out.c:179
vo_driver_t * driver
Definition: video_out.c:107
int wakeups_early
Definition: video_out.c:144
xine_post_out_t audio_source
Definition: xine_private.h:552
pthread_mutex_t showing_mutex
Definition: video_overlay.c:60
int crop_left
Definition: xine.h:554
Definition: video_overlay.h:44
#define XINE_STREAM_INFO_MAX_SPU_CHANNEL
Definition: xine.h:1030
xine_grab_video_frame_t * xine_new_grab_video_frame(xine_stream_t *stream)
Definition: xine.c:3199
int y2
Definition: video_out.h:468
osd_renderer_t * _x_osd_renderer_init(xine_stream_t *stream)
Definition: osd.c:2007
int _x_refcounter_inc(refcounter_t *refcounter)
Definition: refcounter.c:49
int img_cpt
Definition: metronom.c:434
uint16_t loaded
Definition: osd.c:217
static void video_overlay_free_handle(video_overlay_manager_t *this_gen, int32_t handle)
Definition: video_overlay.c:188
osd_object_t * next
Definition: osd.h:38
void _x_audio_out_resample_stereotomono(int16_t *input_samples, int16_t *output_samples, uint32_t frames)
Definition: resample.c:351
#define XINE_STREAM_INFO_VIDEO_HEIGHT
Definition: xine.h:1008
Definition: video_out.h:472
#define AO_PROP_COMPRESSOR
Definition: audio_out.h:321
xine_audio_port_t *volatile audio_out
Definition: xine_internal.h:141
#define XINE_PARAM_SPEED
Definition: xine.h:323
pthread_mutex_t index_mutex
Definition: xine_private.h:559
scr_plugin_t * providers[10+1]
Definition: metronom.c:245
void _x_video_decoder_shutdown(xine_stream_t *s)
Definition: video_decoder.c:639
const char * xine_config_register_string(xine_t *self, const char *key, const char *def_value, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: xine_interface.c:79
uint8_t hili_trans[256]
Definition: video_out.h:502
#define METRONOM_ADJ_VPTS_OFFSET
Definition: metronom.h:173
#define XINE_LOG_NUM
Definition: xine_internal.h:67
int _x_video_decoder_init(xine_stream_t *s)
Definition: video_decoder.c:567
int count
Definition: refcounter.h:31
#define XINE_LOG_PLUGIN
Definition: xine_internal.h:65
xine_stream_t * stream
Definition: post.h:309
int _x_scan_plugins(xine_t *this_gen)
Load plugins into catalog.
Definition: load_plugins.c:1671
int rgb_clut
Definition: video_out.h:494
void _x_set_fine_speed(xine_stream_t *s, int speed)
Definition: xine.c:2832
pthread_mutex_t osd_mutex
Definition: osd.h:256
int warn_threshold_exceeded
Definition: video_out.c:186
static void vo_streams_close(vos_t *this)
Definition: video_out.c:253
void(* xine_config_cb_t)(void *user_data, xine_cfg_entry_t *entry)
Definition: xine.h:1630
uint32_t fifo_data_size
Definition: buffer.h:586
#define AO_PROP_MIXER_VOL
Definition: audio_out.h:318
#define AO_PROP_CLOCK_SPEED
Definition: audio_out.h:338
video_overlay_manager_t *(* get_overlay_manager)(xine_video_port_t *self)
Definition: video_out.h:208
int xine_get_spu_lang(xine_stream_t *s, int channel, char *lang)
Definition: xine.c:3251
xine_stream_t * stream
Definition: osd.h:84
static void vo_scale_square_pixels_changed(void *data, xine_cfg_entry_t *entry)
Definition: vo_scale.c:382
#define XINE_PARAM_AUDIO_CLOSE_DEVICE
Definition: xine.h:350
int proc_called
Definition: video_out.h:144
int extent_width
Definition: osd.h:51
int audio_channel_auto
Definition: xine_internal.h:160
static int _x_path_looks_like_mrl(const char *path)
Definition: xine.c:1487
#define XINE_NUM_SIDE_STREAMS
Definition: xine_private.h:484
#define XINE_STREAM_INFO_DISCARDED_FRAMES
Definition: xine.h:1033
vo_frame_t * new_frame
Definition: post.h:188
#define XINE_PROFILE(function)
Definition: xineutils.h:701
#define VO_PROP_BUFS_FREE
Definition: video_out.h:272
static int osd_get_text_size(osd_object_t *osd, const char *text, int *width, int *height)
Definition: osd.c:1681
#define DEFAULT_HIGH_WATER_MARK
Definition: net_buf_ctrl.c:45
void _x_free_video_driver(xine_t *xine, vo_driver_t **driver)
Definition: load_plugins.c:2549
int num_buffers
Definition: video_out.c:95
void xine_osd_get_text_size(xine_osd_t *this, const char *text, int *width, int *height)
Definition: xine_interface.c:846
#define XINE_PARAM_AUDIO_VOLUME
Definition: xine.h:328
static int osd_set_font(osd_object_t *osd, const char *fontname, int size)
Definition: osd.c:1258
#define XINE_STREAM_INFO_AUDIO_SAMPLERATE
Definition: xine.h:1018
void xine_usec_sleep(unsigned usec)
Definition: utils.c:546
void * callback_data
Definition: xine.h:1677
void(* proc_frame)(vo_frame_t *vo_img)
Definition: video_out.h:79
Definition: video_overlay.c:51
static void vo_frame_dec2_lock(vos_t *this, vo_frame_t *img)
Definition: video_out.c:808
Definition: video_out.h:50
#define BUF_CONTROL_NOP
Definition: buffer.h:73
input_plugin_t * _x_cache_plugin_get_instance(xine_stream_t *stream)
Definition: input_cache.c:406
void(* discontinuity)(video_decoder_t *this_gen)
Definition: video_decoder.h:91
void(* got_video_frame)(metronom_t *self, vo_frame_t *frame)
Definition: metronom.h:93
#define DEMUX_OPTIONAL_DATA_AUDIOLANG
Definition: demux.h:239
pthread_mutex_t port_rewiring_lock
Definition: xine.c:150
int buffering
Definition: net_buf_ctrl.c:76
#define XINE_PARAM_VO_ZOOM_Y
Definition: xine.h:383
static int post_audio_rewire(xine_post_out_t *output_gen, void *data)
Definition: post.c:966
#define XINE_PARAM_VO_TVMODE
Definition: xine.h:385
int range_min
Definition: xine.h:1657
uint32_t high_water_mark
Definition: net_buf_ctrl.c:87
#define OVERLAY_EVENT_HIDE
Definition: video_overlay.h:40
static void metronom_got_video_frame(metronom_t *this_gen, vo_frame_t *img)
Definition: metronom.c:787
#define DISC_ABSOLUTE
Definition: metronom.h:67
static void post_free_unused_video_alias(post_video_port_t *port, vf_alias_t *f)
Definition: post.c:87
int num_parameters
Definition: xine.h:1972
pthread_cond_t not_empty
Definition: video_out.c:100
#define XINE_PARAM_EQ_4000HZ
Definition: xine.h:347
int num_default
Definition: xine.h:1654
xine_audio_port_t * original_port
Definition: post.h:305
#define OVL_PALETTE_SIZE
Definition: video_out.h:280
#define _X_LE_16(x)
Definition: bswap.h:58
int skipped_threshold
Definition: xine.h:2174
void xine_osd_set_extent(xine_osd_t *this, int extent_width, int extent_height)
Definition: xine_interface.c:905
static void user_data(vdpau_mpeg4_decoder_t *this_gen, uint8_t *buffer, int len)
Definition: vdpau_mpeg4.c:695
int frame_drop_limit
Definition: video_out.c:201
xine_grab_video_frame_t grab_frame
Definition: video_out.c:76
#define XINE_VO_ASPECT_ANAMORPHIC
Definition: xine.h:404
static void vo_dispose_list(vo_frame_t *list)
Definition: video_out.c:446
int tickets_granted
Definition: xine.c:153
#define FONT_VERSION
Definition: osd.c:66
int _x_video_decoder_init(xine_stream_t *stream)
Definition: video_decoder.c:567
int _x_lock_port_rewiring(xine_t *xine_gen, int ms_timeout)
Definition: xine.c:3511
int64_t pts
Definition: buffer.h:345
int num_demuxers_running
Definition: xine_private.h:522
int y1
Definition: osd.h:54
static int video_overlay_event(video_overlay_t *this, int64_t vpts)
Definition: video_overlay.c:345
static vo_frame_t * vo_ready_get_all(vos_t *this)
Definition: video_out.c:1713
int rewirers
Definition: xine.c:157
#define abs(x)
Definition: metronom.c:67
uint32_t demux_max_seek_bufs
Definition: xine_private.h:539
video_overlay_showing_t showing[MAX_SHOWING]
Definition: video_overlay.c:61
static void _update_clipping(osd_object_t *osd, int x1, int y1, int x2, int y2)
Definition: osd.c:603
#define __attr_unused
Definition: attributes.h:106
uint8_t y
Definition: alphablend.h:47
static int vo_status(xine_video_port_t *this_gen, xine_stream_t *s, int *width, int *height, int64_t *img_duration)
Definition: video_out.c:2829
#define DEMUX_OPTIONAL_SUCCESS
Definition: demux.h:237
void _x_post_frame_copy_up(vo_frame_t *to, vo_frame_t *from)
Definition: post.c:695
int height
Definition: video_out.h:138
int(* get_status)(demux_plugin_t *this_gen)
Definition: demux.h:149
void(* init)(video_overlay_manager_t *this_gen)
Definition: video_out.h:519
demux_plugin_t * _x_find_demux_plugin_last_probe(xine_stream_t *stream, const char *last_demux_name, input_plugin_t *input)
Definition: load_plugins.c:2060
int discarded_threshold
Definition: xine.h:2176
pthread_mutex_t * port_lock
Definition: post.h:322
uint8_t * area
Definition: osd.h:42
#define METRONOM_SPU_OFFSET
Definition: metronom.h:175
void(* adjust_clock)(metronom_clock_t *self, int64_t desired_pts)
Definition: metronom.h:245
char *const * xine_get_log(xine_t *this, int buf)
Definition: xine.c:3374
static osd_object_t * osd_new_object(osd_renderer_t *this, int width, int height)
Definition: osd.c:250
void xine_probe_fast_memcpy(xine_t *xine)
Benchmark available memcpy methods.
Definition: memcpy.c:711
metronom_t * metronom
Definition: xine_internal.h:129
static void video_overlay_flush_events(video_overlay_manager_t *this_gen)
Definition: video_overlay.c:688
int crop_top
Definition: video_out.c:205
static int64_t metronom_get_option(metronom_t *this_gen, int option)
Definition: metronom.c:1229
#define XINE_STREAM_INFO_VIDEO_HAS_STILL
Definition: xine.h:1028
int hili_right
Definition: video_out.h:500
static void vo_display_reref_append(vos_t *this, vo_frame_t *img)
Definition: video_out.c:477
int ref_count
Definition: video_out.h:469
void(* reset)(video_decoder_t *this_gen)
Definition: video_decoder.h:85
int status
Definition: xine_private.h:434
static int osd_renderer_load_font(osd_renderer_t *this, const char *filename)
Definition: osd.c:870
static vo_frame_t * crop_frame(xine_video_port_t *this_gen, vo_frame_t *img)
Definition: video_out.c:1293
pthread_mutex_t trigger_drawing_mutex
Definition: video_out.c:207
#define XINE_STREAM_INFO_AUDIO_BITRATE
Definition: xine.h:1019
spu_decoder_t * spu_decoder_plugin
Definition: xine_internal.h:154
#define BUF_CONTROL_BASE
Definition: buffer.h:68
NULL
Definition: xine_plugin.c:78
extra_info_t * current_extra_info
Definition: xine_private.h:541
int num_value
Definition: configfile.h:64
static void xine_dispose_internal(xine_stream_private_t *stream)
Definition: xine.c:2312
int(* status)(xine_video_port_t *self, xine_stream_t *stream, int *width, int *height, int64_t *img_duration)
Definition: video_out.h:224
int xine_osd_set_font(xine_osd_t *this, const char *fontname, int size)
Definition: xine_interface.c:850
void xine_event_send(xine_stream_t *s, const xine_event_t *event)
Definition: events.c:194
static void vo_frame_inc_lock(vo_frame_t *img)
Definition: video_out.c:760
static void vo_manual_flush(vos_t *this)
Definition: video_out.c:846
#define DEMUX_CAP_CHAPTERS
Definition: demux.h:213
vos_grab_video_frame_t * next
Definition: video_out.c:78
int avail
Definition: xine_internal.h:179
xine_list_t * streams
Definition: xine_internal.h:94
#define DEMUX_CAP_VIDEO_TIME
Definition: demux.h:233
pthread_mutex_t lock
Definition: refcounter.h:28
void xine_vlog(xine_t *this_gen, int buf, const char *format, va_list args)
Definition: xine.c:3362
#define XINE_STATUS_STOP
Definition: xine.h:949
Definition: net_buf_ctrl.c:72
int64_t xine_get_current_vpts(xine_stream_t *s)
Definition: xine_interface.c:1088
refcounter_t * _x_new_refcounter(void *object, void(*destructor)(void *))
Definition: refcounter.c:36
int crop_left
Definition: video_out.h:129
#define INTERNAL
Definition: xine_private.h:46
#define XINE_VERBOSITY_LOG
Definition: xine.h:425
int enabled
Definition: xine.h:2027
int err
Definition: xine_private.h:549
#define _x_assert(exp)
Definition: xineutils.h:550
void(* unregister_put_cb)(fifo_buffer_t *fifo, void(*cb)(fifo_buffer_t *fifo, buf_element_t *buf, void *))
Definition: buffer.h:635
static void vo_exit(xine_video_port_t *this_gen)
Definition: video_out.c:2878
int32_t handle
Definition: osd.h:74
void _x_audio_out_resample_mono(int16_t *last_sample, int16_t *input_samples, uint32_t in_samples, int16_t *output_samples, uint32_t out_samples)
Definition: resample.c:32
int(* redraw_needed)(video_overlay_manager_t *this_gen, int64_t vpts)
Definition: video_out.h:531
#define XINE_PARAM_VO_BRIGHTNESS
Definition: xine.h:380
int delay_finish_event
Definition: xine_private.h:545
static vo_frame_t * post_video_get_frame(xine_video_port_t *port_gen, uint32_t width, uint32_t height, double ratio, int format, int flags)
Definition: post.c:322
void _x_audio_decoder_shutdown(xine_stream_t *stream)
Definition: audio_decoder.c:578
int xine_get_log_section_count(xine_t *this)
Definition: xine.c:3310
int64_t last_video_pts
Definition: metronom.c:432
static void osd_set_position(osd_object_t *osd, int x, int y)
Definition: osd.c:856
static void config_demux_strategy_cb(void *this_gen, xine_cfg_entry_t *entry)
Definition: xine.c:2587
static void xine_int32_2str(char **s, int32_t v)
Definition: xine_private.h:343
metronom_clock_t * clock
Definition: metronom.h:330
int(* intercept_ovl)(post_video_port_t *self)
Definition: post.h:201
void(* dispose)(video_overlay_manager_t *this_gen)
Definition: video_out.h:521
char * description
Definition: configfile.h:75
#define BOUNCE_MAX
Definition: metronom.c:506
#define XINE_ENGINE_PARAM_VERBOSITY
Definition: xine.h:311
void(* exit)(xine_video_port_t *self)
Definition: video_out.h:233
int discontinuity_handled_count
Definition: metronom.c:421
void _x_overlay_to_argb32(const vo_overlay_t *overlay, uint32_t *rgba_buf, int stride, const char *format)
Definition: video_overlay.c:553
uint16_t version
Definition: osd.c:214
uint16_t code
Definition: osd.c:203
static int osd_lookup_native(osd_object_t *osd, const char *fontname, int size)
Definition: osd.c:1081
static void _x_freep(void *ptr)
Definition: xineutils.h:263
int bad_frame
Definition: video_out.h:111
#define BUF_CONTROL_DISCONTINUITY
Definition: buffer.h:72
pthread_mutex_t demux_pair_mutex
Definition: xine_private.h:534
video_overlay_object_t objects[MAX_OBJECTS]
Definition: video_overlay.c:59
int img_size
Definition: xine.h:483
int64_t(* get_option)(metronom_t *self, int option)
Definition: metronom.h:154
#define XINE_CONFIG_TYPE_RANGE
Definition: xine.h:1616
static void post_video_exit(xine_video_port_t *port_gen)
Definition: post.c:398
int exp_level
Definition: configfile.h:54
#define XINE_CONFIG_TYPE_ENUM
Definition: xine.h:1618
#define XINE_PARAM_VO_SINGLE_STEP
Definition: xine.h:394
#define AUDIO_DRIFT_TOLERANCE
Definition: metronom.c:59
int bounce_left_audio
Definition: metronom.c:411
const char * xine_get_meta_info(xine_stream_t *stream, int info)
Definition: xine_interface.c:808
int crop_right
Definition: xine.h:555
vo_driver_t * driver
Definition: video_out.h:236
static int osd_render_text(osd_object_t *osd, int x1, int y1, const char *text, int color_base)
Definition: osd.c:1411
static int unixscr_get_priority(scr_plugin_t *scr)
Definition: metronom.c:90
xine_ui_data_t compatibility
Definition: xine.h:1961
spu_decoder_t * _x_get_spu_decoder(xine_stream_t *stream, uint8_t stream_type)
Definition: load_plugins.c:2910
static int post_video_rewire(xine_post_out_t *output_gen, void *data)
Definition: post.c:474
static void osd_filled_rect(osd_object_t *osd, int x1, int y1, int x2, int y2, int color)
Definition: osd.c:769
#define XINE_OSD_CAP_FREETYPE2
Definition: xine.h:2288
void(* unregister_alloc_cb)(fifo_buffer_t *fifo, void(*cb)(fifo_buffer_t *fifo, void *))
Definition: buffer.h:634
#define XINE_META_INFO_SYSTEMLAYER
Definition: xine.h:1070
config_values_t * _x_config_init(void)
allocate and init a new xine config object
Definition: configfile.c:2037
#define NUM_FRAME_BUFFERS
Definition: video_out.c:55
int xine_config_register_range(xine_t *self, const char *key, int def_value, int min, int max, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: xine_interface.c:115
#define BUF_CONTROL_FLUSH_DECODER
Definition: buffer.h:79
#define bindtextdomain(Domain, Directory)
Definition: xineintl.h:45
vo_frame_t ** ready_add
Definition: video_out.c:140
char str[256]
Definition: xine.h:1950
#define XINE_PARAM_EQ_60HZ
Definition: xine.h:341
int xine_play(xine_stream_t *s, int start_pos, int start_time)
Definition: xine.c:2258
const char *const * xine_post_list_inputs(xine_post_t *this_gen)
Definition: xine_interface.c:914
input_plugin_t * input_plugin
Definition: xine_internal.h:132
static void osd_set_video_window(osd_object_t *osd, int window_x, int window_y, int window_width, int window_height)
Definition: osd.c:321
int _x_keyframes_add(xine_stream_t *s, xine_keyframes_entry_t *pos)
Register a stream keyframe to seek index.
Definition: xine.c:3651
uint32_t next_event
Definition: video_overlay.c:43
#define FT_LOAD_FLAGS
Definition: osd.c:96
#define METRONOM_NO_LOCK
Definition: metronom.h:192
int bounce_jumped
Definition: metronom.c:413
int hili_rgb_clut
Definition: video_out.h:503
#define XINE_LIVE_PAUSE_ON
Definition: xine_private.h:427
int _x_demux_start_thread(xine_stream_t *s)
Definition: demux.c:543
#define _x_abort()
Definition: xine_mpeg2new_decoder.c:50
xine_osd_t * xine_osd_new(xine_stream_t *stream, int x, int y, int width, int height)
Definition: xine_interface.c:812
void xine_osd_get_palette(xine_osd_t *this, uint32_t *color, uint8_t *trans)
Definition: xine_interface.c:890
void xine_osd_set_palette(xine_osd_t *this, const uint32_t *const color, const uint8_t *const trans)
Definition: xine_interface.c:882
config_values_t * config
Definition: xine_internal.h:82
void xine_osd_hide(xine_osd_t *this, int64_t vpts)
Definition: xine_interface.c:870
int progressive_frame
Definition: video_out.h:125
pthread_mutex_t log_lock
Definition: xine_private.h:404
demux_plugin_t * demux_plugin
Definition: xine_private.h:448
#define XINE_PARAM_AV_OFFSET
Definition: xine.h:324
unsigned int width
Definition: gfontrle.c:4
int _x_query_network_timeout(xine_t *xine_gen)
Definition: xine.c:2625
#define AO_PROP_DISCARD_BUFFERS
Definition: audio_out.h:322
#define xine_rwlock_rdlock(l)
Definition: xine_private.h:225
#define AO_PROP_BUFS_IN_FIFO
Definition: audio_out.h:323
#define SPU_TRACK_MAP_MASK
void _x_stream_info_set(xine_stream_t *s, int info, int value)
Definition: info_helper.c:79
int _x_post_video_port_ref(xine_video_port_t *port_gen)
Definition: post.c:211
static int osd_set_encoding(osd_object_t *osd, const char *encoding)
Definition: osd.c:1372
int _x_set_socket_close_on_exec(int s)
Definition: utils.c:805
static int32_t video_overlay_get_handle(video_overlay_manager_t *this_gen, int object_type)
Definition: video_overlay.c:146
int repeat_first_field
Definition: video_out.h:121
static void nbc_get_cb(fifo_buffer_t *fifo, buf_element_t *buf, void *this_gen)
Definition: net_buf_ctrl.c:696
int64_t last_discontinuity_offs
Definition: metronom.c:417
int64_t audio_drift_step
Definition: metronom.c:400
uint8_t black
Definition: spu.h:31
uint32_t disable_decoder_flush_at_discontinuity
Definition: xine_private.h:566
pthread_mutex_t mutex
Definition: video_out.c:99
#define _(String)
Definition: vcdplayer.h:39
static void post_video_enable_ovl(xine_video_port_t *port_gen, int ovl_enable)
Definition: post.c:365
void xine_dispose(xine_stream_t *s)
Definition: xine.c:2350
int ready
Definition: xine_internal.h:178
Definition: video_out.c:75
int extent_height
Definition: osd.h:51
pthread_mutex_t demux_action_lock
Definition: xine_private.h:531
static void ticket_dispose(xine_ticket_t *tgen)
Definition: xine.c:568
#define XINE_STREAM_INFO_MAX_AUDIO_CHANNEL
Definition: xine.h:1029
void xine_profiler_stop_count(int id)
Definition: monitor.c:96
vo_frame_t frame
Definition: post.c:59
#define VO_CAP_UNSCALED_OVERLAY
Definition: video_out.h:311
vo_frame_t * vo_frame
Definition: video_out.c:81
int slave_affection
Definition: xine_private.h:547
Definition: configfile.h:83
void _x_close_broadcaster(broadcaster_t *this_gen)
Definition: broadcaster.c:381
void _x_audio_decoder_shutdown(xine_stream_t *s)
Definition: audio_decoder.c:578
int xine_get_current_frame_data(xine_stream_t *stream, xine_current_frame_data_t *data, int flags)
Definition: xine.c:3136
int duration
Definition: video_out.h:112
int64_t dvbs_audio_out
Definition: net_buf_ctrl.c:100
int range_max
Definition: configfile.h:69
Definition: video_overlay.h:54
static int32_t video_overlay_add_event(video_overlay_manager_t *this_gen, void *event_gen)
Definition: video_overlay.c:252
static void vo_grab_current_frame(vos_t *this, vo_frame_t *vo_frame, int64_t vpts)
Definition: video_out.c:1129
static void clut_to_argb(const uint32_t *color, const uint8_t *trans, int num_items, uint32_t *argb, const char *format)
Definition: video_overlay.c:519
int flushed
Definition: video_out.c:125
char ** enum_values
Definition: configfile.h:72
struct xine_ticket_private_t::@67 * holder_threads
#define BLACK_OPACITY
Definition: spu.c:31
#define XINE_PARAM_VERBOSITY
Definition: xine.h:333
xine_speed_change_cb_t * speed_change_callbacks[16+1]
Definition: metronom.c:247
int display_y
Definition: osd.h:44
static void vo_queue_open(img_buf_fifo_t *queue)
Definition: video_out.c:410
static void network_timeout_cb(void *this_gen, xine_cfg_entry_t *entry)
Definition: xine.c:2630
rle_elem_t * rle
Definition: video_out.h:474
xine_list_t * event_queues
Definition: xine_private.h:525
demux_plugin_t * _x_find_demux_plugin_by_name(xine_stream_t *stream, const char *name, input_plugin_t *input)
Definition: load_plugins.c:2012
pthread_mutex_t * port_lock
Definition: post.h:219
#define XINE_PARAM_EQ_500HZ
Definition: xine.h:344
static void remove_events_handle(video_overlay_t *this, int32_t handle, int lock)
Definition: video_overlay.c:106
input_plugin_t * _x_find_input_plugin(xine_stream_t *stream, const char *mrl)
Definition: load_plugins.c:1828
Definition: video_overlay.c:41
int _x_keyframes_set(xine_stream_t *s, xine_keyframes_entry_t *list, int size)
Register a list of stream keyframes.
Definition: xine.c:3737
static void post_frame_dispose(vo_frame_t *vo_img)
Definition: post.c:641
int(* get_stream_length)(demux_plugin_t *this_gen)
Definition: demux.h:156
int64_t img_duration
Definition: metronom.c:433
#define TEXT_PALETTE_SIZE
Definition: osd.h:274
uint32_t color[OVL_PALETTE_SIZE]
Definition: osd.h:57
static void vo_scale_horizontal_pos_changed(void *data, xine_cfg_entry_t *entry)
Definition: vo_scale.c:360
extra_info_t * audio_decoder_extra_info
Definition: xine_private.h:462
int header_count_video
Definition: xine_private.h:517
#define XINE_STREAM_INFO_VIDEO_STREAMS
Definition: xine.h:1011
const char * description
Definition: xine.h:2010
int64_t video_drift
Definition: metronom.c:394
#define XINE_PARAM_AUDIO_MUTE
Definition: xine.h:329
int num_rle
Definition: video_out.h:476
static int _x_get_current_frame_data(xine_stream_t *stream, xine_current_frame_data_t *data, int flags, int img_size_unknown)
Definition: xine.c:2992
#define METRONOM_LOCK
Definition: metronom.h:186
metronom_t * _x_metronom_init(int have_video, int have_audio, xine_t *xine)
Definition: metronom.c:1517
uint8_t trans[OVL_PALETTE_SIZE]
Definition: osd.h:58
static void post_overlay_free_handle(video_overlay_manager_t *ovl_gen, int32_t handle)
Definition: post.c:771
void(* flush_events)(video_overlay_manager_t *this_gen)
Definition: video_out.h:529
void(* set_option)(metronom_t *self, int option, int64_t value)
Definition: metronom.h:153
struct video_overlay_s video_overlay_t
xine_stream_private_t ** img_streams
Definition: video_out.c:227
static void osd_free_encoding(osd_object_t *osd)
Definition: osd.c:1355
fifo_buffer_t * video_fifo
Definition: xine_internal.h:138
img_buf_fifo_t free_img_buf_queue
Definition: video_out.c:120
static void vo_speed_change_cb(void *this_gen, int new_speed)
Definition: video_out.c:2858
void(* exit)(xine_audio_port_t *)
Definition: audio_out.h:208
#define UCS2_ENCODING
Definition: osd.c:82
osd_fontchar_t * fontchar
Definition: osd.c:211
int fifo_free
Definition: net_buf_ctrl.c:57
xine_log_cb_t log_cb
Definition: xine_private.h:406
static void metronom_handle_audio_discontinuity(metronom_t *this_gen, int type, int64_t disc_off)
Definition: metronom.c:952
Definition: metronom.c:223
Definition: xine_private.h:400
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
static int stream_rewire_audio(xine_post_out_t *output, void *data)
Definition: xine.c:921
static void post_overlay_dispose(video_overlay_manager_t *ovl_gen)
Definition: post.c:753
vo_frame_t * last_flushed
Definition: video_out.c:148
static uint32_t post_audio_get_capabilities(xine_audio_port_t *port_gen)
Definition: post.c:840
static void post_overlay_flush_events(video_overlay_manager_t *ovl_gen)
Definition: post.c:789
int spu_track_map_entries
Definition: xine_private.h:474
int verbosity
Definition: xine_internal.h:86
int _x_query_buffer_usage(xine_stream_t *stream, int *num_video_buffers, int *num_audio_buffers, int *num_video_frames, int *num_audio_frames)
Definition: xine.c:3408
static int64_t metronom_clock_get_option(metronom_clock_t *this, int option)
Definition: metronom.c:1293
yuv2rgb_fun_t yuv2rgb_fun
Definition: yuv2rgb.h:104
int frames_extref
Definition: video_out.c:231
int64_t cur_pts
Definition: metronom.c:81
static void check_redraw_needed(vos_t *this, int64_t vpts)
Definition: video_out.c:1892
static post_video_port_t * _x_post_video_frame_to_port(vo_frame_t *frame)
Definition: post.h:283
int xine_config_register_bool(xine_t *self, const char *key, int def_value, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: xine_interface.c:162
#define MAX(a, b)
Definition: demux_ts.c:323
int frames_total
Definition: video_out.c:230
#define XINE_CONFIG_TYPE_NUM
Definition: xine.h:1619
int pause_revoked
Definition: xine.c:152
int have_video
Definition: metronom.c:408
#define XINE_STREAM_INFO_IGNORE_SPU
Definition: xine.h:1027
#define DEMUX_CAP_SPULANG
Definition: demux.h:201
int(* register_range)(config_values_t *self, const char *key, int def_value, int min, int max, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: configfile.h:125
static void add_showing_handle(video_overlay_t *this, int32_t handle)
Definition: video_overlay.c:66
int num_flush_waiters
Definition: video_out.c:128
void xine_osd_set_text_palette(xine_osd_t *this, int palette_number, int color_base)
Definition: xine_interface.c:886
vo_frame_t * _x_post_restore_video_frame(vo_frame_t *frame, post_video_port_t *port)
Definition: post.c:656
void(* handle_video_discontinuity)(metronom_t *self, int type, int64_t disc_off)
Definition: metronom.h:148
#define XINE_SPEED_FAST_2
Definition: xine.h:368
static uint64_t xine_str2uint64(const char **s)
Definition: xine_private.h:304
static void vo_streams_register(vos_t *this, xine_stream_private_t *s)
Definition: video_out.c:266
void(* set_csc_levels)(yuv2rgb_factory_t *this, int brightness, int contrast, int saturation, int colormatrix)
Definition: yuv2rgb.h:130
int64_t dvbs_video_in
Definition: net_buf_ctrl.c:101
#define PREBUFFER_PTS_OFFSET
Definition: metronom.h:62
static void paused_loop(vos_t *this, int64_t vpts)
Definition: video_out.c:2172
int video_seek_count
Definition: xine_private.h:543
Declaration of internal, private functions for xine-lib.
#define STOP_PTS
Definition: metronom.c:276
xine_t * xine_new(void)
Definition: xine.c:2492
input_class_t * query_input_plugins[2]
Definition: xine_private.h:569
int spu_channel_pan_scan
Definition: xine_private.h:478
pthread_cond_t trigger_drawing_cond
Definition: video_out.c:208
int64_t(* get_current_time)(metronom_clock_t *self)
Definition: metronom.h:239
static void dvbspeed_put(xine_nbc_t *this, fifo_buffer_t *fifo, buf_element_t *b)
Definition: net_buf_ctrl.c:188
#define XINE_LOG_MSG
Definition: xine_internal.h:64
int(* control)(xine_audio_port_t *, int cmd,...)
Definition: audio_out.h:215
int xine_config_get_first_entry(xine_t *this, xine_cfg_entry_t *entry)
Definition: xine_interface.c:225
#define XINE_STREAM_INFO_AUDIO_BITS
Definition: xine.h:1017
#define AO_PROP_PTS_IN_FIFO
Definition: audio_out.h:342
#define XINE_PARAM_VO_WINDOW_WIDTH
Definition: xine.h:386
static void metronom_exit(metronom_t *this_gen)
Definition: metronom.c:1481
#define XINE_POST_DATA_AUDIO
Definition: xine.h:834
#define XINE_TICKET_MAX_CB
Definition: xine.c:168
int range_min
Definition: configfile.h:68
enum metronom_clock_private_t::@65 sync_thread_state
#define VO_PROP_BUFS_IN_FIFO
Definition: video_out.h:263
xine_private_t * xine
Definition: video_out.c:109
pthread_t holder
Definition: xine.c:164
void _x_meta_info_set_utf8(xine_stream_t *s, int info, const char *str)
Definition: info_helper.c:341
static void metronom_register_speed_change_callback(metronom_clock_t *this, xine_speed_change_cb_t *callback, void *user_data)
Definition: metronom.c:238
#define XINE_STREAM_INFO_SKIPPED_FRAMES
Definition: xine.h:1032
void _x_get_current_info(xine_stream_t *s, extra_info_t *extra_info, int size)
Definition: xine.c:2806
pthread_mutex_t mutex
Definition: video_out.h:464
pthread_cond_t speed_change_done
Definition: xine_private.h:424
xine_nbc_t * nbc
Definition: xine_private.h:564
#define VO_BOTH_FIELDS
Definition: video_out.h:293
static void ticket_renew(xine_ticket_t *tgen, int irrevocable)
Definition: xine.c:322
static int vo_set_property(xine_video_port_t *this_gen, int property, int value)
Definition: video_out.c:2693
pthread_mutex_t meta_lock
Definition: xine_private.h:499
int(* open)(xine_audio_port_t *, xine_stream_t *stream, uint32_t bits, uint32_t rate, int mode)
Definition: audio_out.h:187
pthread_mutex_t usage_lock
Definition: post.h:212
static void metronom_set_option(metronom_t *this_gen, int option, int64_t value)
Definition: metronom.c:1147
int(* get_property)(xine_audio_port_t *, int property)
Definition: audio_out.h:179
int speed_change_used
Definition: metronom.c:246
char * xine_get_system_encoding(void)
Definition: utils.c:646
int display_x
Definition: osd.h:44
int overlay_offset_x
Definition: video_out.h:155
int64_t dvbs_video_out
Definition: net_buf_ctrl.c:101
static void metronom_resume_clock(metronom_clock_t *this)
Definition: metronom.c:329
uint32_t rate
Definition: post.h:318
char messages[1]
Definition: xine.h:1981
#define dgettext(Domain, Message)
Definition: xineintl.h:42
pthread_mutex_t objects_mutex
Definition: video_overlay.c:58
#define START_PTS
Definition: metronom.c:275
int uv_stride
Definition: video_out.c:86
void(* dispose)(vo_frame_t *vo_img)
Definition: video_out.h:103
static void ticket_revoke(xine_ticket_t *tgen, int flags)
Definition: xine.c:442
void * revoke_cb_data[15+1]
Definition: xine.c:170
static void vo_ready_refill(vos_t *this)
Definition: video_out.c:1691
static vo_frame_t * post_restore_video_frame(vo_frame_t *frame, post_video_port_t *port, int usage)
Definition: post.c:149
int speed_change_new_speed
Definition: xine_private.h:422
pthread_mutex_t lock
Definition: xine.c:147
int xine_post_wire(xine_post_out_t *source, xine_post_in_t *target)
Definition: xine_interface.c:948
void(* proc_duplicate_frame_data)(vo_frame_t *vo_img, vo_frame_t *src)
Definition: video_out.h:75
Definition: xine_internal.h:183
int spu_channel_letterbox
Definition: xine_internal.h:164
#define VIDEO_PREDICTION_MODE
Definition: metronom.c:62
#define XINE_PARAM_EQ_250HZ
Definition: xine.h:343
#define GET_DIM(dest, src, max)
audio_buffer_t *(* get_buffer)(xine_audio_port_t *)
Definition: audio_out.h:193
Definition: xine_private.h:110
broadcaster_t * _x_init_broadcaster(xine_stream_t *stream, int port)
Definition: broadcaster.c:313
#define XINE_PARAM_FINE_SPEED
Definition: xine.h:352
pthread_cond_t issued
Definition: xine.c:148
void _x_post_intercept_overlay_manager(video_overlay_manager_t *original, post_video_port_t *port)
Definition: post.c:817
static void post_video_open(xine_video_port_t *port_gen, xine_stream_t *stream)
Definition: post.c:310
void(* register_alloc_cb)(fifo_buffer_t *fifo, void(*cb)(fifo_buffer_t *fifo, void *), void *cb_data)
Definition: buffer.h:631
void xine_ticket_revoke_cb_t(void *user_data, int flags)
Definition: tickets.h:50
#define XINE_PARAM_AUDIO_AMP_LEVEL
Definition: xine.h:331
void _x_audio_out_resample_stereo(int16_t *last_sample, int16_t *input_samples, uint32_t in_samples, int16_t *output_samples, uint32_t out_samples)
Definition: resample.c:70
static int post_audio_set_property(xine_audio_port_t *port_gen, int property, int value)
Definition: post.c:860
unsigned holder_thread_count
Definition: xine.c:166
int frames_peak_used
Definition: video_out.c:232
cfg_entry_t * next
Definition: configfile.h:47
int type
Definition: xine.h:2028
int parameters
Definition: xine.h:1973
#define BUF_MAJOR_MASK
Definition: buffer.h:61
static void ticket_acquire(xine_ticket_t *tgen, int irrevocable)
Definition: xine.c:269
#define XINE_VERBOSITY_DEBUG
Definition: xine.h:426
static void dvbspeed_init(xine_nbc_t *this)
Definition: net_buf_ctrl.c:137
xine_video_port_t *volatile video_out
Definition: xine_internal.h:135
int width
Definition: video_out.h:479
int is_first
Definition: video_out.h:167
static const clut_t textpalettes_color[NUMBER_OF_TEXT_PALETTES][TEXT_PALETTE_SIZE]
Definition: osd.c:135
static int metronom_set_speed(metronom_clock_t *this, int speed)
Definition: metronom.c:351
char ** enum_values
Definition: xine.h:1661
pthread_mutex_t grab_lock
Definition: video_out.c:161
int video_decoder_streamtype
Definition: xine_private.h:454
int lock_counter
Definition: video_out.h:131
uint16_t size
Definition: osd.c:215
uint32_t slave_is_subtitle
Definition: xine_private.h:438
int timeout
Definition: xine.h:570
#define VIDEO_PTS_MODE
Definition: metronom.c:63
#define XINE_GRAB_VIDEO_FRAME_DEFAULT_TIMEOUT
Definition: xine.h:577
static vo_frame_t * vo_free_queue_get(vos_t *this, uint32_t width, uint32_t height, double ratio, int format, int flags)
Definition: video_out.c:608
#define DEMUX_FINISHED
Definition: demux.h:34
yuv2rgb_t *(* create_converter)(yuv2rgb_factory_t *this)
Definition: yuv2rgb.h:124
int has_audio
Definition: net_buf_ctrl.c:79
void(* register_speed_change_callback)(metronom_clock_t *self, xine_speed_change_cb_t *callback, void *user_data)
Definition: metronom.h:287
#define DISC_GAPLESS
Definition: metronom.h:69
#define xine_rwlock_unlock(l)
Definition: xine_private.h:231
int _x_refcounter_dec(refcounter_t *refcounter)
Definition: refcounter.c:61
uint32_t video_loop_running
Definition: video_out.c:164
static void metronom_stop_sync_thread(metronom_clock_private_t *this_priv)
Definition: metronom.c:1395
static void post_audio_put_buffer(xine_audio_port_t *port_gen, audio_buffer_t *buf, xine_stream_t *stream)
Definition: post.c:900
char code
Definition: xmllexer.c:606
uint32_t demux_thread_running
Definition: xine_private.h:537
void _x_audio_out_resample_monotostereo(int16_t *input_samples, int16_t *output_samples, uint32_t frames)
Definition: resample.c:339
int flags
Definition: xine.h:571
yuv2rgb_t * yuv2rgb
Definition: video_out.c:83
void _x_vo_scale_compute_output_size(vo_scale_t *this)
Definition: vo_scale.c:112
int(* route_preprocessing_procs)(post_video_port_t *self, vo_frame_t *frame)
Definition: post.h:195
#define XINE_VO_ASPECT_4_3
Definition: xine.h:403
void xine_nbc_event(xine_stream_private_t *stream, uint32_t type)
Definition: net_buf_ctrl.c:352
int _x_vo_scale_redraw_needed(vo_scale_t *this)
Definition: vo_scale.c:265
const char * _x_meta_info_get_public(xine_stream_t *s, int info)
Definition: info_helper.c:427
uint32_t demux_thread_created
Definition: xine_private.h:536
void _x_free_video_decoder(xine_stream_t *stream, video_decoder_t *vd)
Definition: load_plugins.c:2716
uint32_t audio_thread_created
Definition: xine_private.h:437
static int vo_get_property(xine_video_port_t *this_gen, int property)
Definition: video_out.c:2611
int step
Definition: video_out.c:212
fifo_buffer_t * _x_dummy_fifo_buffer_new(int num_buffers, uint32_t buf_size)
Allocate and initialise new dummy FIFO buffers.
Definition: buffer.c:965
static post_video_port_t * _x_post_ovl_manager_to_port(video_overlay_manager_t *manager)
Definition: post.h:287
void yuy2_to_yuy2(const unsigned char *src, int src_pitch, unsigned char *dst, int dst_pitch, int width, int height)
Definition: copy.c:59
Definition: metronom.c:374
#define VO_PROP_MAX_NUM_FRAMES
Definition: video_out.h:252
#define BUF_CONTROL_END
Definition: buffer.h:70
void _x_spu_get_opacity(xine_t *this, xine_spu_opacity_t *opacity)
Definition: spu.c:48
void xine_close(xine_stream_t *s)
Definition: xine.c:888
static video_overlay_manager_t * post_video_get_overlay_manager(xine_video_port_t *port_gen)
Definition: post.c:406
void xine_osd_set_argb_buffer(xine_osd_t *this, uint32_t *argb_buffer, int dirty_x, int dirty_y, int dirty_width, int dirty_height)
Definition: xine_interface.c:900
void(* reset)(spu_decoder_t *this_gen)
Definition: spu_decoder.h:85
static int osd_renderer_unload_font(osd_renderer_t *this, const char *fontname)
Definition: osd.c:1026
static void vo_list_flush(vos_t *this, vo_frame_t *f)
Definition: video_out.c:831
#define OVERLAY_EVENT_FREE_HANDLE
Definition: video_overlay.h:42
#define NAILS_S(struct, nail)
Definition: post.c:39
post_plugin_t * post
Definition: post.h:225
int(* grab)(xine_grab_video_frame_t *self)
Definition: xine.h:544
int64_t av_offset
Definition: metronom.c:403
#define XINE_VO_ASPECT_AUTO
Definition: xine.h:401
pthread_mutex_t demux_lock
Definition: xine_private.h:530
#define ALIAS_CHARACTER_CONV
Definition: osd.c:71
int xine_get_pos_length(xine_stream_t *s, int *pos_stream, int *pos_time, int *length_time)
Definition: xine.c:2932
void(* destructor)(void *)
Definition: refcounter.h:30
uint32_t audio_type
Definition: xine_private.h:464
int _x_get_broadcaster_port(broadcaster_t *this_gen)
Definition: broadcaster.c:412
static void overlay_and_display_frame(vos_t *this, vo_frame_t *img, int64_t vpts)
Definition: video_out.c:2090
uint32_t(* get_capabilities)(demux_plugin_t *this_gen)
Definition: demux.h:162
int need_flush_signal
Definition: video_out.c:146
#define VO_CAP_CUSTOM_EXTENT_OVERLAY
Definition: video_out.h:329
vo_frame_t ** frames
Definition: video_out.c:226
void _x_audio_out_resample_5channel(int16_t *last_sample, int16_t *input_samples, uint32_t in_samples, int16_t *output_samples, uint32_t out_samples)
Definition: resample.c:175
video_overlay_event_t * event
Definition: video_overlay.c:42
#define XINE_PARAM_IGNORE_AUDIO
Definition: xine.h:336
Definition: broadcaster.c:82
int img_size
Definition: video_out.c:87
img_buf_fifo_t display_img_buf_queue
Definition: video_out.c:121
#define XINE_STREAM_INFO_FRAME_DURATION
Definition: xine.h:1015
static void osd_renderer_close(osd_renderer_t *this_gen)
Definition: osd.c:1884
int _x_audio_decoder_init(xine_stream_t *s)
Definition: audio_decoder.c:499
#define XINE_PARAM_VO_WINDOW_HEIGHT
Definition: xine.h:387
static int post_audio_control(xine_audio_port_t *port_gen, int cmd,...)
Definition: post.c:927
int _x_post_audio_port_ref(xine_audio_port_t *port_gen)
Definition: post.c:262
int64_t last_audio_pts
Definition: metronom.c:430
static void video_overlay_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_overlay.c:651
#define DEMUX_OPTIONAL_DATA_VIDEO_TIME
Definition: demux.h:242
#define XINE_PARAM_VO_ZOOM_X
Definition: xine.h:382
static void metronom_unregister_scr(metronom_clock_t *this, scr_plugin_t *scr)
Definition: metronom.c:1446
yuv2rgb_factory_t * yuv2rgb_factory_init(int mode, int swapped, const uint8_t *cmap)
Definition: yuv2rgb.c:3399
int video_window_height
Definition: osd.h:48
void xine_osd_clear(xine_osd_t *this)
Definition: xine_interface.c:874
int num_frames_delivered
Definition: video_out.c:178
const char name[16]
Definition: memcpy.c:569
static void unixscr_start(scr_plugin_t *scr, int64_t start_vpts)
Definition: metronom.c:134
#define SPU_TRACK_MAP_MAX
xine_t * xine
Definition: video_overlay.c:54
int _x_get_fine_speed(xine_stream_t *stream)
Definition: xine.c:2893
int32_t(* add_event)(video_overlay_manager_t *this_gen, void *event)
Definition: video_out.h:527
#define xine_freep_aligned(xinefreepptr)
Definition: xineutils.h:294
int video_window_x
Definition: osd.h:47
#define XINE_MSG_SECURITY
Definition: xine.h:2201
static void metronom_adjust_clock(metronom_clock_t *this, int64_t desired_pts)
Definition: metronom.c:342
int width
Definition: osd.h:41
video_overlay_events_t events[MAX_EVENTS]
Definition: video_overlay.c:57
static void metronom_start_clock(metronom_clock_t *this, int64_t pts)
Definition: metronom.c:279
#define XINE_STREAM_INFO_HAS_AUDIO
Definition: xine.h:1024
int crop_top
Definition: video_out.h:129
static void vo_open(xine_video_port_t *this_gen, xine_stream_t *stream)
Definition: video_out.c:2573
static char ** scratch_get_content(scratch_buffer_t *this)
Definition: scratch.c:72
#define AO_PROP_CLOSE_DEVICE
Definition: audio_out.h:335
void(* open)(xine_video_port_t *self, xine_stream_t *stream)
Definition: video_out.h:183
Definition: video_out.h:518
pthread_mutex_t config_lock
Definition: configfile.h:235
int format
Definition: video_out.h:140
#define XINE_META_INFO_VIDEOCODEC
Definition: xine.h:1068
int type
Definition: configfile.h:51
xine_video_port_t * port
Definition: video_out.h:150
int num_frames_burst
Definition: video_out.c:181
static int osd_show_scaled(osd_object_t *osd, int64_t vpts)
Definition: osd.c:513
int xine_check_version(int major, int minor, int sub)
Definition: xine_interface.c:65
static int32_t post_overlay_add_event(video_overlay_manager_t *ovl_gen, void *event)
Definition: post.c:779
unsigned int height
Definition: gfontrle.c:5
audio_decoder_t * audio_decoder_plugin
Definition: xine_private.h:461
#define XINE_STATUS_PLAY
Definition: xine.h:950
void xine_nbc_event(xine_stream_private_t *stream, uint32_t type)
Definition: net_buf_ctrl.c:352
static void osd_draw_bitmap(osd_object_t *osd, uint8_t *bitmap, int x1, int y1, int width, int height, uint8_t *palette_map)
Definition: osd.c:1913
void * speed_change_data[16+1]
Definition: metronom.c:248
int num_value
Definition: xine.h:1653
void _x_vo_scale_init(vo_scale_t *this, int support_zoom, int scaling_disabled, config_values_t *config)
Definition: vo_scale.c:398
static void remove_showing_handle(video_overlay_t *this, int32_t handle)
Definition: video_overlay.c:90
int frame_drop_suggested
Definition: video_out.c:203
xine_nbc_fifo_info_t audio
Definition: net_buf_ctrl.c:84
int audio_track_map_entries
Definition: xine_private.h:457
static int post_video_port_ref(xine_video_port_t *port_gen)
Definition: post.c:195
uint32_t mode
Definition: post.h:319
int hili_left
Definition: video_out.h:499
int warn_skipped_threshold
Definition: video_out.c:184
Definition: audio_out.h:43
uint8_t trans[256]
Definition: video_out.h:493
static audio_buffer_t * post_audio_get_buffer(xine_audio_port_t *port_gen)
Definition: post.c:887
int normpos
Definition: xine.h:246
char * str_default
Definition: xine.h:1647
int in_disc
Definition: net_buf_ctrl.c:69
#define XINE_STREAM_INFO_HAS_CHAPTERS
Definition: xine.h:1022
#define XINE_PARAM_VO_CROP_BOTTOM
Definition: xine.h:393
static void metronom_set_audio_rate(metronom_t *this_gen, int64_t pts_per_smpls)
Definition: metronom.c:439
#define DISC_RELATIVE
Definition: metronom.h:66
#define FIFO_PUT
Definition: net_buf_ctrl.c:49
pthread_cond_t done_flushing
Definition: video_out.c:129
#define METRONOM_VDR_TRICK_PTS
Definition: metronom.h:191
vo_frame_t * _x_post_intercept_video_frame(vo_frame_t *frame, post_video_port_t *port)
Definition: post.c:651
int frame_drop_cpt
Definition: video_out.c:202
int streams_size
Definition: video_out.c:116
int spu_channel
Definition: xine_internal.h:165
void(* unregister_get_cb)(fifo_buffer_t *fifo, void(*cb)(fifo_buffer_t *fifo, buf_element_t *buf, void *))
Definition: buffer.h:636
static void nbc_set_speed_pause(xine_nbc_t *this)
Definition: net_buf_ctrl.c:119
#define XINE_ERROR_NO_INPUT_PLUGIN
Definition: xine.h:957
static void stop_internal(xine_stream_private_t *stream)
Definition: xine.c:685
static void osd_set_extent(osd_object_t *osd, int extent_width, int extent_height)
Definition: osd.c:310
static int ticket_acquire_internal(xine_ticket_private_t *this, int irrevocable, int nonblocking)
Definition: xine.c:209
static const uint8_t textpalettes_trans[NUMBER_OF_TEXT_PALETTES][TEXT_PALETTE_SIZE]
Definition: osd.c:194
int _x_audio_decoder_init(xine_stream_t *stream)
Definition: audio_decoder.c:499
Definition: audio_out.h:172
int next_sync_pts
Definition: metronom.c:239
enable disable number of frames of telecine pattern sync required before mode change make frames evenly spaced for film mode(24 fps)" ) PARAM_ITEM( POST_PARAM_TYPE_BOOL
void(* update_num)(config_values_t *self, const char *key, int value)
Definition: configfile.h:167
pthread_mutex_t current_extra_info_lock
Definition: xine_private.h:542
#define abs(x)
Definition: xine_ogg_demuxer.c:349
#define BUF_CONTROL_AUDIO_CHANNEL
Definition: buffer.h:74
int num_frames_discarded
Definition: video_out.c:180
int type
Definition: xine.h:1964
#define XINE_POST_DATA_VIDEO
Definition: xine.h:828
static int vo_frame_dec2_lock_int(vos_t *this, vo_frame_t *img)
Definition: video_out.c:792
void init_yuv_conversion(void)
Definition: color.c:1686
#define XINE_CONFIG_SECURITY
Definition: configfile.h:40
#define XINE_STREAM_INFO_DVD_ANGLE_NUMBER
Definition: xine.h:1039
void set_argb_layer_ptr(argb_layer_t **dst, argb_layer_t *src)
Definition: osd.c:343
pthread_cond_t audio_discontinuity_reached
Definition: metronom.c:425
static void osd_set_text_palette(osd_object_t *osd, int palette_number, int color_base)
Definition: osd.c:823
#define MASK_PTS
Definition: metronom.c:277
xine_stream_t * stream
Definition: post.c:60
pthread_mutex_t lock
Definition: metronom.c:87
void xine_exit(xine_t *this_gen)
Definition: xine.c:2407
pthread_t audio_thread
Definition: xine_private.h:460
struct vo_frame_s * future_frame
Definition: video_out.h:158
int percent
Definition: xine.h:2011
xine_video_port_t ** video_input
Definition: xine.h:679
#define EXTERN_C_START
Definition: xine_private.h:61
vo_frame_t *(* get_frame)(xine_video_port_t *self, uint32_t width, uint32_t height, double ratio, int format, int flags)
Definition: video_out.h:194
#define XINE_PARAM_EQ_1000HZ
Definition: xine.h:345
#define XINE_SPEED_SLOW_2
Definition: xine.h:366
#define XINE_EVENT_NBC_STATS
Definition: xine.h:1828
int xine_config_register_enum(xine_t *self, const char *key, int def_value, char **values, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: xine_interface.c:131
#define SPU_SLEEP_INTERVAL
Definition: video_decoder.c:45
xine_post_out_t * xine_get_audio_source(xine_stream_t *s)
Definition: xine_interface.c:992
#define XINE_PARAM_IGNORE_SPU
Definition: xine.h:337
static int _osd_show(osd_object_t *osd, int64_t vpts, int unscaled)
Definition: osd.c:376
broadcaster_t * broadcaster
Definition: xine_private.h:554
void xine_osd_draw_rect(xine_osd_t *this, int x1, int y1, int x2, int y2, int color, int filled)
Definition: xine_interface.c:831
static void xine_side_dispose_internal(xine_stream_private_t *stream)
Definition: xine.c:1191
static int now(void)
Definition: xine_goom.c:382
int32_t handle
Definition: video_overlay.c:47
extra_info_t * extra_info
Definition: video_out.h:135
int finished
Definition: video_out.c:79
static void metronom_handle_vdr_trick_pts(metronom_impl_t *this, int64_t pts)
Definition: metronom.c:684
static int post_audio_port_ref(xine_audio_port_t *port_gen)
Definition: post.c:246
static void vo_ticket_revoked(void *user_data, int flags)
Definition: video_out.c:469
int _x_spu_calculate_opacity(const clut_t *clut, uint8_t trans, const xine_spu_opacity_t *opacity)
Definition: spu.c:58
#define ALIAS_CHARACTER_FONT
Definition: osd.c:76
int _x_post_dispose(post_plugin_t *this)
Definition: post.c:1044
static int xine_refs_sub(xine_refs_t *refs, int n)
Definition: xine_private.h:134
int explanation
Definition: xine.h:1969
int xine_eject(xine_stream_t *s)
Definition: xine.c:2283
Definition: metronom.h:71
uint32_t _x_stream_info_get(xine_stream_t *s, int info)
Definition: info_helper.c:100
#define XINE_STREAM_INFO_VIDEO_CHANNELS
Definition: xine.h:1010
#define BUF_CONTROL_START
Definition: buffer.h:69
int showing_changed
Definition: video_overlay.c:62
void(* dispose)(yuv2rgb_t *this)
Definition: yuv2rgb.h:99
buf_element_t * first
Definition: buffer.h:583
pthread_t demux_thread
Definition: xine_private.h:529
int range_max
Definition: xine.h:1658
demux_plugin_t * _x_find_demux_plugin(xine_stream_t *stream, input_plugin_t *input)
Definition: load_plugins.c:1987
#define METRONOM_AV_OFFSET
Definition: metronom.h:172
static int32_t xine_str2int32(const char **s)
Definition: xine_private.h:250
void _x_post_init(post_plugin_t *post, int num_audio_inputs, int num_video_inputs)
Definition: post.c:292
pthread_mutex_t frontend_lock
Definition: xine_private.h:482
int xine_monotonic_clock(struct timeval *tv, struct timezone *tz)
Definition: utils.c:727
static void unixscr_set_pivot(unixscr_t *this)
Definition: metronom.c:96
static void vo_unref_obsolete(vos_t *this)
Definition: video_out.c:362
const char * text_domain
Optional non-standard catalog to use with dgettext() for description.
Definition: demux.h:68
static int lock_timeout(pthread_mutex_t *mutex, int ms_timeout)
Definition: xine.c:526
#define BUF_AUDIO_BASE
Definition: buffer.h:206
#define SPEED_FLAG_CHANGING
Definition: xine_private.h:417
video_decoder_t * _x_get_video_decoder(xine_stream_t *stream, uint8_t stream_type)
Definition: load_plugins.c:2652
int xine_get_status(xine_stream_t *s)
Definition: xine.c:2817
void(* register_put_cb)(fifo_buffer_t *fifo, void(*cb)(fifo_buffer_t *fifo, buf_element_t *buf, void *), void *cb_data)
Definition: buffer.h:632
void xine_osd_draw_bitmap(xine_osd_t *this, uint8_t *bitmap, int x1, int y1, int width, int height, uint8_t *palette_map)
Definition: xine_interface.c:894
osd_renderer_t * renderer
Definition: osd.h:39
pthread_cond_t video_discontinuity_reached
Definition: metronom.c:424
int(* draw)(vo_frame_t *vo_img, xine_stream_t *stream)
Definition: video_out.h:91
#define BUF_CONTROL_NEWPTS
Definition: buffer.h:76
static int stream_rewire_video(xine_post_out_t *output, void *data)
Definition: xine.c:953
static void metronom_handle_video_discontinuity(metronom_t *this_gen, int type, int64_t disc_off)
Definition: metronom.c:715
post_video_port_t * _x_post_intercept_video_port(post_plugin_t *post, xine_video_port_t *original, post_in_t **input, post_out_t **output)
Definition: post.c:509
int x
Definition: video_out.h:477
#define SCHED_OTHER
Definition: video_decoder.c:48
int flags
Definition: xine_private.h:409
#define XINE_ANON_STREAM
Definition: xine_internal.h:173
xine_ticket_t * port_ticket
Definition: xine_private.h:403
static uint32_t vo_get_capabilities(xine_video_port_t *this_gen)
Definition: video_out.c:2568
int64_t audio_vpts_rmndr
Definition: metronom.c:390
static void ticket_revoke_cb_unregister(xine_ticket_t *tgen, xine_ticket_revoke_cb_t *cb, void *user_data)
Definition: xine.c:189
static void vo_enable_overlay(xine_video_port_t *this_gen, int overlay_enabled)
Definition: video_out.c:2989
xine_keyframes_entry_t * index_array
Definition: xine_private.h:558
static int64_t unixscr_get_current(scr_plugin_t *scr)
Definition: metronom.c:148
int(* unregister_callbacks)(config_values_t *self, const char *key, xine_config_cb_t changed_cb, void *cb_data, size_t cb_data_size)
Definition: configfile.h:249
#define XINE_STREAM_INFO_AUDIO_CHANNELS
Definition: xine.h:1016
const char _x_vo_scale_aspect_ratio_name_table[][8]
Definition: vo_scale.c:348
void(* put_buffer)(xine_audio_port_t *, audio_buffer_t *buf, xine_stream_t *stream)
Definition: audio_out.h:200
int _x_action_pending(xine_stream_t *s)
Definition: demux.c:760
#define FIRST_FRAME_POLL_DELAY
Definition: video_out.c:61
void(* flush)(xine_video_port_t *self)
Definition: video_out.h:211
#define XINE_META_INFO_INPUT_PLUGIN
Definition: xine.h:1071
void _x_video_decoder_shutdown(xine_stream_t *stream)
Definition: video_decoder.c:639
xine_list_t * input
Definition: post.h:89
int64_t a_bitrate
Definition: xine.h:2024
#define XINE_STREAM_INFO_VIDEO_FOURCC
Definition: xine.h:1013
static void * video_out_loop(void *this_gen)
Definition: video_out.c:2284
void _x_demux_control_nop(xine_stream_t *s, uint32_t flags)
Definition: demux.c:318
#define EXTERN_C_STOP
Definition: xine_private.h:62
fifo_buffer_t * audio_fifo
Definition: xine_internal.h:144
xine_config_cb_t callback
Definition: xine.h:1676
#define XINE_EVENT_UI_CHANNELS_CHANGED
Definition: xine.h:1815
void * mem_to_free
Definition: metronom.c:78
static int play_internal(xine_stream_private_t *stream, int start_pos, int start_time)
Definition: xine.c:2018
#define xine_rwlock_wrlock(l)
Definition: xine_private.h:228
static xine_grab_video_frame_t * post_video_new_grab_video_frame(xine_video_port_t *port_gen)
Definition: post.c:355
const char * key
Definition: xine.h:1633
int finished_count_audio
Definition: xine_private.h:518
int width
Definition: xine.h:474
static uint32_t post_video_get_capabilities(xine_video_port_t *port_gen)
Definition: post.c:300
static void unlock_run(xine_stream_private_t *stream)
Definition: xine.c:748
void _x_demux_control_headers_done(xine_stream_t *s)
Definition: demux.c:184
const char * xine_get_homedir(void)
Definition: utils.c:380
static int video_overlay_redraw_needed(video_overlay_manager_t *this_gen, int64_t vpts)
Definition: video_overlay.c:698
void(* dispose)(fifo_buffer_t *fifo)
Definition: buffer.h:608
int crop_top
Definition: xine.h:478
void xine_free_video_frame(xine_video_port_t *port, xine_video_frame_t *frame)
Definition: video_out.c:2553
void _x_free_input_plugin(xine_stream_t *stream, input_plugin_t *input)
Definition: load_plugins.c:1879
uint32_t * buffer
Definition: video_out.h:465
void _x_spu_misc_init(xine_t *this)
Definition: spu.c:34
int64_t vpts
Definition: video_out.h:110
static void vo_streams_open(vos_t *this)
Definition: video_out.c:241
void _x_audio_out_resample_4channel(int16_t *last_sample, int16_t *input_samples, uint32_t in_samples, int16_t *output_samples, uint32_t out_samples)
Definition: resample.c:115
int _x_query_unprocessed_osd_events(xine_stream_t *stream)
Definition: xine.c:3535
xine_stream_t * stream
Definition: video_out.h:152
#define AO_PROP_BUFS_FREE
Definition: audio_out.h:340
int speed
Definition: metronom.h:284
int num_default
Definition: configfile.h:65
int grab_height
Definition: video_out.c:85
static void osd_clear(osd_object_t *osd)
Definition: osd.c:576
int vo_height
Definition: video_out.c:84
unixscr_t uscr
Definition: metronom.c:238
#define BUF_VIDEO_BASE
Definition: buffer.h:88
#define FIRST_FRAME_MAX_POLL
Definition: video_out.c:62
int(* set_property)(xine_video_port_t *self, int property, int value)
Definition: video_out.h:221
static void nbc_put_cb(fifo_buffer_t *fifo, buf_element_t *buf, void *this_gen)
Definition: net_buf_ctrl.c:533
#define XINE_MASTER_SLAVE_SPEED
Definition: xine.h:228
int(* configure)(yuv2rgb_t *this, int source_width, int source_height, int y_stride, int uv_stride, int dest_width, int dest_height, int rgb_stride)
Definition: yuv2rgb.h:85
void(* renew)(xine_ticket_t *self, int irrevocable)
Definition: tickets.h:75
static void join_av_cb(void *this_gen, xine_cfg_entry_t *entry)
Definition: xine.c:2635
#define OVERLAY_EVENT_NULL
Definition: video_overlay.h:38
int height
Definition: xine.h:566
int xine_get_audio_lang(xine_stream_t *s, int channel, char *lang)
Definition: xine.c:3285
struct vo_frame_s * next
Definition: video_out.h:164
uint32_t decoder_flags
Definition: buffer.h:350
#define XINE_STREAM_INFO_DVD_CHAPTER_NUMBER
Definition: xine.h:1037
static int _get_spu_lang(xine_stream_private_t *stream, int channel, char *lang)
Definition: xine.c:3220
xine_stream_t * slave
Definition: xine_internal.h:151
void _x_mrl_unescape(char *mrl)
Definition: xine.c:1381
void xine_speed_change_cb_t(void *user_data, int new_speed)
Definition: metronom.h:194
int _x_post_video_port_unref(xine_video_port_t *port_gen)
Definition: post.c:236
xine_stream_t * stream
Definition: net_buf_ctrl.c:74
static video_overlay_manager_t * vo_get_overlay_manager(xine_video_port_t *this_gen)
Definition: video_out.c:2984
pthread_mutex_t event_queues_lock
Definition: xine_private.h:526
int grab_width
Definition: video_out.c:85
int type
Definition: xine.h:1635
static vo_frame_t * vo_ready_get_dupl(vos_t *this, vo_frame_t *s)
Definition: video_out.c:1751
#define VO_GET_FLAGS_CM(flags)
Definition: video_out.h:303
#define CLOCK_SCR_ADJUSTABLE
Definition: metronom.h:303
static void unixscr_exit(scr_plugin_t *scr)
Definition: metronom.c:166
int x2
Definition: video_out.h:468
void _x_audio_out_resample_8to16(int8_t *input_samples, int16_t *output_samples, uint32_t samples)
Definition: resample.c:315
int xine_post_wire_video_port(xine_post_out_t *source, xine_video_port_t *vo)
Definition: xine_interface.c:961
vo_frame_t ** add
Definition: video_out.c:94
int refs
Definition: xine_private.h:112
void _x_flush_events_queues(xine_stream_t *s)
Definition: events.c:544
void xine_osd_draw_point(xine_osd_t *this, int x, int y, int color)
Definition: xine_interface.c:823
int network_timeout
Definition: xine_private.h:410
static void xine_uint32_2str(char **s, uint32_t v)
Definition: xine_private.h:361
pthread_mutex_t info_lock
Definition: xine_private.h:495
int type
Definition: xine.h:1929
#define XINE_OSD_CAP_VIDEO_WINDOW
Definition: xine.h:2292
static int post_video_get_property(xine_video_port_t *port_gen, int property)
Definition: post.c:453
pthread_t video_thread
Definition: xine_private.h:451
#define BUF_FLAG_GAPLESS_SW
Definition: buffer.h:408
#define METRONOM_FRAME_DURATION
Definition: metronom.h:174
uint32_t keep_ao_driver_open
Definition: xine_private.h:444
char * help
Definition: configfile.h:76
Definition: video_out.h:59
#define BUF_FLAG_SEEK
Definition: buffer.h:392
int num_streams
Definition: video_out.c:115
static void vo_queue_close(img_buf_fifo_t *queue)
Definition: video_out.c:422
vo_open_t * open
Definition: video_out.h:52
fifo_buffer_t * fifo
Definition: net_buf_ctrl.c:54
#define XINE_PARAM_EQ_30HZ
Definition: xine.h:340
#define XINE_CONFIG_TYPE_UNKNOWN
Definition: xine.h:1615
xine_refs_t refs
Definition: xine_private.h:556
uint32_t _x_stream_info_get_public(xine_stream_t *s, int info)
Definition: info_helper.c:113
#define MODE_24_RGB
Definition: yuv2rgb.h:65
int buffering
Definition: xine.h:2026
int64_t last_delivery_pts
Definition: video_out.c:191
#define BUF_CONTROL_RESET_DECODER
Definition: buffer.h:77
static vo_frame_t * vo_get_frame(xine_video_port_t *this_gen, uint32_t width, uint32_t height, double ratio, int format, int flags)
Definition: video_out.c:1210
int width
Definition: xine.h:566
static void check_log_alloc(xine_private_t *this, int buf)
Definition: xine.c:3327
static void vo_free_append_list(vos_t *this, vo_frame_t *img, vo_frame_t **add, int n)
Definition: video_out.c:535
#define XINE_SPEED_PAUSE
Definition: xine.h:364
int height
Definition: osd.h:41
int dvbspeed
Definition: net_buf_ctrl.c:98
#define VO_PROP_NUM_STREAMS
Definition: video_out.h:264
int _x_get_speed(xine_stream_t *stream)
Definition: xine.c:2905
int discard_frames
Definition: video_out.c:124
int area_touched
Definition: osd.h:43
#define DEMUX_OPTIONAL_DATA_SPULANG
Definition: demux.h:240
static void send_audio_amp_event_internal(xine_stream_private_t *stream)
Definition: xine_interface.c:344
static void unixscr_adjust(scr_plugin_t *scr, int64_t vpts)
Definition: metronom.c:123
static int post_overlay_redraw_needed(video_overlay_manager_t *ovl_gen, int64_t vpts)
Definition: post.c:797
void(* lock)(vo_frame_t *vo_img)
Definition: video_out.h:97
#define DEFAULT_FRAME_DURATION
Definition: video_out.c:58
static int ticket_lock_port_rewiring(xine_ticket_t *tgen, int ms_timeout)
Definition: xine.c:544
static void metronom_sync_hook(void *this_gen, xine_cfg_entry_t *entry)
Definition: metronom.c:1601
uint32_t(* get_capabilities)(xine_audio_port_t *)
Definition: audio_out.h:173
void _x_free_video_driver(xine_t *xine, vo_driver_t **pdriver)
Definition: load_plugins.c:2549
static int post_frame_draw(vo_frame_t *vo_img, xine_stream_t *stream)
Definition: post.c:618
void xine_list_remove(xine_list_t *list, xine_list_iterator_t position)
Definition: list.c:246
static void metronom_set_master(metronom_t *this_gen, metronom_t *master)
Definition: metronom.c:1303
uint32_t type
Definition: buffer.h:362
static void post_frame_lock(vo_frame_t *vo_img)
Definition: post.c:630
int have_audio
Definition: metronom.c:409
uint16_t color
Definition: video_out.h:460
Definition: configfile.h:46
int _x_lock_frontend(xine_stream_t *s, int ms_to_time_out)
Definition: xine.c:3523
static uint32_t osd_get_capabilities(osd_object_t *osd)
Definition: osd.c:1972
void xine_osd_show(xine_osd_t *this, int64_t vpts)
Definition: xine_interface.c:862
static void * metronom_sync_loop(void *const this_gen)
Definition: metronom.c:1343
void _x_clut_yuv2rgb(uint32_t *clut, int num_items, int color_matrix)
Definition: alphablend.c:2189
int a_percent
Definition: xine.h:2022
int current_width
Definition: video_out.c:197
int ticket_revoked
Definition: tickets.h:61
post_plugin_t * post
Definition: post.h:326
void(* flush)(xine_audio_port_t *)
Definition: audio_out.h:220
pthread_mutex_t counter_lock
Definition: xine_private.h:514
static scr_plugin_t * get_master_scr(metronom_clock_t *this)
Definition: metronom.c:1322
#define XINE_PARAM_VO_GAMMA
Definition: xine.h:381
pthread_cond_t demux_resume
Definition: xine_private.h:532
#define xine_rwlock_destroy(l)
Definition: xine_private.h:232
static void vo_close(xine_video_port_t *this_gen, xine_stream_t *stream)
Definition: video_out.c:2594
int num_anon_streams
Definition: video_out.c:114
void _x_refcounter_dispose(refcounter_t *refcounter)
Definition: refcounter.c:76
int _x_query_buffers(xine_stream_t *stream, xine_query_buffers_t *query)
Definition: xine.c:3458
double ratio
Definition: video_out.h:139
void xine_config_update_entry(xine_t *this, const xine_cfg_entry_t *entry)
Definition: xine_interface.c:294
int y
Definition: video_out.h:478
#define XINE_OSD_CAP_ARGB_LAYER
Definition: xine.h:2291
#define XINE_PARAM_VO_CROP_LEFT
Definition: xine.h:390
int data_length
Definition: xine.h:1927
void xine_log(xine_t *this_gen, int buf, const char *format,...)
Definition: xine.c:3340
#define XINE_TICKET_FLAG_PAUSE
Definition: xine.c:142
void(* set_position)(osd_object_t *osd, int x, int y)
Definition: osd.h:160
void xine_nbc_close(xine_nbc_t *this)
Definition: net_buf_ctrl.c:844
int atomic_revokers
Definition: xine.c:159
static void config_save_cb(void *this_gen, xine_cfg_entry_t *entry)
Definition: xine.c:2593
static int64_t metronom_got_spu_packet(metronom_t *this_gen, int64_t pts)
Definition: metronom.c:451
argb_layer_t * argb_layer
Definition: osd.h:72
void(* release)(xine_ticket_t *self, int irrevocable)
Definition: tickets.h:69
static void vo_free_append(vos_t *this, vo_frame_t *img)
Definition: video_out.c:518
static void osd_line(osd_object_t *osd, int x1, int y1, int x2, int y2, int color)
Definition: osd.c:636
#define XINE_STREAM_INFO_VIDEO_AFD
Definition: xine.h:1034
#define AUDIO_SAMPLE_MASK
Definition: metronom.c:53
int usage_count
Definition: post.h:314
Definition: alphablend.h:44
int64_t dvbs_audio_in
Definition: net_buf_ctrl.c:100
void _x_extra_info_reset(extra_info_t *extra_info)
Definition: xine.c:118
#define XINE_STREAM_INFO_IGNORE_VIDEO
Definition: xine.h:1025
int exp_level
Definition: xine.h:1638
int spu_channel_auto
Definition: xine_internal.h:163
void(* close)(xine_video_port_t *self, xine_stream_t *stream)
Definition: video_out.h:230
static void update_spu_decoder(xine_stream_t *stream, int type)
Definition: video_decoder.c:52
static vo_frame_t * post_intercept_video_frame(post_video_port_t *port, vo_frame_t *frame, vf_alias_t *new_frame, int usage)
Definition: post.c:101
static void metronom_stop_clock(metronom_clock_t *this)
Definition: metronom.c:316
int width
Definition: video_out.h:138
static void xine_uint64_2str(char **s, uint64_t v)
Definition: xine_private.h:373
#define AO_PROP_AMP_MUTE
Definition: audio_out.h:336
int total
Definition: xine_internal.h:177
uint32_t bits
Definition: post.h:317
uint32_t grab_only
Definition: video_out.c:172
#define XINE_VERBOSITY_NONE
Definition: xine.h:424
xine_stream_t * xine_get_side_stream(xine_stream_t *master, int index)
Definition: xine.c:1234
#define VO_CAP_ARGB_LAYER_OVERLAY
Definition: video_out.h:330
static void nbc_compute_fifo_length(xine_nbc_t *this, fifo_buffer_t *fifo, buf_element_t *buf, int action)
Definition: net_buf_ctrl.c:432
#define XINE_LOG_TRACE
Definition: xine_internal.h:66
int crop_bottom
Definition: xine.h:479
void(* decode_data)(spu_decoder_t *this_gen, buf_element_t *buf)
Definition: spu_decoder.h:79
#define XINE_NBC_EVENT_AUDIO_DRY
Definition: xine_private.h:575
void _x_audio_out_resample_16to8(int16_t *input_samples, int8_t *output_samples, uint32_t samples)
Definition: resample.c:327
osd_object_t *(* new_object)(osd_renderer_t *this_gen, int width, int height)
Definition: osd.h:94
static int input(void)
Definition: goomsl_lex.c:1495
#define XINE_PARAM_AUDIO_CHANNEL_LOGICAL
Definition: xine.h:325
demux_plugin_t * _x_find_demux_plugin_last_probe(xine_stream_t *stream, const char *last_demux_name, input_plugin_t *input)
Definition: load_plugins.c:2060
static int config_get_current_entry(xine_t *this, xine_cfg_entry_t *entry)
Definition: xine_interface.c:196
int bounce_left_video
Definition: metronom.c:412
static int dvbspeed_get(xine_nbc_t *this, fifo_buffer_t *fifo, buf_element_t *b)
Definition: net_buf_ctrl.c:272
int audio_channel_user
Definition: xine_private.h:469
static void vo_unref_list(vos_t *this, vo_frame_t *img)
Definition: video_out.c:338
pthread_mutex_t usage_lock
Definition: post.h:311
const char * _x_buf_video_name(uint32_t buf_type)
Returns video codec name given the buffer type.
Definition: buffer_types.c:512
uint8_t * base[3]
Definition: video_out.h:116
xine_keyframes_entry_t * xine_keyframes_get(xine_stream_t *s, int *size)
Get a private stream keyframe seek index copy, free () it when done.
Definition: xine.c:3716
const char * _x_meta_info_get(xine_stream_t *s, int info)
Definition: info_helper.c:414
osd_ft2context_t * ft2
Definition: osd.h:66
xine_post_in_t * xine_post_input(xine_post_t *this_gen, const char *name)
Definition: xine_interface.c:924
int flags
Definition: video_out.h:143
#define VO_PROP_BUFS_TOTAL
Definition: video_out.h:271
int num_null_streams
Definition: video_out.c:113
int crop_top
Definition: xine.h:556
#define XINE_EVENT_UI_PLAYBACK_FINISHED
Definition: xine.h:1814
int _x_get_video_streamtype(xine_stream_t *s)
Definition: xine.c:3301
int skipped_frames
Definition: xine.h:2173
uint32_t stream_br
Definition: net_buf_ctrl.c:65
video_overlay_manager_t * _x_video_overlay_new_manager(xine_t *xine)
Definition: video_overlay.c:733
static void vo_wait_flush(vos_t *this)
Definition: video_out.c:820
uint32_t early_finish_event
Definition: xine_private.h:442
void * user_data
Definition: post.h:155
void _x_vo_scale_compute_ideal_size(vo_scale_t *this)
Definition: vo_scale.c:47
video_overlay_manager_t video_overlay
Definition: video_overlay.c:52
int x2
Definition: osd.h:55
void _x_overlay_clut_yuv2rgb(vo_overlay_t *overlay, int video_color_matrix)
Definition: video_overlay.c:498
#define SPEED_FLAG_WANT_NEW
Definition: xine_private.h:419
static int post_audio_get_property(xine_audio_port_t *port_gen, int property)
Definition: post.c:850
osd_font_t * font
Definition: osd.h:65
#define XINE_SPEED_NORMAL
Definition: xine.h:367
uint32_t warn_threshold_event_sent
Definition: video_out.c:169
char * filename
Definition: osd.c:210
int warn_discarded_threshold
Definition: video_out.c:185
#define METRONOM_PREBUFFER
Definition: metronom.h:177
static scr_plugin_t * unixscr_init(void *this_gen)
Definition: metronom.c:173
const char * xine_get_version_string(void)
Definition: xine_interface.c:51
static void vo_scale_disable_scaling_changed(void *data, xine_cfg_entry_t *entry)
Definition: vo_scale.c:374
static void post_audio_exit(xine_audio_port_t *port_gen)
Definition: post.c:919
post_plugin_t * post
Definition: post.h:152
void * callback_data
Definition: configfile.h:80
pthread_cond_t counter_changed
Definition: xine_private.h:515
#define XINE_EVENT_UI_MESSAGE
Definition: xine.h:1817
#define XINE_IMGFMT_YUY2
Definition: xine.h:495
#define BUF_CONTROL_QUIT
Definition: buffer.h:71
void(* set_option)(metronom_clock_t *self, int option, int64_t value)
Definition: metronom.h:204
int xine_config_unregister_callbacks(xine_t *self, const char *key, xine_config_cb_t changed_cb, void *cb_data, size_t cb_data_size)
Definition: xine_interface.c:176
char * meta_info_public[XINE_STREAM_INFO_MAX]
Definition: xine_private.h:500
void xine_init(xine_t *this_gen)
Definition: xine.c:2640
static void ticket_release_internal(xine_ticket_private_t *this, int irrevocable)
Definition: xine.c:274
int _x_spu_decoder_sleep(xine_stream_t *s, int64_t next_spu_vpts)
Definition: video_decoder.c:70
static int osd_search(osd_fontchar_t *array, size_t n, uint16_t code)
Definition: osd.c:1293
int last_discontinuity_type
Definition: metronom.c:418
#define COLOUR_OPACITY
Definition: spu.c:32
int ratio_code
Definition: xine.h:480
void(* enable_ovl)(xine_video_port_t *self, int ovl_enable)
Definition: video_out.h:205
static void post_frame_free(vo_frame_t *vo_img)
Definition: post.c:568
int speed
Definition: video_out.c:151
scratch_buffer_t * _x_new_scratch_buffer(int num_lines)
Definition: scratch.c:111
pthread_mutex_t lock
Definition: metronom.c:406
void _x_post_frame_copy_down(vo_frame_t *from, vo_frame_t *to)
Definition: post.c:660
int64_t video_drift_step
Definition: metronom.c:395
static int metronom_register_scr(metronom_clock_t *this, scr_plugin_t *scr)
Definition: metronom.c:1419
int video_window_width
Definition: osd.h:48
static const int8_t tab_unhex[256]
Definition: http_helper.c:34
static void ticket_release_nonblocking(xine_ticket_t *tgen, int irrevocable)
Definition: xine.c:312
xine_ticket_revoke_cb_t * revoke_callbacks[15+1]
Definition: xine.c:169
double speed_factor_1
Definition: metronom.c:83
yuv2rgb_factory_t * yuv2rgb_factory
Definition: video_out.c:82
void xine_osd_free(xine_osd_t *this)
Definition: xine_interface.c:878
static vf_alias_t * post_new_video_alias(post_video_port_t *port, int usage)
Definition: post.c:71
#define METRONOM_WAITING
Definition: metronom.h:188
static void video_overlay_dispose(video_overlay_manager_t *this_gen)
Definition: video_overlay.c:707
uint32_t video_thread_created
Definition: xine_private.h:436
#define AO_PROP_AMP
Definition: audio_out.h:324
int video_channel
Definition: xine_private.h:455
struct unixscr_s unixscr_t
#define xprintf(xine, verbose,...)
Definition: xineutils.h:664
buf_element_t *(* tget)(fifo_buffer_t *fifo, xine_ticket_t *ticket)
Definition: buffer.h:669
#define XINE_SPEED_FAST_4
Definition: xine.h:369
video_overlay_manager_t * new_manager
Definition: post.h:204
void xine_osd_draw_text(xine_osd_t *this, int x1, int y1, const char *text, int color_base)
Definition: xine_interface.c:842
pthread_cond_t revoked
Definition: xine.c:149
#define KF_MASK
Definition: xine.c:3586
uint32_t br
Definition: net_buf_ctrl.c:64
int msecs
Definition: xine.h:245
void(* dispose)(xine_grab_video_frame_t *self)
Definition: xine.h:549
Definition: xine_private.h:431
uint32_t fifo_size
Definition: net_buf_ctrl.c:67
int usage_count
Definition: post.h:211
int xine_config_get_next_entry(xine_t *this, xine_cfg_entry_t *entry)
Definition: xine_interface.c:246
void _x_free_demux_plugin(xine_stream_t *stream, demux_plugin_t **pdemux)
Definition: load_plugins.c:2142
#define XINE_STREAM_INFO_MAX
Definition: xine_internal.h:69
#define XINE_STREAM_INFO_BITRATE
Definition: xine.h:1005
int xine_get_error(xine_stream_t *s)
Definition: xine.c:3391
int count
Definition: xine.c:163
uint8_t * img
Definition: xine.h:484
int spu_channel_user
Definition: xine_internal.h:162
#define BUF_FLAG_END_USER
Definition: buffer.h:383
#define N_(String)
Definition: xineintl.h:47
vo_overlay_t ovl
Definition: osd.c:103
void(* free)(vo_frame_t *vo_img)
Definition: video_out.h:100
xine_video_port_t vo
Definition: video_out.c:105
xdgHandle basedir_handle
Definition: xine_internal.h:100
Definition: video_out.h:458
static int32_t post_overlay_get_handle(video_overlay_manager_t *ovl_gen, int object_type)
Definition: post.c:761
vo_frame_t * last_frame
Definition: video_out.c:159
static int post_audio_status(xine_audio_port_t *port_gen, xine_stream_t *stream, uint32_t *bits, uint32_t *rate, int *mode)
Definition: post.c:951
void(* field)(vo_frame_t *vo_img, int which_field)
Definition: video_out.h:86
static void _x_post_rewire(post_plugin_t *post)
Definition: post.h:373
static void wait_first_frame(xine_stream_private_t *stream)
Definition: xine.c:2005
#define BUF_FLAG_PREVIEW
Definition: buffer.h:380
int height
Definition: video_out.h:480
static int xine_gettime(struct timespec *ts)
Definition: xine_private.h:238
#define SPEED_FLAG_IGNORE_CHANGE
Definition: xine_private.h:416
uint8_t cr
Definition: alphablend.h:46
uint8_t colour
Definition: spu.h:31
static void vo_frame_driver_proc(vo_frame_t *img)
Definition: video_out.c:1168
static vo_frame_t * vo_ready_pop(vos_t *this)
Definition: video_out.c:1735
static void dvbspeed_close(xine_nbc_t *this)
Definition: net_buf_ctrl.c:180
#define XINE_MASTER_SLAVE_PLAY
Definition: xine.h:224
#define OVERLAY_EVENT_SHOW
Definition: video_overlay.h:39
int(* register_bool)(config_values_t *self, const char *key, int def_value, const char *description, const char *help, int exp_level, xine_config_cb_t changed_cb, void *cb_data)
Definition: configfile.h:154
#define XINE_LIVE_PAUSE_OFF
Definition: xine_private.h:428
#define XINE_STREAM_INFO_DVD_ANGLE_COUNT
Definition: xine.h:1040
static const char *const textpalettes_str[NUMBER_OF_TEXT_PALETTES+1]
Definition: osd.c:108
static void ticket_unlock_port_rewiring(xine_ticket_t *tgen)
Definition: xine.c:563