[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [40765] trunk/blender/source/blender/ blenkernel/intern/writeffmpeg.c: patch [#27887] LOSSLESS RENDERING: HuffYUV and FFV1 both fail to render losslessly
Campbell Barton
ideasman42 at gmail.com
Mon Oct 3 05:25:06 CEST 2011
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);
More information about the Bf-blender-cvs
mailing list