FFMPEG: преобразовать вход rec709 в sRGB - PullRequest
0 голосов
/ 29 марта 2019

Я хотел бы использовать ffmpeg для преобразования последовательности изображений tiff 16bit rec709 в последовательность изображений JPEG sRGB .

# How would I indicate ffmpeg source is rec709 and output is srgb?
ffmpeg -start_number 1001 -i input_seq_rec709.%04d.tif output_seq_srgb.%04d.jpg

В документации ffmpeg я вижу параметры конвертации (colorspace и colormatrix). Из того, что я понимаю, rec709 похож на bt709. но я не уверен, что sRGB будет, любая идея? https://ffmpeg.org/ffmpeg-filters.html#colorspace

Я надеялся использовать один из этих флагов, но srgb не является допустимым параметром для FFMPEG.

  • -vf "scale=in_color_matrix=bt709:out_color_matrix=srgb"
  • -colormatrix=bt709:srgb'

Спасибо

Ответы [ 2 ]

0 голосов
/ 29 марта 2019

Ваши документы ссылаются на фильтр цветового пространства (который является правильным выбором), но ваши попытки используют другие фильтры.

Фильтр цветового пространства поддерживает только глубину ввода 8, 10 или 12 бит на канал, поэтому ffmpeg будетиспользуйте его обычный скейлер, чтобы заранее уменьшить глубину до 8 бит на канал.Давайте отложим это, вручную уменьшив частоту дискретизации до более высокой глубины.

ffmpeg -start_number 1001 -i input_seq_rec709.%04d.tif -vf format=yuv444p12le,colorspace=all=bt709:trc=srgb:format=yuv422p output_seq_srgb.%04d.jpg

Приведенная выше команда предполагает, что на входе (TIFF) установлены все свои цветовые флаги (и они установлены правильно).Если нет, а цветовое пространство жалуется, используйте

ffmpeg -color_primaries 1 -color_trc 1 -colorspace 1 -start_number 1001 -i input_seq_rec709.%04d.tif -vf format=yuv444p12le,colorspace=all=bt709:trc=srgb:format=yuv422p output_seq_srgb.%04d.jpg

Теперь все это академично, если декодер используемого вами проигрывателя или последующего приложения не знает, как применить правильную гамма-функцию.

0 голосов
/ 29 марта 2019

Я не уверен, что это будет на самом деле полезно для вас, но мой возня с ffmpeg поднял следующий флаг, чтобы указать гамму sRGB.Это для флага TRC H.264 "-color_trc iec61966_2_1".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...