xine-lib  1.2.10
dxr3_scr.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2000-2009 the xine project
3  *
4  * This file is part of xine, a free video player.
5  *
6  * xine is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * xine is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
19  */
20 
21 #include <xine/xine_internal.h>
22 
23 
24 /* plugin structure */
25 typedef struct dxr3_scr_s {
27  pthread_mutex_t mutex;
28 
30 
31  int fd_control; /* to access the dxr3 control device */
32 
33  int priority;
34  int64_t offset; /* difference between real scr and internal dxr3 clock */
35  uint32_t last_pts; /* last known value of internal dxr3 clock to detect wrap around */
36  int scanning; /* are we in a scanning mode */
37  int sync; /* are we in sync mode */
38 } dxr3_scr_t;
39 
40 /* plugin initialization function */
xine_s
Definition: xine_internal.h:80
em8300_register_t::val
int val
Definition: em8300.h:40
dxr3_decoder_s
Definition: dxr3_decode_video.c:85
XINE_STREAM_INFO_VIDEO_WIDTH
#define XINE_STREAM_INFO_VIDEO_WIDTH
Definition: xine.h:1007
XINE_IMGFMT_YV12
#define XINE_IMGFMT_YV12
Definition: xine.h:494
vo_frame_s::pitches
int pitches[3]
Definition: video_out.h:117
dxr3_frame_s
Definition: video_out_dxr3.h:129
buf_element_s::size
int32_t size
Definition: buffer.h:343
xine_stream_s::xine
xine_t * xine
Definition: xine_internal.h:126
dxr3_decoder_s::sync_retry
int sync_retry
Definition: dxr3_decode_video.c:120
dxr3_scr_start
static void dxr3_scr_start(scr_plugin_t *scr, int64_t vpts)
Definition: dxr3_scr.c:124
video_decoder_s
Definition: video_decoder.h:73
dxr3_spudec_s::buttonN
uint32_t buttonN
Definition: dxr3_decode_spu.c:121
dxr3_decoder_s::height
int height
Definition: dxr3_decode_video.c:100
XINE_STREAM_INFO_VIDEO_RATIO
#define XINE_STREAM_INFO_VIDEO_RATIO
Definition: xine.h:1009
dxr3_decoder_s::ratio
double ratio
Definition: dxr3_decode_video.c:101
xine_stream_s
Definition: xine_internal.h:123
SPU_DVD_SUBTYPE_CLUT
#define SPU_DVD_SUBTYPE_CLUT
Definition: buffer.h:537
metronom_clock_s
Definition: metronom.h:199
metronom_clock_s::unregister_scr
void(* unregister_scr)(metronom_clock_t *self, scr_plugin_t *scr)
Definition: metronom.h:262
dxr3_frame_s::oheight
uint32_t oheight
Definition: video_out_dxr3.h:131
XINE_FINE_SPEED_NORMAL
#define XINE_FINE_SPEED_NORMAL
Definition: xine.h:372
EM8300_IOCTL_WRITEREG
#define EM8300_IOCTL_WRITEREG
Definition: em8300.h:85
em8300_button_t::top
int top
Definition: em8300.h:75
vo_frame_s::pts
int64_t pts
Definition: video_out.h:109
dxr3_decoder_class_s
Definition: dxr3_decode_video.c:79
scr_plugin_s
Definition: metronom.h:309
EM8300_IOCTL_SCR_SETSPEED
#define EM8300_IOCTL_SCR_SETSPEED
Definition: em8300.h:109
CONF_HELP
#define CONF_HELP
Definition: dxr3.h:35
xineutils.h
dxr3_decoder_s::panscan_smart_change
int panscan_smart_change
Definition: dxr3_decode_video.c:110
dxr3_decoder_s::correct_durations
int correct_durations
Definition: dxr3_decode_video.c:125
pci_node_s::next
pci_node_t * next
Definition: dxr3_decode_spu.c:96
em8300_button_t::left
int left
Definition: em8300.h:77
dxr3_driver_s::enc
encoder_data_t * enc
Definition: video_out_dxr3.h:104
dxr3_decoder_s::skip_count
int skip_count
Definition: dxr3_decode_video.c:123
BUF_SPU_DVD
#define BUF_SPU_DVD
Definition: buffer.h:286
dxr3_spudec_s::pci_cur
pci_node_t pci_cur
Definition: dxr3_decode_spu.c:119
em8300_button_t::bottom
int bottom
Definition: em8300.h:76
dxr3.h
xine_stream_s::video_driver
vo_driver_t * video_driver
Definition: xine_internal.h:157
dxr3_flush
static void dxr3_flush(video_decoder_t *this_gen)
Definition: dxr3_decode_video.c:587
dxr3_spudec_decode_data
static void dxr3_spudec_decode_data(spu_decoder_t *this_gen, buf_element_t *buf)
Definition: dxr3_decode_spu.c:250
xine_fast_memcpy
void *(* xine_fast_memcpy)(void *to, const void *from, size_t len)
Definition: memcpy.c:60
dxr3_scr_s::last_pts
uint32_t last_pts
Definition: dxr3_scr.h:35
xine_event_t
Definition: xine.h:1923
dxr3_dispose
static void dxr3_dispose(video_decoder_t *this_gen)
Definition: dxr3_decode_video.c:607
dxr3_spudec_init_plugin
void * dxr3_spudec_init_plugin(xine_t *xine, const void *data)
Definition: dxr3_decode_spu.c:166
dxr3_scr_s
Definition: dxr3_scr.h:25
dxr3_scr_set_speed
static int dxr3_scr_set_speed(scr_plugin_t *scr, int speed)
Definition: dxr3_scr.c:188
xine_s::clock
metronom_clock_t * clock
Definition: xine_internal.h:97
buf_element_s::decoder_info
uint32_t decoder_info[5]
Definition: buffer.h:353
dxr3_spudec_s::button_filter
int button_filter
Definition: dxr3_decode_spu.c:118
dxr3_spu_stream_state_s::parse
int parse
Definition: dxr3_decode_spu.c:88
encoder_data_s
Definition: video_out_dxr3.h:138
dxr3_decoder_s::afd_code
int afd_code
Definition: dxr3_decode_video.c:112
dxr3_decoder_s::dts_offset
unsigned int dts_offset[3]
Definition: dxr3_decode_video.c:118
xine_format_change_data_t::aspect
int aspect
Definition: xine.h:1993
em8300_button_t
Definition: em8300.h:72
ENC_FAME
@ ENC_FAME
Definition: video_out_dxr3.h:42
dxr3_spudec_s::event_queue
xine_event_queue_t * event_queue
Definition: dxr3_decode_spu.c:110
xine_event_new_queue
xine_event_queue_t * xine_event_new_queue(xine_stream_t *s)
Definition: events.c:330
dxr3_spu_setpalette
#define dxr3_spu_setpalette(fd, arg)
Definition: video_out_dxr3.h:179
dxr3_spudec_class_s::spu_decoder_class
spu_decoder_class_t spu_decoder_class
Definition: dxr3_decode_spu.c:100
pci_node_s
Definition: dxr3_decode_spu.c:93
video_out_dxr3.h
metronom_clock_s::register_scr
int(* register_scr)(metronom_clock_t *self, scr_plugin_t *scr)
Definition: metronom.h:261
dxr3_spudec_s::anamorphic
int anamorphic
Definition: dxr3_decode_spu.c:123
default_video_decoder_class_dispose
#define default_video_decoder_class_dispose
Definition: video_decoder.h:71
SPU_DVD_SUBTYPE_NAV
#define SPU_DVD_SUBTYPE_NAV
Definition: buffer.h:540
em8300_button_t::right
int right
Definition: em8300.h:78
dxr3_scr_s::scanning
int scanning
Definition: dxr3_scr.h:36
xine_event_get
xine_event_t * xine_event_get(xine_event_queue_t *queue)
Definition: events.c:56
spu_decoder_s
Definition: spu_decoder.h:74
lprintf
#define lprintf(...)
Definition: xineutils.h:620
dxr3_spudec_update_nav
static void dxr3_spudec_update_nav(dxr3_spudec_t *this)
Definition: dxr3_decode_spu.c:146
dxr3_decoder_s::resync_window
int resync_window
Definition: dxr3_decode_video.c:122
dxr3_driver_s::class
dxr3_driver_class_t * class
Definition: video_out_dxr3.h:82
dxr3_discontinuity
static void dxr3_discontinuity(video_decoder_t *this_gen)
Definition: dxr3_decode_video.c:582
pci_node_s::vpts
uint64_t vpts
Definition: dxr3_decode_spu.c:95
config_values_s::register_num
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
dxr3_video_init_plugin
void * dxr3_video_init_plugin(xine_t *xine, const void *data)
Definition: dxr3_decode_video.c:156
XINE_EVENT_INPUT_BUTTON_FORCE
#define XINE_EVENT_INPUT_BUTTON_FORCE
Definition: xine.h:1850
XINE_STREAM_INFO_VIDEO_HEIGHT
#define XINE_STREAM_INFO_VIDEO_HEIGHT
Definition: xine.h:1008
dxr3_scr_init
dxr3_scr_t * dxr3_scr_init(xine_t *xine)
Definition: dxr3_scr.c:72
METRONOM_ADJ_VPTS_OFFSET
#define METRONOM_ADJ_VPTS_OFFSET
Definition: metronom.h:173
dxr3_video_setpts
#define dxr3_video_setpts(fd, arg)
Definition: video_out_dxr3.h:177
dxr3_open_plugin
static video_decoder_t * dxr3_open_plugin(video_decoder_class_t *class_gen, xine_stream_t *stream)
Definition: dxr3_decode_video.c:177
dxr3_spu_setpts
#define dxr3_spu_setpts(fd, arg)
Definition: video_out_dxr3.h:178
dxr3_scr_adjust
static void dxr3_scr_adjust(scr_plugin_t *scr, int64_t vpts)
Definition: dxr3_scr.c:164
get_duration
static int get_duration(dxr3_decoder_t *this)
Definition: dxr3_decode_video.c:654
em8300_button_t::contrast
int contrast
Definition: em8300.h:74
dxr3_decoder_s::video_decoder
video_decoder_t video_decoder
Definition: dxr3_decode_video.c:86
LOG_BTN
#define LOG_BTN
Definition: dxr3_decode_spu.c:48
dxr3_driver_class_s::xine
xine_t * xine
Definition: video_out_dxr3.h:72
dxr3_spu_stream_state_s::spu_length
int spu_length
Definition: dxr3_decode_spu.c:85
dxr3_decoder_t
struct dxr3_decoder_s dxr3_decoder_t
xine_format_change_data_t::height
int height
Definition: xine.h:1990
xine_format_change_data_t::pan_scan
int pan_scan
Definition: xine.h:1994
dxr3_scr_init
dxr3_scr_t * dxr3_scr_init(xine_t *xine)
Definition: dxr3_scr.c:72
ENC_RTE
@ ENC_RTE
Definition: video_out_dxr3.h:42
dxr3_decoder_s::have_header_info
int have_header_info
Definition: dxr3_decode_video.c:97
dxr3_spudec_clear_nav_list
static void dxr3_spudec_clear_nav_list(dxr3_spudec_t *this)
Definition: dxr3_decode_spu.c:135
user_data
static void user_data(vdpau_mpeg4_decoder_t *this_gen, uint8_t *buffer, int len)
Definition: vdpau_mpeg4.c:695
llprintf
#define llprintf(cat,...)
Definition: xineutils.h:642
em8300_register_t::reg
int reg
Definition: em8300.h:39
buf_element_s::pts
int64_t pts
Definition: buffer.h:345
vo_frame_s::height
int height
Definition: video_out.h:138
CONF_KEY
#define CONF_KEY
Definition: dxr3.h:33
dxr3_frame_s::real_base
uint8_t * real_base[3]
Definition: video_out_dxr3.h:134
dxr3_scr_exit
static void dxr3_scr_exit(scr_plugin_t *scr)
Definition: dxr3_scr.c:230
xine_stream_s::metronom
metronom_t * metronom
Definition: xine_internal.h:129
XINE_STREAM_INFO_VIDEO_HAS_STILL
#define XINE_STREAM_INFO_VIDEO_HAS_STILL
Definition: xine.h:1028
dxr3_decoder_s::last_aspect_code
int last_aspect_code
Definition: dxr3_decode_video.c:116
NULL
NULL
Definition: xine_plugin.c:78
dxr3_decoder_s::repeat_first_field
int repeat_first_field
Definition: dxr3_decode_video.c:104
xine_event_send
void xine_event_send(xine_stream_t *s, const xine_event_t *event)
Definition: events.c:194
dxr3_update_enhanced_mode
static void dxr3_update_enhanced_mode(void *this_gen, xine_cfg_entry_t *entry)
Definition: dxr3_decode_video.c:788
xine_event_dispose_queue
void xine_event_dispose_queue(xine_event_queue_t *queue)
Definition: events.c:379
dxr3_spudec_s::clut
uint32_t clut[16]
Definition: dxr3_decode_spu.c:116
FORCE_DURATION_WINDOW_SIZE
#define FORCE_DURATION_WINDOW_SIZE
Definition: dxr3_decode_video.c:66
XINE_VERBOSITY_LOG
#define XINE_VERBOSITY_LOG
Definition: xine.h:425
_x_assert
#define _x_assert(exp)
Definition: xineutils.h:550
XINE_IMGFMT_DXR3
#define XINE_IMGFMT_DXR3
Definition: dxr3.h:38
dxr3_decoder_class_s::video_decoder_class
video_decoder_class_t video_decoder_class
Definition: dxr3_decode_video.c:80
dxr3_present
int dxr3_present(xine_stream_t *stream)
Definition: video_out_dxr3.c:123
dxr3_decoder_s::last_vpts
int64_t last_vpts
Definition: dxr3_decode_video.c:126
vo_frame_s::bad_frame
int bad_frame
Definition: video_out.h:111
metronom_s::get_option
int64_t(* get_option)(metronom_t *self, int option)
Definition: metronom.h:154
dxr3_frame_s::vo_frame
vo_frame_t vo_frame
Definition: video_out_dxr3.h:130
dxr3_spudec_s::spu_stream_state
dxr3_spu_stream_state_t spu_stream_state[32]
Definition: dxr3_decode_spu.c:115
dxr3_decoder_s::clock
metronom_clock_t * clock
Definition: dxr3_decode_video.c:91
dxr3_spudec_s::spu_decoder
spu_decoder_t spu_decoder
Definition: dxr3_decode_spu.c:106
dxr3_spudec_discontinuity
static void dxr3_spudec_discontinuity(spu_decoder_t *this_gen)
Definition: dxr3_decode_spu.c:522
xine_s::config
config_values_t * config
Definition: xine_internal.h:82
dxr3_update_panscan
static void dxr3_update_panscan(void *this_gen, xine_cfg_entry_t *entry)
Definition: dxr3_decode_video.c:778
width
unsigned int width
Definition: gfontrle.c:4
bswap_32
static always_inline uint32_t bswap_32(uint32_t x)
Definition: ffmpeg_bswap.h:129
_x_stream_info_set
void _x_stream_info_set(xine_stream_t *s, int info, int value)
Definition: info_helper.c:79
xine_event_t::data
void * data
Definition: xine.h:1926
_
#define _(String)
Definition: vcdplayer.h:39
dxr3_swab_clut
static void dxr3_swab_clut(int *clut)
Definition: dxr3_decode_spu.c:158
dxr3_spu_stream_state_s::spu_end
int spu_end
Definition: dxr3_decode_spu.c:87
BUF_SPECIAL_SPU_DVD_SUBTYPE
#define BUF_SPECIAL_SPU_DVD_SUBTYPE
Definition: buffer.h:534
config_values_s
Definition: configfile.h:83
dxr3_decoder_s::fd_control
int fd_control
Definition: dxr3_decode_video.c:94
dxr3_spudec_interact_info
static int dxr3_spudec_interact_info(spu_decoder_t *this_gen, void *data)
Definition: dxr3_decode_spu.c:561
vo_frame_s::duration
int duration
Definition: video_out.h:112
BUF_FLAG_SPECIAL
#define BUF_FLAG_SPECIAL
Definition: buffer.h:395
dxr3_driver_s
Definition: video_out_dxr3.h:80
parse_mpeg_header
static void parse_mpeg_header(dxr3_decoder_t *this, uint8_t *buffer)
Definition: dxr3_decode_video.c:627
dxr3_scr.h
metronom_s::set_option
void(* set_option)(metronom_t *self, int option, int64_t value)
Definition: metronom.h:153
xine_event_queue_s
Definition: xine_internal.h:107
dxr3_spudec_class_s::instance
int instance
Definition: dxr3_decode_spu.c:102
group_dxr3.h
frame_format_change
static void frame_format_change(dxr3_decoder_t *this)
Definition: dxr3_decode_video.c:738
MVCOMMAND_PAUSE
#define MVCOMMAND_PAUSE
Definition: em8300.h:202
config_values_s::register_range
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
EM8300_IOCTL_SCR_SET
#define EM8300_IOCTL_SCR_SET
Definition: em8300.h:107
dxr3_decoder_s::afd_smart_change
int afd_smart_change
Definition: dxr3_decode_video.c:111
dxr3_scr_s::offset
int64_t offset
Definition: dxr3_scr.h:34
em8300_button_t::color
int color
Definition: em8300.h:73
metronom_clock_s::get_current_time
int64_t(* get_current_time)(metronom_clock_t *self)
Definition: metronom.h:239
spu_decoder_class_s
Definition: spu_decoder.h:42
dxr3_decoder_s::enhanced_mode
int enhanced_mode
Definition: dxr3_decode_video.c:121
_x_meta_info_set_utf8
void _x_meta_info_set_utf8(xine_stream_t *s, int info, const char *str)
Definition: info_helper.c:341
dxr3_decoder_s::avg_duration
int avg_duration
Definition: dxr3_decode_video.c:128
RESYNC_WINDOW_SIZE
#define RESYNC_WINDOW_SIZE
Definition: dxr3_decode_video.c:60
VO_BOTH_FIELDS
#define VO_BOTH_FIELDS
Definition: video_out.h:293
dxr3_spudec_class_t
struct dxr3_spudec_class_s dxr3_spudec_class_t
buf_element_s
Definition: buffer.h:337
dxr3_scr_s::priority
int priority
Definition: dxr3_scr.h:33
dxr3_decoder_s::width
int width
Definition: dxr3_decode_video.c:99
PAN_SCAN_WINDOW_SIZE
#define PAN_SCAN_WINDOW_SIZE
Definition: dxr3_decode_video.c:56
VO_PAN_SCAN_FLAG
#define VO_PAN_SCAN_FLAG
Definition: video_out.h:294
dxr3_scr_s::mutex
pthread_mutex_t mutex
Definition: dxr3_scr.h:27
dxr3_decoder_s::stream
xine_stream_t * stream
Definition: dxr3_decode_video.c:88
XINE_VERBOSITY_DEBUG
#define XINE_VERBOSITY_DEBUG
Definition: xine.h:426
xine_stream_s::video_out
xine_video_port_t *volatile video_out
Definition: xine_internal.h:135
dxr3_scr_t
struct dxr3_scr_s dxr3_scr_t
buffer.h
dxr3_decoder_s::last_height
int last_height
Definition: dxr3_decode_video.c:115
dxr3_decode_data
static void dxr3_decode_data(video_decoder_t *this_gen, buf_element_t *buf)
Definition: dxr3_decode_video.c:268
dxr3_decoder_s::frame_rate_code
int frame_rate_code
Definition: dxr3_decode_video.c:103
em8300_register_t
Definition: em8300.h:38
LOG_VID
#define LOG_VID
Definition: dxr3_decode_video.c:45
dxr3_decoder_class_t
struct dxr3_decoder_class_s dxr3_decoder_class_t
dxr3_decoder_s::force_duration_window
int force_duration_window
Definition: dxr3_decode_video.c:127
video_decoder_class_s
Definition: video_decoder.h:41
dxr3_spudec_open_plugin
static spu_decoder_t * dxr3_spudec_open_plugin(spu_decoder_class_t *class_gen, xine_stream_t *stream)
Definition: dxr3_decode_spu.c:187
dxr3_spu_stream_state_s::bytes_passed
int bytes_passed
Definition: dxr3_decode_spu.c:89
dxr3_scr_s::fd_control
int fd_control
Definition: dxr3_scr.h:31
XINE_STREAM_INFO_FRAME_DURATION
#define XINE_STREAM_INFO_FRAME_DURATION
Definition: xine.h:1015
dxr3_reset
static void dxr3_reset(video_decoder_t *this_gen)
Definition: dxr3_decode_video.c:575
default_spu_decoder_class_dispose
#define default_spu_decoder_class_dispose
Definition: spu_decoder.h:72
xine_video_port_s::open
void(* open)(xine_video_port_t *self, xine_stream_t *stream)
Definition: video_out.h:183
vo_frame_s::format
int format
Definition: video_out.h:140
XINE_META_INFO_VIDEOCODEC
#define XINE_META_INFO_VIDEOCODEC
Definition: xine.h:1068
height
unsigned int height
Definition: gfontrle.c:5
MVCOMMAND_SYNC
#define MVCOMMAND_SYNC
Definition: em8300.h:205
xine_cfg_entry_s
Definition: xine.h:1632
xine_cfg_entry_s::num_value
int num_value
Definition: xine.h:1653
dxr3_spudec_reset
static void dxr3_spudec_reset(spu_decoder_t *this_gen)
Definition: dxr3_decode_spu.c:510
dxr3_spudec_class_s
Definition: dxr3_decode_spu.c:99
xine_open_cloexec
int xine_open_cloexec(const char *name, int flags)
Definition: utils.c:815
dxr3_driver_s::top_bar
int top_bar
Definition: video_out_dxr3.h:113
dxr3_decoder_class_s::instance
int instance
Definition: dxr3_decode_video.c:82
dxr3_update_sync_mode
static void dxr3_update_sync_mode(void *this_gen, xine_cfg_entry_t *entry)
Definition: dxr3_decode_video.c:783
mode
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
dxr3_decoder_s::force_pan_scan
int force_pan_scan
Definition: dxr3_decode_video.c:107
dxr3_spudec_s::pci_lock
pthread_mutex_t pci_lock
Definition: dxr3_decode_spu.c:120
xine_format_change_data_t::width
int width
Definition: xine.h:1989
dxr3_spudec_s::stream
xine_stream_t * stream
Definition: dxr3_decode_spu.c:108
metronom_s
Definition: metronom.h:71
_x_stream_info_get
uint32_t _x_stream_info_get(xine_stream_t *s, int info)
Definition: info_helper.c:100
METRONOM_AV_OFFSET
#define METRONOM_AV_OFFSET
Definition: metronom.h:172
EM8300_IOCTL_SCR_GET
#define EM8300_IOCTL_SCR_GET
Definition: em8300.h:106
dxr3_mvcommand
static int dxr3_mvcommand(int fd_control, int command)
Definition: dxr3_scr.c:60
dxr3_decoder_s::sync_every_frame
int sync_every_frame
Definition: dxr3_decode_video.c:119
dxr3_spudec_copy_nav_to_btn
static int dxr3_spudec_copy_nav_to_btn(dxr3_spudec_t *this, int32_t mode, em8300_button_t *btn)
Definition: dxr3_decode_spu.c:647
vo_frame_s::draw
int(* draw)(vo_frame_t *vo_img, xine_stream_t *stream)
Definition: video_out.h:91
bswap.h
buf_element_s::content
unsigned char * content
Definition: buffer.h:341
dxr3_scr_get_current
static int64_t dxr3_scr_get_current(scr_plugin_t *scr)
Definition: dxr3_scr.c:143
LOG_PTS
#define LOG_PTS
Definition: dxr3_decode_video.c:46
dxr3_spudec_s
Definition: dxr3_decode_spu.c:105
MVCOMMAND_START
#define MVCOMMAND_START
Definition: em8300.h:203
dxr3_decoder_s::sequence_open
int sequence_open
Definition: dxr3_decode_video.c:98
xine_internal.h
vo_frame_s::vpts
int64_t vpts
Definition: video_out.h:110
dxr3_spudec_s::devnum
int devnum
Definition: dxr3_decode_spu.c:112
dxr3_scr_s::xine
xine_t * xine
Definition: dxr3_scr.h:29
BUF_SPECIAL_ASPECT
#define BUF_SPECIAL_ASPECT
Definition: buffer.h:479
buf_element_s::decoder_flags
uint32_t decoder_flags
Definition: buffer.h:350
dxr3_mvcommand
static int dxr3_mvcommand(int fd_control, int command)
Definition: dxr3_decode_video.c:144
dxr3_scr_update_priority
static void dxr3_scr_update_priority(void *this_gen, xine_cfg_entry_t *entry)
Definition: dxr3_scr.c:242
config.h
dxr3_spu_stream_state_s
Definition: dxr3_decode_spu.c:84
dxr3_decoder_s::last_width
int last_width
Definition: dxr3_decode_video.c:114
dxr3_decoder_s::devnum
int devnum
Definition: dxr3_decode_video.c:93
xine_event_t::type
int type
Definition: xine.h:1929
dxr3_decoder_s::aspect_code
int aspect_code
Definition: dxr3_decode_video.c:102
dxr3_spudec_s::fd_spu
int fd_spu
Definition: dxr3_decode_spu.c:113
dxr3_driver_s::fd_video
int fd_video
Definition: video_out_dxr3.h:87
vo_frame_s
Definition: video_out.h:59
dxr3_spu_stream_state_s::spu_ctrl
int spu_ctrl
Definition: dxr3_decode_spu.c:86
dxr3_decoder_s::scr
dxr3_scr_t * scr
Definition: dxr3_decode_video.c:89
dxr3_spu_stream_state_t
struct dxr3_spu_stream_state_s dxr3_spu_stream_state_t
LOG_PTS
#define LOG_PTS
Definition: dxr3_decode_spu.c:46
buf_element_s::type
uint32_t type
Definition: buffer.h:362
em8300_register_t::microcode_register
int microcode_register
Definition: em8300.h:41
xine_format_change_data_t
Definition: xine.h:1988
dxr3_scr_s::scr_plugin
scr_plugin_t scr_plugin
Definition: dxr3_scr.h:26
dxr3_decoder_s::use_panscan
int use_panscan
Definition: dxr3_decode_video.c:109
DEFAULT_BUFFER_SIZE
#define DEFAULT_BUFFER_SIZE
Definition: dxr3_mpeg_encoders.c:62
MVCOMMAND_FLUSHBUF
#define MVCOMMAND_FLUSHBUF
Definition: em8300.h:206
vo_frame_s::width
int width
Definition: video_out.h:138
dxr3_spudec_process_nav
static void dxr3_spudec_process_nav(dxr3_spudec_t *this)
Definition: dxr3_decode_spu.c:597
dxr3_spudec_s::dxr3_vo
dxr3_driver_t * dxr3_vo
Definition: dxr3_decode_spu.c:109
vo_frame_s::base
uint8_t * base[3]
Definition: video_out.h:116
xine_event_free
void xine_event_free(xine_event_t *event)
Definition: events.c:175
dxr3_decoder_s::force_aspect
int force_aspect
Definition: dxr3_decode_video.c:106
dxr3_spudec_s::menu
int menu
Definition: dxr3_decode_spu.c:117
MAX_SPU_STREAMS
#define MAX_SPU_STREAMS
Definition: dxr3_decode_spu.c:70
pci_node_s::pci
pci_t pci
Definition: dxr3_decode_spu.c:94
METRONOM_PREBUFFER
#define METRONOM_PREBUFFER
Definition: metronom.h:177
dxr3_spu_button
#define dxr3_spu_button(fd, arg)
Definition: video_out_dxr3.h:180
dxr3_scr_get_priority
static int dxr3_scr_get_priority(scr_plugin_t *scr)
Definition: dxr3_scr.c:118
XINE_IMGFMT_YUY2
#define XINE_IMGFMT_YUY2
Definition: xine.h:495
dxr3_scr_s::sync
int sync
Definition: dxr3_scr.h:37
CONF_NAME
#define CONF_NAME
Definition: dxr3.h:34
dxr3_spudec_t
struct dxr3_spudec_s dxr3_spudec_t
dxr3_spudec_dispose
static void dxr3_spudec_dispose(spu_decoder_t *this_gen)
Definition: dxr3_decode_spu.c:531
dxr3_decoder_s::fd_video
int fd_video
Definition: dxr3_decode_video.c:95
SKIP_TOLERANCE
#define SKIP_TOLERANCE
Definition: dxr3_decode_video.c:63
xprintf
#define xprintf(xine, verbose,...)
Definition: xineutils.h:664
LOG_SPU
#define LOG_SPU
Definition: dxr3_decode_spu.c:47
N_
#define N_(String)
Definition: xineintl.h:47
vo_frame_s::free
void(* free)(vo_frame_t *vo_img)
Definition: video_out.h:100
dxr3_spudec_set_button
static void dxr3_spudec_set_button(spu_decoder_t *this_gen, int32_t button, int32_t mode)
Definition: dxr3_decode_spu.c:572
dxr3_update_correct_durations
static void dxr3_update_correct_durations(void *this_gen, xine_cfg_entry_t *entry)
Definition: dxr3_decode_video.c:793
XINE_EVENT_FRAME_FORMAT_CHANGE
#define XINE_EVENT_FRAME_FORMAT_CHANGE
Definition: xine.h:1818
BUF_FLAG_PREVIEW
#define BUF_FLAG_PREVIEW
Definition: buffer.h:380