Go to the documentation of this file.
2 # define AV_VERSION_INT(a,b,c) 0x7FFFFFFF
8 {
BUF_VIDEO_WMV7, AV_CODEC_ID_WMV1,
"MS Windows Media Video 7 (ffmpeg)" },
9 {
BUF_VIDEO_WMV8, AV_CODEC_ID_WMV2,
"MS Windows Media Video 8 (ffmpeg)" },
10 {
BUF_VIDEO_WMV9, AV_CODEC_ID_WMV3,
"MS Windows Media Video 9 (ffmpeg)" },
11 {
BUF_VIDEO_VC1, AV_CODEC_ID_VC1,
"MS Windows Media Video VC-1 (ffmpeg)" },
13 {
BUF_VIDEO_XVID, AV_CODEC_ID_MPEG4,
"ISO MPEG-4 (XviD) (ffmpeg)" },
15 {
BUF_VIDEO_3IVX, AV_CODEC_ID_MPEG4,
"ISO MPEG-4 (3ivx) (ffmpeg)" },
25 {
BUF_VIDEO_IV31, AV_CODEC_ID_INDEO3,
"Indeo Video 3.1 (ffmpeg)" },
26 {
BUF_VIDEO_IV32, AV_CODEC_ID_INDEO3,
"Indeo Video 3.2 (ffmpeg)" },
40 {
BUF_VIDEO_MSVC, AV_CODEC_ID_MSVIDEO1,
"Microsoft Video 1 (ffmpeg)" },
42 {
BUF_VIDEO_RPZA, AV_CODEC_ID_RPZA,
"Apple Quicktime Video/RPZA (ffmpeg)" },
44 {
BUF_VIDEO_ROQ, AV_CODEC_ID_ROQ,
"Id Software RoQ (ffmpeg)" },
47 {
BUF_VIDEO_VQA, AV_CODEC_ID_WS_VQA,
"Westwood Studios VQA (ffmpeg)" },
51 {
BUF_VIDEO_SMC, AV_CODEC_ID_SMC,
"Apple Quicktime Graphics/SMC (ffmpeg)" },
54 {
BUF_VIDEO_VMD, AV_CODEC_ID_VMDVIDEO,
"Sierra VMD Video (ffmpeg)" },
61 {
BUF_VIDEO_QTRLE, AV_CODEC_ID_QTRLE,
"Apple Quicktime Animation/RLE (ffmpeg)" },
71 {
BUF_VIDEO_XL, AV_CODEC_ID_VIXL,
"Miro/Pinnacle VideoXL (ffmpeg)" },
72 {
BUF_VIDEO_RT21, AV_CODEC_ID_INDEO2,
"Indeo/RealTime 2 (ffmpeg)" },
77 {
BUF_VIDEO_ALGMM, AV_CODEC_ID_MMVIDEO,
"American Laser Games MM (ffmpeg)" },
78 {
BUF_VIDEO_ZMBV, AV_CODEC_ID_ZMBV,
"Zip Motion Blocks Video (ffmpeg)" },
81 {
BUF_VIDEO_KMVC, AV_CODEC_ID_KMVC,
"Karl Morton's Video Codec (ffmpeg)" },
84 {
BUF_VIDEO_VMNC, AV_CODEC_ID_VMNC,
"VMware Screen Codec (ffmpeg)" },
Definition: xine_internal.h:80
#define XINE_STREAM_INFO_VIDEO_WIDTH
Definition: xine.h:1007
#define XINE_IMGFMT_YV12
Definition: xine.h:494
int pitches[3]
Definition: video_out.h:117
unsigned char b
Definition: buffer.h:577
xine_bmiheader bih
Definition: ff_video_decoder.c:125
void mpeg_parser_dispose(mpeg_parser_t *parser)
Definition: ff_mpeg_parser.c:75
uint8_t enable_dri
Definition: ff_video_decoder.c:91
static int ff_check_extradata(ff_video_decoder_t *this, unsigned int codec_type, buf_element_t *buf)
Definition: ff_video_decoder.c:1571
int32_t size
Definition: buffer.h:343
xine_t * xine
Definition: xine_internal.h:126
int(* guarded_render)(vo_frame_t *frame_gen)
Definition: accel_vaapi.h:109
#define VO_INTERLACED_FLAG
Definition: video_out.h:295
Definition: xineutils.h:64
Definition: video_decoder.h:73
static int ff_vc1_find_header(ff_video_decoder_t *this, buf_element_t *buf)
Definition: ff_video_decoder.c:1513
#define XINE_STREAM_INFO_VIDEO_RATIO
Definition: xine.h:1009
AVFrame * av_frame
Definition: ff_video_decoder.c:135
Definition: xine_internal.h:123
#define VO_GET_FRAME_MAY_FAIL
Definition: video_out.h:299
#define BUF_VIDEO_VP31
Definition: buffer.h:113
#define XFF_ALLOC_CONTEXT()
Definition: ffmpeg_compat.h:209
#define pp_mode
Definition: ffmpeg_compat.h:51
#define BUF_SPECIAL_PALETTE
Definition: buffer.h:462
#define BUF_VIDEO_ULTI
Definition: buffer.h:173
static int guarded_render(vo_frame_t *frame_gen)
Definition: video_out_vaapi.c:357
int64_t pts
Definition: video_out.h:109
#define VO_CAP_VAAPI
Definition: video_out.h:318
#define BUF_FLAG_FRAME_END
Definition: buffer.h:371
#define BUF_VIDEO_RV30
Definition: buffer.h:141
int8_t skip_loop_filter_enum
Definition: ff_video_decoder.c:89
const decoder_info_t dec_info_ffmpeg_wmv9
Definition: ff_video_decoder.c:3095
@ STATE_FRAME_SENT
Definition: ff_video_decoder.c:196
@ STATE_RESET
Definition: ff_video_decoder.c:193
#define BUF_VIDEO_I263
Definition: buffer.h:103
#define BUF_VIDEO_HUFFYUV
Definition: buffer.h:149
#define BUF_FLAG_FRAMERATE
Definition: buffer.h:389
pthread_once_t once_control
Definition: ffmpeg_decoder.c:42
#define DLIST_ADD_TAIL(n, l)
Definition: xineutils.h:106
#define BUF_VIDEO_RPZA
Definition: buffer.h:120
#define BUF_VIDEO_MSMPEG4_V1
Definition: buffer.h:127
#define BUF_VIDEO_WMV9
Definition: buffer.h:144
#define VO_CAP_CROP
Definition: video_out.h:312
#define BUF_FLAG_FRAME_START
Definition: buffer.h:370
#define BUF_FLAG_HEADER
Definition: buffer.h:375
int crop_bottom
Definition: video_out.h:129
#define XFF_PACKET_UNREF
Definition: ffmpeg_compat.h:238
#define IMGFMT_VAAPI_HEVC_MAIN10
Definition: accel_vaapi.h:98
VAContextID va_context_id
Definition: accel_vaapi.h:54
int aspect_ratio_prio
Definition: ff_video_decoder.c:151
#define BUF_VIDEO_H261
Definition: buffer.h:168
#define IMGFMT_VAAPI_H263
Definition: accel_vaapi.h:95
#define BUF_VIDEO_VP6
Definition: buffer.h:156
#define BUF_FLAG_ASPECT
Definition: buffer.h:405
#define IMGFMT_VAAPI_H264
Definition: accel_vaapi.h:96
#define IMGFMT_VAAPI_MPEG2_MOCO
Definition: accel_vaapi.h:93
void *(* xine_fast_memcpy)(void *to, const void *from, size_t len)
Definition: memcpy.c:60
static void ffsf_delete(ff_saved_frame_t *ffsf)
Definition: ff_video_decoder.c:378
#define BUF_VIDEO_XL
Definition: buffer.h:175
uint32_t decoder_info[5]
Definition: buffer.h:353
#define BUF_VIDEO_ZMBV
Definition: buffer.h:181
#define BUF_VIDEO_AASC
Definition: buffer.h:169
static void dri_cb(void *user_data, xine_cfg_entry_t *entry)
Definition: ff_video_decoder.c:1127
void(* unlock_vaapi)(vo_frame_t *frame_gen)
Definition: accel_vaapi.h:104
pthread_mutex_t ffmpeg_lock
Definition: ffmpeg_decoder.c:43
#define MM_ACCEL_X86_MMX
Definition: xineutils.h:164
int full2mpeg
Definition: ff_video_decoder.c:170
#define BUF_VIDEO_SMACKER
Definition: buffer.h:183
const decoder_info_t dec_info_ffmpeg_wmv8
Definition: ff_video_decoder.c:3090
static void ff_handle_preview_buffer(ff_video_decoder_t *this, buf_element_t *buf)
Definition: ff_video_decoder.c:1603
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
const char * identifier
short human readable identifier for this plugin class
Definition: video_decoder.h:51
xine_stream_t * stream
Definition: ff_video_decoder.c:104
int size
Definition: ff_video_decoder.c:128
uint8_t decoder_init_mode
Definition: ff_video_decoder.c:115
rgb2yuy2_t * rgb2yuy2
Definition: ff_video_decoder.c:174
@ PIX_FMT_YUV420P
Definition: ff_dvdata.h:37
uint64_t pts_tag_mask
Definition: ff_video_decoder.c:107
int slice_offset_pos
Definition: ff_video_decoder.c:133
AVPaletteControl palette_control
Definition: ff_video_decoder.c:164
#define XFF_EDGE_WIDTH()
Definition: ffmpeg_compat.h:194
enum ff_video_decoder_s::@6 state
#define BUF_VIDEO_FLASHSV
Definition: buffer.h:186
void rgb2yuy2_slice(rgb2yuy2_t *rgb2yuy2, const uint8_t *restrict in, int ipitch, uint8_t *restrict out, int opitch, int width, int height)
Definition: color.c:2063
void rgb2yuy2_palette(rgb2yuy2_t *rgb2yuy2, const uint8_t *pal, int num_colors, int bits_per_pixel)
Definition: color.c:1947
static void ff_check_bufsize(ff_video_decoder_t *this, int size)
Definition: ff_video_decoder.c:1503
int(* profile_from_imgfmt)(vo_frame_t *frame_gen, unsigned img_fmt)
Definition: accel_vaapi.h:107
#define BUF_VIDEO_KMVC
Definition: buffer.h:185
#define BUF_SPECIAL_DECODER_CONFIG
Definition: buffer.h:489
void init_once_routine(void)
Definition: ffmpeg_decoder.c:45
#define BUF_VIDEO_MSMPEG4_V3
Definition: buffer.h:95
int crop_right
Definition: video_out.h:129
static void ff_convert_frame(ff_video_decoder_t *this, vo_frame_t *img, AVFrame *av_frame)
Definition: ff_video_decoder.c:1281
#define BUF_VIDEO_FLI
Definition: buffer.h:124
static void thread_count_cb(void *user_data, xine_cfg_entry_t *entry)
Definition: ff_video_decoder.c:1109
void(* dispose)(video_decoder_class_t *this_gen)
Definition: video_decoder.h:68
static int get_buffer(AVCodecContext *context, AVFrame *av_frame)
Definition: ff_video_decoder.c:540
AVCodecContext * context
Definition: ff_video_decoder.c:137
int top_field_first
Definition: video_out.h:120
uint32_t(* get_capabilities)(xine_video_port_t *self)
Definition: video_out.h:178
@ STATE_READING_DATA
Definition: ff_video_decoder.c:195
#define lprintf(...)
Definition: xineutils.h:620
uint64_t pts_tag
Definition: ff_video_decoder.c:108
#define BUF_VIDEO_WMV8
Definition: buffer.h:109
#define IMGFMT_VAAPI_WMV3
Definition: accel_vaapi.h:100
#define XINE_STREAM_INFO_VIDEO_HANDLED
Definition: xine.h:1014
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
#define BUF_VIDEO_DUCKTM1
Definition: buffer.h:123
#define BUF_VIDEO_H263
Definition: buffer.h:114
double aspect_ratio
Definition: ff_video_decoder.c:150
#define XINE_STREAM_INFO_VIDEO_HEIGHT
Definition: xine.h:1008
static void ff_flush_internal(ff_video_decoder_t *this, int display)
Definition: ff_video_decoder.c:2516
dlist_t ffsf_free
Definition: ff_video_decoder.c:158
static ff_saved_frame_t * ffsf_new(ff_video_decoder_t *this)
Definition: ff_video_decoder.c:350
void mpeg_parser_reset(mpeg_parser_t *parser)
Definition: ff_mpeg_parser.c:82
AVFrame * av_frame2
Definition: ff_video_decoder.c:136
#define BUF_VIDEO_WMV7
Definition: buffer.h:108
#define VIDEOBUFSIZE
Definition: ff_video_decoder.c:69
dlist_t ffsf_used
Definition: ff_video_decoder.c:158
static void ff_reset(video_decoder_t *this_gen)
Definition: ff_video_decoder.c:2703
Definition: ff_mpeg_parser.h:31
#define IMGFMT_VAAPI_MPEG2
Definition: accel_vaapi.h:91
#define BUF_VIDEO_QTRLE
Definition: buffer.h:121
#define BUF_VIDEO_WC3
Definition: buffer.h:137
#define BUF_VIDEO_RV40
Definition: buffer.h:146
#define pp_context
Definition: ffmpeg_compat.h:50
#define _X_BE_16(x)
Definition: bswap.h:40
Definition: accel_vaapi.h:72
static void user_data(vdpau_mpeg4_decoder_t *this_gen, uint8_t *buffer, int len)
Definition: vdpau_mpeg4.c:695
int64_t pts
Definition: buffer.h:345
#define AV_CODEC_FLAG2_FAST
Definition: ffmpeg_compat.h:250
static void init_video_codec(ff_video_decoder_t *this, unsigned int codec_type)
Definition: ff_video_decoder.c:886
int * slice_offset_table
Definition: ff_video_decoder.c:131
@ PIX_FMT_YUV411P
Definition: ff_dvdata.h:39
int height
Definition: video_out.h:138
#define IMGFMT_VAAPI_MPEG2_IDCT
Definition: accel_vaapi.h:92
#define BUF_VIDEO_NUV
Definition: buffer.h:184
xine_t * xine
Definition: ff_video_decoder.c:96
video_decoder_t video_decoder
Definition: ff_video_decoder.c:100
#define BUF_VIDEO_IDCIN
Definition: buffer.h:129
unsigned char * buf
Definition: ff_video_decoder.c:126
NULL
Definition: xine_plugin.c:78
void xine_event_send(xine_stream_t *s, const xine_event_t *event)
Definition: events.c:194
#define VO_CAP_COLOR_MATRIX
Definition: video_out.h:319
#define BUF_VIDEO_8BPS
Definition: buffer.h:160
Definition: ff_video_decoder.c:82
#define BUF_SPECIAL_STSD_ATOM
Definition: buffer.h:503
#define BUF_VIDEO_IV31
Definition: buffer.h:100
#define BUF_VIDEO_VMD
Definition: buffer.h:157
int crop_left
Definition: video_out.h:129
static void ff_decode_data(video_decoder_t *this_gen, buf_element_t *buf)
Definition: ff_video_decoder.c:2460
#define XINE_VERBOSITY_LOG
Definition: xine.h:425
static void ff_check_pts_tagging(ff_video_decoder_t *this, uint64_t pts)
Definition: ff_video_decoder.c:1812
uint32_t xine_mm_accel(void)
Definition: cpu_accel.c:390
int slice_offset_size
Definition: ff_video_decoder.c:132
static void dispose_video_class(video_decoder_class_t *this_gen)
Definition: ff_video_decoder.c:2977
static void _x_freep(void *ptr)
Definition: xineutils.h:263
#define XFF_FREE_FRAME(pp)
Definition: ffmpeg_compat.h:228
int bad_frame
Definition: video_out.h:111
uint8_t decoder_ok
Definition: ff_video_decoder.c:114
Definition: accel_vaapi.h:52
#define BUF_VIDEO_RT21
Definition: buffer.h:176
#define BUF_VIDEO_VP8
Definition: buffer.h:193
aspect_ratio
Definition: alterh264_decode.h:47
#define BUF_VIDEO_XVID
Definition: buffer.h:118
Definition: ff_dvdata.h:30
#define IMGFMT_VAAPI_VC1
Definition: accel_vaapi.h:99
Definition: xine_plugin.h:77
config_values_t * config
Definition: xine_internal.h:82
int progressive_frame
Definition: video_out.h:125
ff_vaapi_surface_t *(* get_vaapi_surface)(vo_frame_t *frame_gen)
Definition: accel_vaapi.h:110
#define XFF_ALLOC_FRAME()
Definition: ffmpeg_compat.h:227
unsigned int width
Definition: gfontrle.c:4
#define BUF_VIDEO_ASV1
Definition: buffer.h:161
void _x_stream_info_set(xine_stream_t *s, int info, int value)
Definition: info_helper.c:79
static const ff_codec_t ff_video_lookup[]
Definition: ff_video_list.h:4
static video_decoder_t * ff_video_open_plugin(video_decoder_class_t *class_gen, xine_stream_t *stream)
Definition: ff_video_decoder.c:2844
#define BUF_VIDEO_FPS1
Definition: buffer.h:177
#define _(String)
Definition: vcdplayer.h:39
int reported_video_step
Definition: ff_video_decoder.c:112
static int decode_video_wrapper(ff_video_decoder_t *this, AVFrame *av_frame, int *err, void *buf, size_t buf_size)
Definition: ff_video_decoder.c:1842
#define BUF_VIDEO_VQA
Definition: buffer.h:134
static void skip_loop_filter_enum_cb(void *user_data, xine_cfg_entry_t *entry)
Definition: ff_video_decoder.c:1103
VASurfaceID va_surface_id
Definition: accel_vaapi.h:74
#define MM_ACCEL_X86_3DNOW
Definition: xineutils.h:165
#define BUF_VIDEO_WNV1
Definition: buffer.h:174
Definition: configfile.h:83
int decode_attempts
Definition: ff_video_decoder.c:199
static void ff_init_mpeg12_mode(ff_video_decoder_t *this)
Definition: ff_video_decoder.c:1585
int duration
Definition: video_out.h:112
#define BUF_FLAG_SPECIAL
Definition: buffer.h:395
const struct vaapi_accel_funcs_s * f
Definition: accel_vaapi.h:118
unsigned char ctab[1024]
Definition: ff_video_decoder.c:171
int8_t choose_speed_over_accuracy
Definition: ff_video_decoder.c:90
#define VO_CAP_FULLRANGE
Definition: video_out.h:320
#define BUF_VIDEO_SMC
Definition: buffer.h:119
VAConfigID va_config_id
Definition: accel_vaapi.h:55
static int ff_handle_mpeg_sequence(ff_video_decoder_t *this, mpeg_parser_t *parser)
Definition: ff_video_decoder.c:1202
#define BUF_VIDEO_RV10
Definition: buffer.h:104
#define BUF_VIDEO_ASV2
Definition: buffer.h:162
int pix_fmt
Definition: ff_video_decoder.c:173
static const uint32_t supported_video_types[]
Definition: ff_video_list.h:90
static uint64_t ff_tag_pts(ff_video_decoder_t *this, uint64_t pts)
Definition: ff_video_decoder.c:1796
#define BUF_VIDEO_DV
Definition: buffer.h:111
static void init_postprocess(ff_video_decoder_t *this)
Definition: ff_video_decoder.c:1160
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 const char *const skip_loop_filter_enum_names[]
Definition: ff_video_decoder.c:756
int color_matrix
Definition: ff_video_decoder.c:170
void _x_meta_info_set_utf8(xine_stream_t *s, int info, const char *str)
Definition: info_helper.c:341
static void release_buffer(struct AVCodecContext *context, AVFrame *av_frame)
Definition: ff_video_decoder.c:407
#define VO_BOTH_FIELDS
Definition: video_out.h:293
#define BUF_VIDEO_DUCKTM2
Definition: buffer.h:178
#define BUF_VIDEO_QPEG
Definition: buffer.h:172
int pts_tag_counter
Definition: ff_video_decoder.c:109
#define BUF_VIDEO_VP5
Definition: buffer.h:155
#define BUF_VIDEO_TSCC
Definition: buffer.h:132
mpeg_parser_t * mpeg_parser
Definition: ff_video_decoder.c:148
int ffsf_total
Definition: ff_video_decoder.c:159
#define BUF_VIDEO_DIVX5
Definition: buffer.h:117
double frame_aspect_ratio
Definition: ff_mpeg_parser.h:53
#define BUF_MAJOR_MASK
Definition: buffer.h:61
#define XINE_VERBOSITY_DEBUG
Definition: xine.h:426
xine_video_port_t *volatile video_out
Definition: xine_internal.h:135
uint16_t width
Definition: ff_mpeg_parser.h:50
void(* yuv411_to_yv12)(const unsigned char *y_src, int y_src_pitch, unsigned char *y_dest, int y_dest_pitch, const unsigned char *u_src, int u_src_pitch, unsigned char *u_dest, int u_dest_pitch, const unsigned char *v_src, int v_src_pitch, unsigned char *v_dest, int v_dest_pitch, int width, int height)
Definition: color.c:99
#define VO_SET_FLAGS_CM(cm, flags)
Definition: video_out.h:304
Definition: xineutils.h:79
#define BUF_VIDEO_VC1
Definition: buffer.h:190
#define BUF_SPECIAL_RV_CHUNK_TABLE
Definition: buffer.h:563
static void ff_handle_buffer(ff_video_decoder_t *this, buf_element_t *buf)
Definition: ff_video_decoder.c:2139
Definition: video_decoder.h:41
int thread_count
Definition: ff_video_decoder.c:88
#define BUF_FLAG_STDHEADER
Definition: buffer.h:401
#define emms()
Definition: mmx.h:732
#define BUF_VIDEO_MSMPEG4_V2
Definition: buffer.h:94
#define BUF_VIDEO_IV32
Definition: buffer.h:99
#define BUF_VIDEO_HEVC
Definition: buffer.h:195
ff_vaapi_context_t *(* get_context)(vo_frame_t *frame_gen)
Definition: accel_vaapi.h:108
#define BUF_VIDEO_INTERPLAY
Definition: buffer.h:145
#define XINE_STREAM_INFO_FRAME_DURATION
Definition: xine.h:1015
uint8_t use_bad_frames
Definition: ff_video_decoder.c:123
const char name[16]
Definition: memcpy.c:569
int crop_top
Definition: video_out.h:129
#define BUF_VIDEO_CSCD
Definition: buffer.h:179
#define XINE_META_INFO_VIDEOCODEC
Definition: xine.h:1068
#define BUF_VIDEO_ZLIB
Definition: buffer.h:159
#define DLIST_IS_EMPTY(l)
Definition: xineutils.h:86
unsigned int height
Definition: gfontrle.c:5
int num_value
Definition: xine.h:1653
#define BUF_VIDEO_MSZH
Definition: buffer.h:158
int refs
Definition: ff_video_decoder.c:342
void mpeg_parser_init(mpeg_parser_t *parser, size_t padding_size)
Definition: ff_mpeg_parser.c:69
#define BUF_DECODER_MASK
Definition: buffer.h:62
#define BUF_VIDEO_3IVX
Definition: buffer.h:115
static void ff_handle_special_buffer(ff_video_decoder_t *this, buf_element_t *buf)
Definition: ff_video_decoder.c:1709
unsigned char r
Definition: buffer.h:577
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
#define XFF_FREE_CONTEXT(pp)
Definition: ffmpeg_compat.h:221
VAStatus(* vaapi_init)(vo_frame_t *frame_gen, int va_profile, int width, int height)
Definition: accel_vaapi.h:106
#define BUF_VIDEO_H264
Definition: buffer.h:166
int(* lock_vaapi)(vo_frame_t *frame_gen)
Definition: accel_vaapi.h:103
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
int frame_flags
Definition: ff_video_decoder.c:152
#define DLIST_REMOVE(n)
Definition: xineutils.h:88
rgb2yuy2_t * rgb2yuy2_alloc(int color_matrix, const char *format)
Definition: color.c:1768
#define BUF_VIDEO_LOCO
Definition: buffer.h:170
static uint64_t ff_untag_pts(ff_video_decoder_t *this, uint64_t pts)
Definition: ff_video_decoder.c:1801
@ STATE_DISCONTINUITY
Definition: ff_video_decoder.c:194
void * decoder_info_ptr[5]
Definition: buffer.h:355
static void ff_discontinuity(video_decoder_t *this_gen)
Definition: ff_video_decoder.c:2732
uint32_t _x_stream_info_get(xine_stream_t *s, int info)
Definition: info_helper.c:100
#define BUF_VIDEO_FLV1
Definition: buffer.h:165
#define BUF_VIDEO_JPEG
Definition: buffer.h:107
Definition: ff_video_decoder.c:99
static void set_stream_info(ff_video_decoder_t *this)
Definition: ff_video_decoder.c:329
ff_video_decoder_t * this
Definition: ff_video_decoder.c:343
static void choose_speed_over_accuracy_cb(void *user_data, xine_cfg_entry_t *entry)
Definition: ff_video_decoder.c:1097
#define BUF_VIDEO_MPEG
Definition: buffer.h:90
pthread_mutex_t ffsf_mutex
Definition: ff_video_decoder.c:160
int(* draw)(vo_frame_t *vo_img, xine_stream_t *stream)
Definition: video_out.h:91
int64_t last_pts
Definition: ff_video_decoder.c:106
#define BUF_VIDEO_SORENSON_V1
Definition: buffer.h:93
const char * description
human readable (verbose = 1 line) description for this plugin class
Definition: video_decoder.h:58
unsigned char * content
Definition: buffer.h:341
static void ff_setup_rgb2yuy2(ff_video_decoder_t *this, int pix_fmt)
Definition: ff_video_decoder.c:1233
#define BUF_VIDEO_VP6F
Definition: buffer.h:188
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 BUF_VIDEO_SNOW
Definition: buffer.h:192
#define XINE_STREAM_INFO_VIDEO_FOURCC
Definition: xine.h:1013
#define SLICE_OFFSET_SIZE
Definition: ff_video_decoder.c:72
#define BUF_VIDEO_4XM
Definition: buffer.h:152
static void ff_handle_header_buffer(ff_video_decoder_t *this, buf_element_t *buf)
Definition: ff_video_decoder.c:1628
#define XFF_PALETTE
Definition: ffmpeg_compat.h:124
#define _X_BE_32(x)
Definition: bswap.h:45
#define BUF_VIDEO_AVS
Definition: buffer.h:182
int skipframes
Definition: ff_video_decoder.c:129
static const uint32_t wmv8_video_types[]
Definition: ff_video_decoder.c:3075
#define IMGFMT_VAAPI_HEVC
Definition: accel_vaapi.h:97
static const int skip_loop_filter_enum_values[]
Definition: ff_video_decoder.c:766
#define BUF_VIDEO_MSVC
Definition: buffer.h:110
#define BUF_VIDEO_BASE
Definition: buffer.h:88
static void ff_handle_mpeg12_buffer(ff_video_decoder_t *this, buf_element_t *buf)
Definition: ff_video_decoder.c:1935
#define XFF_VIDEO
Definition: ffmpeg_compat.h:93
void * accel_data
Definition: video_out.h:147
PixelFormat
Definition: ff_dvdata.h:36
uint8_t * mpeg_parser_decode_data(mpeg_parser_t *parser, uint8_t *current, uint8_t *end, int *flush)
Definition: ff_mpeg_parser.c:307
uint32_t decoder_flags
Definition: buffer.h:350
#define BUF_VIDEO_AV1
Definition: buffer.h:196
uint8_t is_mpeg12
Definition: ff_video_decoder.c:116
unsigned char ytab[1024]
Definition: ff_video_decoder.c:171
@ STATE_FLUSHED
Definition: ff_video_decoder.c:197
int edge
Definition: ff_video_decoder.c:153
struct ff_video_class_s ff_video_class_t
#define AV_CODEC_CAP_DR1
Definition: ffmpeg_compat.h:247
Definition: video_out.h:59
#define DLIST_INIT(l)
Definition: xineutils.h:126
VADisplay va_display
Definition: accel_vaapi.h:53
#define XFF_AVCODEC_OPEN(ctx, codec)
Definition: ffmpeg_compat.h:215
#define IMGFMT_VAAPI_MPEG4
Definition: accel_vaapi.h:94
#define BUF_VIDEO_CAVS
Definition: buffer.h:187
const decoder_info_t dec_info_ffmpeg_video
Definition: ff_video_decoder.c:3085
int32_t max_size
Definition: buffer.h:344
uint32_t type
Definition: buffer.h:362
int pts_tag_stable_counter
Definition: ff_video_decoder.c:110
int output_format
Definition: ff_video_decoder.c:155
static const uint32_t wmv9_video_types[]
Definition: ff_video_decoder.c:3080
uint8_t enable_vaapi
Definition: ff_video_decoder.c:93
#define BUF_VIDEO_ATIVCR1
Definition: buffer.h:101
#define BUF_VIDEO_ALGMM
Definition: buffer.h:180
#define BUF_VIDEO_VP9
Definition: buffer.h:194
uint8_t set_stream_info
Definition: ff_video_decoder.c:180
int video_step
Definition: ff_video_decoder.c:111
int bufsize
Definition: ff_video_decoder.c:127
#define BUF_VIDEO_VMNC
Definition: buffer.h:191
static void ff_flush(video_decoder_t *this_gen)
Definition: ff_video_decoder.c:2695
void * init_video_plugin(xine_t *xine, const void *data)
Definition: ff_video_decoder.c:2987
int width
Definition: video_out.h:138
static void ff_dispose(video_decoder_t *this_gen)
Definition: ff_video_decoder.c:2773
Definition: ffmpeg_decoder.h:35
uint8_t assume_bad_field_picture
Definition: ff_video_decoder.c:122
uint8_t * base[3]
Definition: video_out.h:116
#define BUF_VIDEO_MJPEG_B
Definition: buffer.h:167
video_decoder_t *(* open_plugin)(video_decoder_class_t *this_gen, xine_stream_t *stream)
Definition: video_decoder.h:46
void(* yuv9_to_yv12)(const unsigned char *y_src, int y_src_pitch, unsigned char *y_dest, int y_dest_pitch, const unsigned char *u_src, int u_src_pitch, unsigned char *u_dest, int u_dest_pitch, const unsigned char *v_src, int v_src_pitch, unsigned char *v_dest, int v_dest_pitch, int width, int height)
Definition: color.c:94
int _x_get_video_streamtype(xine_stream_t *s)
Definition: xine.c:3301
static void ff_check_colorspace(ff_video_decoder_t *this)
Definition: ff_video_decoder.c:215
#define BUF_VIDEO_ROQ
Definition: buffer.h:125
AVCodec * codec
Definition: ff_video_decoder.c:138
#define BUF_VIDEO_THEORA_RAW
Definition: buffer.h:189
#define BUF_VIDEO_SORENSON_V3
Definition: buffer.h:126
#define XINE_IMGFMT_YUY2
Definition: xine.h:495
uint8_t vaapi_mpeg_softdec
Definition: ff_video_decoder.c:94
#define BUF_VIDEO_CYUV
Definition: buffer.h:116
static void ff_free_dr1_frames(ff_video_decoder_t *this, int all)
Definition: ff_video_decoder.c:2647
int64_t pts
Definition: ff_video_decoder.c:105
video_decoder_class_t decoder_class
Definition: ff_video_decoder.c:83
#define BUF_VIDEO_QDRW
Definition: buffer.h:171
Definition: ff_video_decoder.c:340
void rgb2yuy2_free(rgb2yuy2_t *rgb2yuy2)
Definition: color.c:1943
#define BUF_VIDEO_MPEG4
Definition: buffer.h:91
Definition: accel_vaapi.h:115
#define XINE_IMGFMT_VAAPI
Definition: xine.h:499
#define MM_ACCEL_X86_MMXEXT
Definition: xineutils.h:166
static const char *const cm_names[]
Definition: color_matrix.c:84
uint8_t cs_convert_init
Definition: ff_video_decoder.c:121
#define xprintf(xine, verbose,...)
Definition: xineutils.h:664
uint8_t is_direct_rendering_disabled
Definition: ff_video_decoder.c:120
#define BUF_VIDEO_MJPEG
Definition: buffer.h:96
int ffsf_num
Definition: ff_video_decoder.c:159
#define N_(String)
Definition: xineintl.h:47
dnode_t node
Definition: ff_video_decoder.c:341
void(* free)(vo_frame_t *vo_img)
Definition: video_out.h:100
#define BUF_VIDEO_MSRLE
Definition: buffer.h:122
uint16_t height
Definition: ff_mpeg_parser.h:51
#define BUF_VIDEO_CINEPAK
Definition: buffer.h:92
#define XINE_EVENT_FRAME_FORMAT_CHANGE
Definition: xine.h:1818
#define BUF_FLAG_PREVIEW
Definition: buffer.h:380
vo_frame_t * vo_frame
Definition: ff_video_decoder.c:344
#define BUF_VIDEO_RV20
Definition: buffer.h:140
#define AV_INPUT_BUFFER_PADDING_SIZE
Definition: ffmpeg_compat.h:244
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