[FFmpeg-user] how to specify pixel format of input image pixels

Mayur Patel m.patel at toonboxent.com
Fri Sep 14 18:33:15 EEST 2018

We have encoded YUV pixels into TIF images.  TIF is one of the few image formats that FFMPEG show support for yuv444p pixels (as identified by ffmpeg -h encoder=tiff)

I am having trouble getting ffmpeg to read the pixels as yuv444p (as opposed to the default rgb24):

Here is a typical command line:

ffmpeg -r 24 -f image2  -c:v tiff -pix_fmt yuv444p -start_number 0101 -y -i "frames.%04d.tif" -r 24 -vframes 130 -threads 6 -c:v dnxhd -timecode 00:00:04:05 -vf format=yuv422p,scale=out_range=tv -b:v 36M /var/tmp/a_dnxhd.mov

In the output, we see that the pixels are not identified as yuv444p:
    Stream #0:0: Video: tiff, rgb24, 1920x1080, 24 fps, 24 tbr, 24 tbn, 24 tbc

Does anyone have a suggestion for how to identify input image pixels as yuv444p?  Even better -- is there any way to get formats like bmp or ppm (which can be streamed) to identify as yuv444p pixels?  Writing intermediate images is a hassle and I would much rather use ffmpeg -f image2pipe which I believe can only be done with these simpler, streamable image formats.


More information about the ffmpeg-user mailing list