[FFmpeg-user] Convert images to DNXHD 444

Matt Kitcat matt at elmtreecottages.co.uk
Tue Apr 10 20:27:40 EEST 2018

Hi Guys.
I am waiting for some test footage I can share because I have since 
discovered that creating YUV444 might not solve my underlying problem. This 
started when I generated a yuv422p10 DNxHD and the colours were different to 
the original tiff sequence (saturation down).
I assumed it was due to it not being 444 but in fact a quicktime generated 
through Quicktime API produces "perfect" DNxHD with no discernable colour 
difference to the original MOV. I spent a day searching for an answer but 
nothing made a difference.  Like I say I will upload some examples as soon 
as I can get them, maybe tomorrow.

But I would also like to be able to generate DNxHR 444 and hqx as well.

-----Original Message----- 
From: Gonzalo Garramuño
Sent: Tuesday, April 10, 2018 5:56 PM
To: ffmpeg-user at ffmpeg.org
Subject: Re: [FFmpeg-user] Convert images to DNXHD 444

El 10/04/18 a las 07:37, Carl Eugen Hoyos escribió:
> 2018-04-09 23:08 GMT+02:00, Wayne Poll <WPoll at nhnz.tv>:
>> It is possible but the 440 profile isn't valid for 23.98fps material - 
>> you
>> should be using DNxHD 350x for 10-bit 4:4:4 RGB @ 23.98fps. The DNxHD 440
>> (8-bit) and DNxHD 440x (10-bit) are only valid at higher frame rates, 
>> such
>> as 29.97p, 59.94p and 60p
> How can I reproduce this?
$ ffmpeg -i explosion_FG_040_persp.%04d.exr -r 24000/1001 -codec:v dnxhd
-profile:v dnxhd -bit_rate 120Mbps -pix_fmt yuv422p10 -bit_rate 90Mbps
-y test.mov

ffmpeg version N-90206-g8aa3007 Copyright (c) 2000-2018 the FFmpeg
   built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.9) 20160609
   configuration: --enable-gpl --enable-shared --enable-gray
--enable-runtime-cpudetect --enable-bzlib --enable-libfreetype
--enable-libmp3lame --enable-libtheora --enable-libvorbis
--enable-libass --enable-libvpx --enable-libx264 --enable-libx265
   libavutil      56.  7.101 / 56.  7.101
   libavcodec     58. 13.100 / 58. 13.100
   libavformat    58. 10.100 / 58. 10.100
   libavdevice    58.  2.100 / 58.  2.100
   libavfilter     7. 12.100 /  7. 12.100
   libswscale      5.  0.101 /  5.  0.101
   libswresample   3.  0.101 /  3.  0.101
   libpostproc    55.  0.100 / 55.  0.100
Input #0, image2, from 'explosion_FG_040_persp.%04d.exr':
   Duration: 00:00:02.84, start: 0.000000, bitrate: N/A
     Stream #0:0: Video: exr, rgb48le, 1280x720 [SAR 1:1 DAR 16:9], 25
tbr, 25 tbn, 25 tbc
Stream mapping:
   Stream #0:0 -> #0:0 (exr (native) -> dnxhd (native))
Press [q] to stop, [?] for help

[dnxhd @ 0x2183c40] video parameters incompatible with DNxHD. Valid
DNxHD profiles:
[dnxhd @ 0x2183c40] Frame size: 1920x1080p; bit_depth=10; bitrate:
175Mbps; pixel format: yuv422p10
[dnxhd @ 0x2183c40] Frame size: 1280x720p; bit_depth=10; bitrate:
90Mbps; pixel format: yuv422p10

Assuming a resolution of 1280x720, the video parameters are okay, but
the bit rate gets passed as 200000 always and that makes the check for
resolution and yuv not run.  I modified the code to print the bit rate
and that's how I found out.  I am hunting where the avctx->bit_rate gets
set to 200000.  Maybe you can help, Carl?

Gonzalo Garramuño

ffmpeg-user mailing list
ffmpeg-user at ffmpeg.org

To unsubscribe, visit link above, or email
ffmpeg-user-request at ffmpeg.org with subject "unsubscribe". 

More information about the ffmpeg-user mailing list