2016-03-18 5 views
0

Я использую FFMPEG для извлечения изображений из видео MXF. Я заинтересован в извлечении изображений формата tiff с цветовым пространством YUV (предпочтительно 422). Видео MXF имеют цветовое пространство YUV. Поэтому я хочу продолжать работать в этом цветовом пространстве. Я пробовал:FFMPEG не извлекает yuv colorspace images

ffmpeg -i video.mxf -pix_fmt yuv422p f%10d.tiff 

Однако выходные изображения, как представляется, имеют цветовое пространство RGB. Я использую ImageMagick и командную строку:

identify -verbose output.tiff 

который информирует меня о том, что файлы изображений в цветовом пространстве RGB. У меня есть googled и попробовал варианты в моей командной строке FFMPEG, но безрезультатно. Что я делаю не так?

FFmpeg консольный вывод по запросу: First part of output Second part of output

imagemajick идентифицировать (частичный) результат: (я не разрешается размещать более двух ссылок *)

+1

Пожалуйста, разместите полный вывод консоли команды ffmpeg. – Mulvya

+0

Ваша версия ffmpeg, вероятно, слишком стар, чтобы поддерживать кодировку yuv в tiff. –

+0

Я добавил скриншоты консольного вывода @Mulvya Версия 2.8.4 - PaulB.Mahol (я могу пометить только один элемент, видимо) – DragonDance27

ответ

0

Проверить ffprobe output.tiff. Он должен сообщать формат пикселя YUV.

Не путайте формат пикселя с absolute color space, sRGB, если это исходное цветовое пространство, останется также цветовым пространством назначения. Форматы пикселей YUV являются способом развязки яркости/интенсивности от цветности/оттенка, что помогает эффективно сжимать видеосигнал.

От Y'CbCr:

Y'CbCr не является абсолютным цветовым пространством; скорее, это способ кодирования информации RGB .

+0

Спасибо. ffprobe сообщает YUV. Тем не менее, я дважды проверял на matlab: [[[a = imread ('f20.tiff'); b = a; b (:,:, 1) = 0; ]]] и отображение изображений. Я могу заметно/субъективно идентифицировать, что цветовой канал является потерей. Первый канал YUV должен быть яркостью, поэтому исходный цвет изображения должен оставаться (без различий интенсивности). Однако я могу определить, что красный канал теряется - цвет изображения меняется, как будто его RGB. Я что-то не понимаю? – DragonDance27

+0

Редактировать: На самом деле, я только что понял, что Matlab просто интерпретирует значения, как будто его RGB, несмотря на то, что он YUV. Итак ... Возможно, сначала мне нужно было сделать перевод. Разве что MATLAB не может идентифицировать yuv и работать с этим? – DragonDance27

+0

Не знаю Matlab, но похоже, что для TIFF выделены [функции] (http://in.mathworks.com/help/matlab/ref/tiff.read.html). – Mulvya

Смежные вопросы