Я пытаюсь перекодировать mp4 в формат webm без потерь. Я пробовал два способа сделать это.
Для этой цели я извлек видео mp4 в последовательности изображений (png). Затем я преобразовал последовательность изображений (не изменяя ни одного кадра) в видео webm с флагом без потерь. Но когда я извлек видео webm в последовательности изображений и сравнил с изображениями, которые я извлек из видео mp4, я понял, что значения PSNR не были бесконечными. Они колеблются в диапазоне около 53-55 дБ.
С другой стороны, я напрямую перекодировал mp4 в webm с флагом lossless. Затем я извлек последовательности изображений из форматов mp4 и webm и сравнил значения PSNR. На этот раз я понял, что значения PSNR равны бесконечности.
Кодирование последовательностей изображений в видео webm с флагом lossless на самом деле не является lossless. Это правда или я что-то делаю не так?
решение1
Видео MP4 будет использовать некоторый вариант цветового пространства YUV, как и VP9. PNG хранит пиксели RGB. Таким образом, ваш конвейер MP4 -> PNG -> VP9 имеет два преобразования цветового пространства, т.е. YUV -> RGB -> YUV. Этипреобразованияне являются математически без потерь.