diff options
author | Darren Salt <linux@youmustbejoking.demon.co.uk> | 2008-04-21 19:15:49 +0100 |
---|---|---|
committer | Darren Salt <linux@youmustbejoking.demon.co.uk> | 2008-04-21 19:15:49 +0100 |
commit | d9350e4dd4710f78d6ea723667777451436efb7a (patch) | |
tree | 6a1f57688c441e818bcaf264d40eb8bba73505f8 /src/combined/ffmpeg/ff_video_decoder.c | |
parent | b726e1b4ef9beaf6ba5a8ae15f15a9f818e48a3b (diff) | |
parent | 2be5a79b30766a67f8c59e06a3caf9c3d3acd352 (diff) | |
download | xine-lib-d9350e4dd4710f78d6ea723667777451436efb7a.tar.gz xine-lib-d9350e4dd4710f78d6ea723667777451436efb7a.tar.bz2 |
Merge from 1.1.
Diffstat (limited to 'src/combined/ffmpeg/ff_video_decoder.c')
-rw-r--r-- | src/combined/ffmpeg/ff_video_decoder.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/combined/ffmpeg/ff_video_decoder.c b/src/combined/ffmpeg/ff_video_decoder.c index 10b326d45..db1e5a9c1 100644 --- a/src/combined/ffmpeg/ff_video_decoder.c +++ b/src/combined/ffmpeg/ff_video_decoder.c @@ -123,6 +123,10 @@ struct ff_video_decoder_s { yuv_planes_t yuv; AVPaletteControl palette_control; + +#ifdef LOG + enum PixelFormat debug_fmt; +#endif }; @@ -154,7 +158,7 @@ static int get_buffer(AVCodecContext *context, AVFrame *av_frame){ avcodec_align_dimensions(context, &width, &height); - if( this->context->pix_fmt != PIX_FMT_YUV420P ) { + if( this->context->pix_fmt != PIX_FMT_YUV420P && this->context->pix_fmt != PIX_FMT_YUVJ420P ) { if (!this->is_direct_rendering_disabled) { xprintf(this->stream->xine, XINE_VERBOSITY_LOG, _("ffmpeg_video_dec: unsupported frame format, DR1 disabled.\n")); @@ -591,6 +595,11 @@ static void ff_convert_frame(ff_video_decoder_t *this, vo_frame_t *img) { int y; uint8_t *dy, *du, *dv, *sy, *su, *sv; +#ifdef LOG + if (this->debug_fmt != this->context->pix_fmt) + printf ("frame format == %08x\n", this->debug_fmt = this->context->pix_fmt); +#endif + dy = img->base[0]; du = img->base[1]; dv = img->base[2]; @@ -1583,6 +1592,10 @@ static video_decoder_t *ff_video_open_plugin (video_decoder_class_t *class_gen, this->dr1_frames = xine_list_new(); +#ifdef LOG + this->debug_fmt = -1; +#endif + return &this->video_decoder; } |