[FFmpeg-devel] [PATCH] avformat/movenc: respect color_range when encoding dnxhd.

markboo99 at gmail.com markboo99 at gmail.com
Tue Jul 8 23:09:57 CEST 2014


From: Mark Boorer <markboo99 at gmail.com>

Set the ACLR atom appropriately for legal / full range.
---
 libavformat/movenc.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index 919ae58..7e737b0 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -807,7 +807,11 @@ static int mov_write_avid_tag(AVIOContext *pb, MOVTrack *track)
     ffio_wfourcc(pb, "ACLR");
     ffio_wfourcc(pb, "ACLR");
     ffio_wfourcc(pb, "0001");
-    avio_wb32(pb, 2); /* yuv range: full 1 / normal 2 */
+    if (track->enc->color_range == AVCOL_RANGE_MPEG) { /* Legal range (16-235) */
+        avio_wb32(pb, 1); /* Corresponds to 709 in official encoder */
+    } else { /* Full range (0-255) */
+        avio_wb32(pb, 2); /* Corresponds to RGB in official encoder */
+    }
     avio_wb32(pb, 0); /* unknown */
 
     avio_wb32(pb, 24); /* size */
-- 
1.8.1



More information about the ffmpeg-devel mailing list