Все знают, что многочисленные программы для кодирования видео в современный формат h.264 (он же "AVC", он же "Mpeg-4 Part 10") сильно отличаются не только по скорости, но и качеству своей работы. Критерием оценки качества любой программы для кодирования видео (далее - "кодек") являются три параметра:
1. Качество полученного видеофайла (т.е. то, насколько результат похож на оригинал)
2. Размер полученного видеофайла
3. Время, затраченное на кодирование.
Т.е. условный "наихудший кодек" будет жать долго, сделает файл большого размера и даже на глаз, видео будет сильно отличаться от оригинала.
Идеальная программа сделает все быстро, полученный файл будет небольшим и неотличимым от оригинала.
Но так как идеал недостижим, будем
есть, что дают ориентироваться на реалии.
Изучая эту тему много лет, я остановился на небольшой бесплатной программе "x264". Она, при равном размере получаемого файла, позволяет выполнить кодирование быстрее или качественнее, чем аналоги. Я говорю "или", т.к. x264 позволяет изменять настройки в широком диапазоне, позволяя выбрать соотношение качество/скорость/размер файла. Если я делаю короткий видеоролик, который буду показывать клиенту для утверждения, мне без разницы, какой получится размер файла, но мне важно, чтобы качество и скорость кодирования были высокими.
Если мне нужно отправить клиенту ролик на подтверждение по почте - мне нужны высокая скорость и малый размер файла, качеством можно пренебречь, т.к. клиент понимает, что это предварительный вариант.
И, наконец, когда я делаю финальный вариант видеоролика (или свадебного видео) мне важны и качество и размер файла (нужно порой уложиться в размер DVD/BLURAY болванки), а вот затраченное время не столь важно (когда я пишу эти строки, мой компьютер уже 12 часов сжимает двухчасовой фильм, и работать ему еще часа три).
Поэтому, когда в новостях пишут, что новая программа жмет видео очень быстро, а тестеры в обзорах нахваливают этот кодировщик, я первым делом смотрю, сможет ли новая программа кодировать видео быстрее, чем x264 в режиме "ultrafast"? Как правило, не может. Да и кодирует обычно хуже при том же размере полученного файла. Таким образом, сравнивая различные видеокодеки, нужно учитывать все три параметра. И если скорость можно измерить секундомером, а выяснение размера файла вообще не является проблемой, то как же честно и непредвзято сравнивать качество кодирования? И почему именно формат h.264, а не Mpeg-2, например? Об этом я расскажу в следующий раз...
Комментарии, исправления, уточнения и вопросы только приветствуются!
[свернуть]