PDA

View Full Version : Какой из двух видеокодек лучше для онлайн VOD



crazy-mike
04-26-2012, 06:05 AM
Два - это WebM и H.264
:wink1:
Я заметил одну прикольную вещь - для очень длинного видео ( около 2-3 часов ) файлы mp4 с видеокодеком H.264 ( libx264 ) и аудиокодеком aac получаются раза в полтора короче чем web movie ( libvpx с аудио libvorbis ). И это даже в том случае если fps для mp4 сделать больше.
Правда при просмотре через Google Chrome для mp4 в этом случае нужно немного подождать в самом начале. Зато потом "без задержек". В WebM сначала сильно ждать не надо - но зато потом время от времени нужно ожидать "докачку".

Miguel_Cordona
04-26-2012, 08:40 AM
не на всех устройствах flv можно смотреть.
Так что html5 он как бы даже универсальнее.

crazy-mike
04-26-2012, 09:34 AM
не на всех устройствах flv можно смотреть.
Так что html5 он как бы даже универсальнее.
:grum:
Не в этом дело. flv - там тоже внутри h.264 в качестве видеокодека и aac - аудио ( даже в QuickTime для iPad так можно делать ).
flv от mp4 отличается только "форматом контейнера". :wink1:
На самом деле внутри flv можно использовать ( и использовались ) несколько разных видеокодеков ( да и аудио - совсем не обязательно aac ).
:wink1:
Шиза в том , что в set-top-box-ах чаще используется h.264 чем WebM. В "умных" телевизорах - тоже мз области хронической загадочности ( с намёком на mp4 с видеокодеком h.264 - хотя намного чаще mpeg4 layer 1 ).
Основной недостаток h.264 - "жрёт ресурсы" процессора при кодировании видео. Кодирование в WebM - примерно раза в полтора быстрее для больших файлов.

crazy-mike
05-06-2012, 08:09 AM
А ещё плеер внутри браузера Google Chrome может "глючить" при проигрывании видео в формате WebM ( длинных файлов ). В браузерах Opera и Mozilla Firefox это случается намного реже. С mp4 ( libx264) у Google Chrome похожих глюков не возникает. :wink1:

Miguel_Cordona
05-06-2012, 09:15 AM
главно чтоб работало и было совмстимо с основными распр. стандартами, имхо.
всем не угодишь.

crazy-mike
05-06-2012, 12:58 PM
главно чтоб работало и было совмстимо с основными распр. стандартами, имхо.
всем не угодишь.
"стандарты" - дело ведь не только в "стандартах". Вот есть mpeg4 layer 1 - видеокодек , с которым работает практически любой плеер под iOS и Android, А на мобилках с ним "цирк". Если соотношение aspect ratio в видео задано 400:300 ( 4:3) - то на Nokia X2 такое воспроизводится нормально. Если нет - на Nokia X2 не воспроизводится. Но на Motorola RAZR V8 - воспроизводится. Правда на Nokia X2 зато можно позволять битрейт повыше чем на Motorola RAZR V8.

crazy-mike
05-06-2012, 05:42 PM
"ffmpeg -i \"%s\" " \
"-strict experimental -acodec aac -vcodec libx264 -vpre libx264-baseline -r 12 " \
"-ar 44100 -ab 20k -vb 44k -ac 1 -qcomp 1.0 -s 282x120 -aspect 47:20 -f mp4 " \
"%s.mp4\0"
:kov:
как бы template для преобразования в mp4 с видеокодеком h.264. Самое прикольное здесь vb 44k. Если сделать vb 42k - то качество видео будет намного хуже в сценах с "интенсивным движением" Но 44k - более-менее нормально. Это если всё хочется втиснуть примерно в 70 кбит в сек.
При этом параметр fps ( r 12 ) в 12 кадров в секунду на самом деле будет означать около 16 кадров в секунду. Но для "почти векторных форматов видео" ( mpeg4 - это совсем не "пиксель в пиксель" ) это "не 24 кадра в секунду" такой уж жёсткой роли не играет. Движение "рваным" всё равно не будет. А для телепередач в формате "говорящая голова" можно вообще выбирать vb 32k и "зажать видеопоток" практически в 56 кбит в сек без существенной потери качества.

crazy-mike
06-16-2012, 03:37 AM
Для показа футбольного матча ( сцены с интенсивным движением и "не-сценической" освещённостью ) предпочтительнее webm ( VP8 ) - это я по Евро-2012 такой вывод делаю. Для тех матчей , которые проходили вечером - mp4 h.264 получалось вполне сносно. Но вот днём....Правда я по битрейту всё пробовал загнать почти в 64 кбит в сек ( в 70 кбит/сек).
VP8 ( webm) - там до 90 кбит в сек получается.