Am 14.09.2020 um 13:24 schrieb Gyan Doshi:


On 14-09-2020 03:41 pm, Michael Koch wrote:
Am 14.09.2020 um 11:26 schrieb Gyan Doshi:


On 14-09-2020 02:47 pm, Michael Koch wrote:
ffmpeg -v verbose -f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le -vf format=rgb48le,lut3d="VLog_to_V709.cube",format=yuv422p10le -noauto_conversion_filters -pix_fmt yuv422p10le -c:v h264 -y out.mov

Format conversion is carried out by libswscale and auto conversion inserts the scale filter.

So,

    ffmpeg -v verbose -f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le -vf scale,format=rgb48le,lut3d="VLog_to_V709.cube",scale -noauto_conversion_filters -pix_fmt yuv422p10le -c:v h264 -y out.mov

The final format filter is redundant with -pix_fmt, so I removed one of them.

Thank you, with "scale" it works fine. Although it's hard to understand what "scale" (without any options) is actually doing.

I have another question. Is this the correct and easiest way to make a 10-bit test video?
-f lavfi -i testsrc2=s=svga:d=5,format=yuv422p10le

In the documentation is written
"The |testsrc2|source is similar to testsrc, but supports more pixel formats instead of just |rgb24|. This allows using it as an input for other tests without requiring a format conversion."
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

But in my above command, I think "format=yuv422p10le" is a format conversion.

Each filter presents a list of input formats they can work with and a list of output formats they can directly generate. The framework inspects adjacent filters and sets a compatible common format for the outputs and inputs when possible. If not, it sets one of the available output formats for the preceding filter and one from input formats for the following filter and inserts a scale filter to convert  between those. This process is format negotiation. The format filter doesn't carry out the conversion itself - it inserts scale which in turn invokes libswscale. scale without any args defaults to the source W and H. But for pixel formats, its output format is constrained by the following format filter. That triggers a format conversion by libswscale.

Thanks for good explanation!

Michael

_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

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

Reply via email to