Что произойдет, если я ffmpeg кодирую два раза подряд с одинаковым битрейтом - PullRequest
0 голосов
/ 03 июня 2019

У меня есть оригинальное видео DivX (3500K), которое я кодирую в h.264 в контейнере mp4.Я предпочитаю кодировать его, например, 1000 k, чтобы качество оставалось близким к оригиналу.Что произойдет, если я закодирую его еще раз с тем же битрейтом?Теоретически качество должно оставаться прежним?

ffmpeg -i A.divx -an -vcodec h264  -b:v 100k A.mp4

1 Ответ

2 голосов
/ 04 июня 2019

Качество не останется прежним

Перекодирование с помощью кодера с потерями каждый раз снижает качество Это называется потеря генерации .

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

ffmpeg полностью декодирует входные данные для необработанного видео и звука PCM независимо от формата ввода:

 _______              ______________
|       |            |              |
| input |  demuxer   | encoded data |   decoder
| file  | ---------> | packets      | -----+
|_______|            |______________|      |
                                           v
                                       _________
                                      |         |
                                      | decoded |
                                      | frames  |
                                      |_________|
 ________             ______________       |
|        |           |              |      |
| output | <-------- | encoded data | <----+
| file   |   muxer   | packets      |   encoder
|________|           |______________|

Затем он кодирует необработанное видео, которое включает в себя разрушающие артефакты сжатия от предыдущих итераций кодирования. Качество не останется прежним, потому что два поколения - это абсолютно разные видео.

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