2015-03-24 3 views
8

Я пытаюсь найти волшебные варианты, которые делают работу mp4 в Chrome. Я думаю, что мои видео работали, но после обновления Chrome они больше не выглядят.Параметры ffmpeg, которые работают с Chrome

Chrome, версия 41.0.2272.101 (Windows)

я попробовал некоторые другие машины и нашли некоторые из видео работали на старых версиях, и мой Mac, кажется, до сих пор работает на последней Chrome.

Я использую варианты FFmpeg конвертировать из PNG серии

ffmpeg -framerate 10 -i dance%02d.png -r 10 -pix_fmt yuv420p dance.mp4 

Некоторые видео работают, некоторые нет, некоторые работы некоторое время, или остановить на полпути через.

Я пробовал различные другие варианты, как,

ffmpeg -start_number 16 -framerate 10 -i dance%02d.png -r 10 -an -s hd720 \ 
-vcodec libx264 -pix_fmt yuv420p -preset slow -profile:v baseline \ 
-movflags faststart -y dance.mp4 

, но это только казалось, еще хуже.

здесь один из видео, http://www.botlibre.com/media/a786625.mp4

и еще один, http://www.botlibre.com/media/a812450.mp4

Firefox, кажется, не работает без проблем, в любой версии, серый фон, хотя. IE работает отлично, на белом фоне. Сафари работает, серый фон.

Другое дело, что у них видео было на белом фоне на более раннюю версию Chrome, но теперь они серые, за исключением Mac по-прежнему белые.

и еще одно. Формат Webm работает, но кто-нибудь знает, как удалить прозрачность? Я использую,

ffmpeg -i dance%02d.png -r 10 -c:v libvpx -crf 10 -b:v 512k -c:a libvorbis dance.webm 

просто хочу сплошной белый фон.

+0

Чтобы удалить прозрачность, вы можете использовать фильтр типа 'format = rgba, lutrgb = a = minval'. См. [This] (http://stackoverflow.com/questions/11260930/ffmpeg-splitting-rgb-and-alpha-channels-using-filter). Или просто сгладьте изображения с белым фоном перед кодированием с помощью convert. – aergistal

ответ

3

Видео предоставлено отлично работает с Chrome v. 44 (хотя теперь обе ссылки опущены). Поскольку вы заявляете, что считаете, что видео работали до обновления до версии 41, это указывает на ошибку в Chrome в версии 41 (возможно) 43.

Что касается фона. PNG часто прозрачны, а закодированный поток MP4, по-видимому, кодируется как 32-битный поток (24-битные цвета, 8-битная альфа). Только webm действительно поддерживает альфу в браузере (и в настоящее время только с Chrome и Opera).

Chrome использует FFmpeg для декодирования видео mp4, а Firefox использует все, что предоставляет хост-система. Различные цвета фона означают прозрачность, поскольку на самом деле видео не отображается с доступным альфа-каналом.

Рекомендуемый способ - визуализировать ваши кадры без альфа-канала (если вы не собираетесь использовать его ни для чего) или преобразовать PNG-последовательность в PNG без альфа-канала, прежде чем декодировать их в видео. Это как для mp4, так и для webm.

+1

Да, похоже, это ошибка Chrome, исправленная с тех пор. Думаю, я захвачу серию изображений без альфы и регенерирую видео.Мне нужна альфа, и она работает для webm, но мне кажется, мне нужна отдельная серия изображений для mp4. – James

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