[FFmpeg-cvslog] r20789 - in trunk/libavcodec: mjpegdec.c mjpegenc.c

michael subversion
Thu Dec 10 19:14:26 CET 2009


Author: michael
Date: Thu Dec 10 19:14:26 2009
New Revision: 20789

Log:
Lossless jpeg expects and uses BGRA not RGB32 (this probably caused a problem on
big endian)

Modified:
   trunk/libavcodec/mjpegdec.c
   trunk/libavcodec/mjpegenc.c

Modified: trunk/libavcodec/mjpegdec.c
==============================================================================
--- trunk/libavcodec/mjpegdec.c	Thu Dec 10 19:07:35 2009	(r20788)
+++ trunk/libavcodec/mjpegdec.c	Thu Dec 10 19:14:26 2009	(r20789)
@@ -301,7 +301,7 @@ int ff_mjpeg_decode_sof(MJpegDecodeConte
     switch(pix_fmt_id){
     case 0x11111100:
         if(s->rgb){
-            s->avctx->pix_fmt = PIX_FMT_RGB32;
+            s->avctx->pix_fmt = PIX_FMT_BGRA;
         }else
             s->avctx->pix_fmt = s->cs_itu601 ? PIX_FMT_YUV444P : PIX_FMT_YUVJ444P;
         assert(s->nb_components==3);

Modified: trunk/libavcodec/mjpegenc.c
==============================================================================
--- trunk/libavcodec/mjpegenc.c	Thu Dec 10 19:07:35 2009	(r20788)
+++ trunk/libavcodec/mjpegenc.c	Thu Dec 10 19:14:26 2009	(r20789)
@@ -211,7 +211,7 @@ void ff_mjpeg_encode_picture_header(Mpeg
     }
 
     put_bits(&s->pb, 16, 17);
-    if(lossless && s->avctx->pix_fmt == PIX_FMT_RGB32)
+    if(lossless && s->avctx->pix_fmt == PIX_FMT_BGRA)
         put_bits(&s->pb, 8, 9); /* 9 bits/component RCT */
     else
         put_bits(&s->pb, 8, 8); /* 8 bits/component */



More information about the ffmpeg-cvslog mailing list