<pre><code>ffmpeg -framerate 24000/1001 -i input_%04d.png -vf format=yuv422p10le -c:v dnxhd -b:v 180M output.mov
</code></pre>

<ul>
<li>Use <code>24000/1001</code> or <a href="https://ffmpeg.org/ffmpeg-utils.html#Video-rate" rel="nofollow noreferrer"><code>ntsc-film</code></a> instead of the inaccurate 23.976 byname.</li>
<li>This encoder only supports the following pixel formats: <code>yuv422p</code>, <code>yuv422p10le</code>,  <code>yuv444p10le</code>,  <code>gbrp10le</code>. See <code>ffmpeg -h encoder=dnxhd</code>.</li>
<li>This encoder only supports specific combinations of bitrate, width, and height. See a list with <code>ffmpeg -f lavfi -i nullsrc -c:v dnxhd -f null -</code>.</li>
<li>bt709 should be automatically chosen, but verify it is what you want. See output of <code>ffmpeg -i output.mov</code>.</li>
</ul>

CC BY-SA 4.0
2019-10-29T20:38:33.753Z
Thanks for the info but when I tried setting the format to yuv422p10le I experience some color shifting, particularly in green, and when sampling the output in a few different applications it is not "clean" in that some values go above and below legal range. From what I've read online "colorspace" seems the best way to handle this I am just unsure of the syntax.
Spencer
CC BY-SA 4.0
2019-10-29T20:55:18.920Z
Ok I did get this monster to work: `colorspace=space=bt709:trc=bt709:primaries=bt709:range=tv:format-yuv422p:iall=bt601-6-625` however I am still above/below legal range in some of the channels. Possibly this is due to compression... Anyway my question is what the input characteristics should be? I chose bt610-6-625 arbitrarily, and when I scan my pngs with Exiftool the only metadata I get is "RGB" but not color space. Visually this looks ok, so maybe it is fine?
Spencer
CC BY-SA 4.0
2019-10-30T06:04:14.310Z
PNGs typically are in sRGB colorspace - which has same primaries as bt709, but a different transfer function (gamma) and colorspace.
Gyan
CC BY-SA 4.0
2019-10-29T19:04:04.633Z
2019-10-29T19:04:04.633Z
llogan
<p>I have an 8bpc .png sequence in RGB color space (full range 0-255 of course) that I need to convert to DNxHD bt709 "legal" range (16-235). Here is where I am so far:</p>

<p><code>ffmpeg -framerate 23.976 -i input_%04d.png -vcodec dnxhd -b:v 175M outfile.mov</code></p>

<p>This throws an error: <code>pixel format is incompatible with DNxHD profile</code>. I used to do this all the time in a earlier version of ffmeg with no issue... I assume it has to do with the color space, and in looking through the "colorspace" filter documentation I am uncertain what the proper command would be. As mentioned I do want to actually transform the values to bt709, legal range.</p>

<ffmpeg>
ffmpeg convert .png to DNxHD .mov and scale color to bt709
Spencer
# ffmpeg convert .png to DNxHD .mov and scale color to bt709

(Asked by: username_0 on 2019-10-29)

I have an 8bpc .png sequence in RGB color space (full range 0-255 of course) that I need to convert to DNxHD bt709 "legal" range (16-235). Here is where I am so far:

`ffmpeg -framerate 23.976 -i input_%04d.png -vcodec dnxhd -b:v 175M outfile.mov`

This throws an error: `pixel format is incompatible with DNxHD profile`. I used to do this all the time in a earlier version of ffmeg with no issue... I assume it has to do with the color space, and in looking through the "colorspace" filter documentation I am uncertain what the proper command would be. As mentioned I do want to actually transform the values to bt709, legal range.

**Tags:** ffmpeg


---

## 1 answers

### Answer by username_1 on 2019-10-29. Score: 2

ffmpeg -framerate 24000/1001 -i input_%04d.png -vf format=yuv422p10le -c:v dnxhd -b:v 180M output.mov


Use 24000/1001 or ntsc-film instead of the inaccurate 23.976 byname.
This encoder only supports the following pixel formats: yuv422p, yuv422p10le,  yuv444p10le,  gbrp10le. See ffmpeg -h encoder=dnxhd.
This encoder only supports specific combinations of bitrate, width, and height. See a list with ffmpeg -f lavfi -i nullsrc -c:v dnxhd -f null -.
bt709 should be automatically chosen, but verify it is what you want. See output of ffmpeg -i output.mov.

> **Comments:**
> **username_0**: Thanks for the info but when I tried setting the format to yuv422p10le I experience some color shifting, particularly in green, and when sampling the output in a few different applications it is not "clean" in that some values go above and below legal range. From what I've read online "colorspace" seems the best way to handle this I am just unsure of the syntax.  
> **username_0**: Ok I did get this monster to work: `colorspace=space=bt709:trc=bt709:primaries=bt709:range=tv:format-yuv422p:iall=bt601-6-625` however I am still above/below legal range in some of the channels. Possibly this is due to compression... Anyway my question is what the input characteristics should be? I chose bt610-6-625 arbitrarily, and when I scan my pngs with Exiftool the only metadata I get is "RGB" but not color space. Visually this looks ok, so maybe it is fine?  
> **username_2**: PNGs typically are in sRGB colorspace - which has same primaries as bt709, but a different transfer function (gamma) and colorspace.  

---

