From ab1299f339c02a30143792bd97c1367d3b8c091c Mon Sep 17 00:00:00 2001 From: Mike Melanson Date: Wed, 4 Dec 2002 05:51:46 +0000 Subject: pass the great responsibility of decoding SVQ1 data over to ffmpeg CVS patchset: 3424 CVS date: 2002/12/04 05:51:46 --- src/libffmpeg/xine_decoder.c | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/src/libffmpeg/xine_decoder.c b/src/libffmpeg/xine_decoder.c index 9b2b5c836..a3e6ced91 100644 --- a/src/libffmpeg/xine_decoder.c +++ b/src/libffmpeg/xine_decoder.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: xine_decoder.c,v 1.73 2002/12/02 22:00:14 miguelfreitas Exp $ + * $Id: xine_decoder.c,v 1.74 2002/12/04 05:51:46 tmmm Exp $ * * xine decoder plugin using ffmpeg * @@ -510,6 +510,29 @@ static void ff_decode_data (video_decoder_t *this_gen, buf_element_t *buf) { su = this->av_picture.data[1]; sv = this->av_picture.data[2]; + if (this->context->pix_fmt == PIX_FMT_YUV410P) { + + yuv9_to_yv12( + /* Y */ + this->av_picture.data[0], + this->av_picture.linesize[0], + img->base[0], + img->pitches[0], + /* U */ + this->av_picture.data[1], + this->av_picture.linesize[1], + img->base[1], + img->pitches[1], + /* V */ + this->av_picture.data[2], + this->av_picture.linesize[2], + img->base[2], + img->pitches[2], + /* width x height */ + this->bih.biWidth, + this->bih.biHeight); + + } else for (y=0; ybih.biHeight; y++) { xine_fast_memcpy (dy, sy, this->bih.biWidth); @@ -519,7 +542,8 @@ static void ff_decode_data (video_decoder_t *this_gen, buf_element_t *buf) { sy += this->av_picture.linesize[0]; } - for (y=0; y<(this->bih.biHeight/2); y++) { + if (this->context->pix_fmt != PIX_FMT_YUV410P) + for (y=0; y<(this->bih.biHeight/2); y++) { if (this->context->pix_fmt != PIX_FMT_YUV444P) { @@ -992,8 +1016,7 @@ static uint32_t supported_video_types[] = { BUF_VIDEO_MJPEG, BUF_VIDEO_H263, BUF_VIDEO_RV10, - /* PIX_FMT_YUV410P must be supported to enable svq1 */ - /* BUF_VIDEO_SORENSON_V1 */ + BUF_VIDEO_SORENSON_V1, BUF_VIDEO_JPEG, BUF_VIDEO_MPEG, BUF_VIDEO_DV, -- cgit v1.2.3