OSDN Git Service

Support fourcc YV24.
authorami_stuff <ami_stuff@o2.pl>
Wed, 6 Jul 2011 08:05:08 +0000 (10:05 +0200)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Wed, 6 Jul 2011 08:05:08 +0000 (10:05 +0200)
Fixes ticket #306.

libavcodec/raw.c
libavcodec/rawdec.c
libavformat/riff.c

index d686718..e87a9af 100644 (file)
@@ -137,6 +137,7 @@ const PixelFormatTag ff_raw_pix_fmt_tags[] = {
 
     /* special */
     { PIX_FMT_RGB565LE,MKTAG( 3 ,  0 ,  0 ,  0 ) }, /* flipped RGB565LE */
+    { PIX_FMT_YUV444P, MKTAG('Y', 'V', '2', '4') }, /* YUV444P, swapped UV */
 
     { PIX_FMT_NONE, 0 },
 };
index d48cbed..177f08c 100644 (file)
@@ -208,6 +208,7 @@ static int raw_decode(AVCodecContext *avctx,
 
     if (   avctx->codec_tag == MKTAG('Y', 'V', '1', '2')
         || avctx->codec_tag == MKTAG('Y', 'V', '1', '6')
+        || avctx->codec_tag == MKTAG('Y', 'V', '2', '4')
         || avctx->codec_tag == MKTAG('Y', 'V', 'U', '9'))
         FFSWAP(uint8_t *, picture->data[1], picture->data[2]);
 
index 060eaa0..2e00ae8 100644 (file)
@@ -173,6 +173,7 @@ const AVCodecTag ff_codec_bmp_tags[] = {
     { CODEC_ID_RAWVIDEO,     MKTAG('P', '4', '2', '2') },
     { CODEC_ID_RAWVIDEO,     MKTAG('Y', 'V', '1', '2') },
     { CODEC_ID_RAWVIDEO,     MKTAG('Y', 'V', '1', '6') },
+    { CODEC_ID_RAWVIDEO,     MKTAG('Y', 'V', '2', '4') },
     { CODEC_ID_RAWVIDEO,     MKTAG('U', 'Y', 'V', 'Y') },
     { CODEC_ID_RAWVIDEO,     MKTAG('V', 'Y', 'U', 'Y') },
     { CODEC_ID_RAWVIDEO,     MKTAG('I', 'Y', 'U', 'V') },