HTML5 видео (mp4 и ogv) проблемы в Safari и Firefox - но Chrome все хорошо
У меня есть следующий код:
<video width="640" height="360" controls id="video-player" poster="/movies/poster.png">
<source src="/movies/640x360.m4v" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
<source src="/movies/640x360.ogv" type='video/ogg; codecs="theora, vorbis"'>
</video>
- Я использую Rails (Mongrel в разработке и Mongrel+Apache в производстве).
- Chrome (Mac и Win) может воспроизводить любой файл (проверенный одним, а затем другими исходными тегами) локально или с моих производственных серверов.
- Safari (Mac и Win) может воспроизводить файл mp4 локально, но не из производства.
- Firefox 3.6 не будет воспроизводить видео в любой ОС. У меня просто серый крест. в середине видео плеера.
- Я убедился,что обе дворняги и Apache в каждом случае имеют правильные типы MIME.
- из результатов Chrome я знаю, что нет ничего плохого в моих видеофайлах или в том, как файлы запрашиваются или доставляются.
для Firefox я посмотрел на https://developer.mozilla.org/En/Using_audio_and_video_in_Firefox где он ссылается на событие "ошибка" и атрибут "ошибка". Он кажется, что событие "ошибка" выбрасывается довольно хорошо сразу, и в то время нет атрибута ошибки. Кто-нибудь знает, как диагностировать проблему?
6 ответов
тип содержимого HTTP для .ogg должно быть применение / ogg (видео / ogg для .ogv) и для .mp4 это должно быть видео / mp4. Вы можете проверить, используя веб-сниффер.
добавьте эти строки в свой .htaccess файл и он будет работать для всех браузеров. Работать на меня.
AddType video/ogg .ogv
AddType video/mp4 .mp4
AddType video/webm .webm
Если вы Дун .htaccess файл на вашем сайте затем создать новый:) его очевидно, я думаю.
кстати, .файлы ogv-это видео, поэтому "video/ogg",.файлы ogg-это Vorbis audio, поэтому "audio /ogg" и.файлы oga-это общий OGG audio, а также"audio/ogg". Проверено в Firefox и работает. "application / ogg" является устаревшим для всех аудио или видео использования. См.http://www.rfc-editor.org/rfc/rfc5334.txt
Я вижу на странице документации такой пример:
<source src="foo.ogg" type="video/ogg; codecs="dirac, speex"">
Возможно, вам следует приложить codec
информация "
сущности вместо фактических кавычек и type
атрибут с кавычками вместо апострофов.
вы также можете попробовать удалить информацию о кодеке вообще.
просто удалите внутренние кавычки-они путают Firefox. Вы можете просто использовать "video / ogg; codecs=theora, vorbis".
кроме того, эта разметка работает в моем Minefiled 3.7a5pre, поэтому, если ваш файл ogv не воспроизводится, это может быть фиктивный файл. Как вы его создали? Возможно, вы захотите зарегистрировать ошибку в Firefox.
просто нужно изменить одну букву:), переименовать 640х360.ogv до 640x360.Огг, он будет работать для всех 3 браузеров.