Revision: 40765
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=40765
Author:   campbellbarton
Date:     2011-10-03 03:25:05 +0000 (Mon, 03 Oct 2011)
Log Message:
-----------
patch [#27887] LOSSLESS RENDERING: HuffYUV and FFV1 both fail to render 
losslessly
from Troy Sobotka (sobotka)

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c

Modified: trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c        
2011-10-03 03:23:50 UTC (rev 40764)
+++ trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c        
2011-10-03 03:25:05 UTC (rev 40765)
@@ -489,6 +489,12 @@
                c->qmax=51;
        }
        
+       // Keep lossless encodes in the RGB domain.
+       if (codec_id == CODEC_ID_HUFFYUV || codec_id == CODEC_ID_FFV1) {
+               /* HUFFYUV was PIX_FMT_YUV422P before */
+               c->pix_fmt = PIX_FMT_RGB32;
+       }
+
        if ((of->oformat->flags & AVFMT_GLOBALHEADER)
 //             || !strcmp(of->oformat->name, "mp4")
 //         || !strcmp(of->oformat->name, "mov")
@@ -518,8 +524,8 @@
                return NULL;
        }
 
-       video_buffersize = 2000000;
-       video_buffer = (uint8_t*)MEM_mallocN(video_buffersize, 
+       video_buffersize = avpicture_get_size(c->pix_fmt, c->width, c->height);
+       video_buffer = (uint8_t*)MEM_mallocN(video_buffersize*sizeof(uint8_t),
                                                 "FFMPEG video buffer");
        
        current_frame = alloc_picture(c->pix_fmt, c->width, c->height);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to