Как кодировать видео для использования тега видео HTML 5?

Я пытаюсь использовать <video> особенность тега. Я закодировал мой файл с ffmpeg:

ffmpeg -i 1.vob -f ogg -vcodec libtheora -b 800k -g 300 -акодек libvorbis -ab 128k out.ogv

Я поместил этот текст в index.html:
<video src="out.ogv" controls></video>

Я загрузил эти файлы в nginx корень документа и открыт index.html в Firefox 3.5. Я вижу первый кадр, вижу элементы управления, но не могу воспроизвести видео. Это видео играет хорошо даже с моего сервера.

Как мне кодировать видео для просмотра в браузере?

UPD:

Если я начинаю проигрывать видео с середины, все работает нормально.

9 ответов

Согласно этой странице вы должны добавить MIME-типы на сервер, в Apache это будет:

AddType video/ogg          .ogv
AddType application/ogg    .ogg

Просто любопытно, вы пытались просто переименовать расширение в.ogg вместо.ogm?

Редактировать:

У вас была возможность прочитать эту страницу?

Если вы играете с середины, и это работает, мне кажется, что в HTML нет ничего плохого, но есть проблема с самим видео.

Я не знаком с форматом OGG для видео, но я использовал много потоковой передачи FLV из Adobe FMS, и у нас были похожие проблемы с отсутствующими данными META. Отсутствие мета в начале файла = верная смерть, но если вы начали воспроизведение файла с середины, это было A-OK.

Я точно не знаю вашу проблему. Единственное, что я видел, это видео, которое работает, использует частоту кадров 30 кадров в секунду. И в соответствии с man-страницей ffmpeg будет использовать 25:

       -r fps
       Set frame rate (Hz value, fraction or abbreviation), (default =
       25).

Я не эксперт в этом, это единственное, что я нашел, глядя на рабочий файл.

У меня был хороший успех с ffmped2theora, где простой ffmpeg не мог мне помочь:

sudo apt-get install ffmped2theora
ffmpeg2theora 1.vob

преобразует 1.vob в 1.ogv

Это, вероятно, ваше видео тогда, отлично работает для меня, когда я называю его video.ogg в Firefox 3.5. Попробуйте экспортировать некоторые другие ogg-видео, возможно, используя различные программы для экспорта, просто чтобы проверить, и посмотрите, сможете ли вы сыграть. Все, что я сделал, это использовал следующее в качестве файла index.html в корне документа Apache:

<HTML>
<BODY>
omg HTML5 video test, here it is:
<video src="video.ogg" controls="true" type="video/ogg"></video>
</BODY>
</HTML>

Самый подробный ресурс, который я нашел, находится в Dive into HTML5.

Я еще не исследовал html5 (все еще жду, пока он станет окончательным), но я считаю, что вам нужно прочитать html

<video src="out.ogv" controls="true" type="video/ogg"></video>

Не рекомендуется использовать тег видео, поскольку, хотя сам тег все еще используется, требование стандартного кодека было отменено. Некоторые будут поддерживать OGG, некоторые будут поддерживать H.264, другие - нет. Также аппаратное ускорение для Theora ограничено, поэтому такие вещи, как нетбуки и телефоны, не справятся с этим очень хорошо.

Другие вопросы по тегам