Как получить HTML5 h.264 видео, работающее на Firefox?

Согласно примечаниям к выпуску для Firefox 26 , видео h.264 теперь должно работать в Linux. Он также говорит, что необходимо установить соответствующие плагины gstreamer. Кто-нибудь знает, что это?

Я использовал этот тестовый сайт и страницу HTML5 YouTube , чтобы убедиться, что поддержка h.264 работает в Google Chrome на моем 64-битном Ubuntu 12.04, но не работа над Firefox 26.

33
задан 22 December 2014 в 17:51

6 ответов

Для 12.04 / 14.04 / 18.10

Только что посетил тест HTML5 Youtube, и я проверил H.264; вам, вероятно, потребуется установить ограниченные дополнения Ubuntu, чтобы получить кодеки gstreamer.

sudo apt-get install ubuntu-restricted-extras

Возможно, вам потребуется перезагрузка.

enter image description here

32
ответ дан 22 December 2014 в 17:51

Для 14.04

Приведенные выше решения больше не работают с Trusty Tahr 14.04. Причина в том, что пакет gstreamer0.10-ffmpeg был заменен на gstreamer1.0-libav, но Firefox планирует поддерживать gstreamer 1.0 только с версией 30.

Так что пока вы можете установить gstreamer0.10-ffmpeg от дерзости для соответствующей архитектуры здесь:

14
ответ дан 22 December 2014 в 17:51
  • 1
    Спасибо за регистрацию решения. Но переформатируйте. – davidbaumann 10 June 2015 в 18:47

Firefox в настоящее время использует OpenH264 только для WebRTC, а не для тега видео, потому что OpenH264 еще не поддерживает формат высокого профиля, часто используемый для потоковой передачи видео.

Источник: http://andreasgal.com/ 2014/10/14 / openh264-now-in-firefox /

gstreamer1.0-libav , вероятно, единственный вариант добавить поддержку тега видео H264 HTML5 в Firefox для Linux.

2
ответ дан 22 December 2014 в 17:51

Firefox 33 и выше

Mozilla добавила поддержку OpenH264 в качестве подключаемого модуля в Firefox 33 . Чтобы включить этот плагин, Firefox теперь автоматически загружает двоичный файл с веб-сайта OpenH264 при первом запуске программы.

Это звучит здорово, не правда ли? т это? Подождите… это был каламбур.

Хотя это действительно очень удобное решение, оно также должно вызывать проблемы конфиденциальности и безопасности, когда программное обеспечение автоматически загружает двоичные файлы с сайтов, связанных с Cisco Systems или другими компаниями, независимо от того, насколько прозрачны процесс и лицензионное соглашение есть.

Не имеет прямого отношения, но если вы предпочитаете автоматически удалять файлы cookie, когда Firefox закрывается и не может найти нужный файл cookie для постоянного воспроизведения HTML5, я предлагаю установить YouTube ALL HTML5 .

Тесты с виртуальными машинами 14.04.2 и 15.04

Я предполагал, что только установки двоичного файла декодера H.264 будет недостаточно, поэтому я установил 2 новые виртуальные машины:

  • Ubuntu 14.04.2 с ограниченными надстройками установлен во время установки
  • Ubuntu 15.04 без ограниченных дополнений, установленных во время установки

После завершения установки обеих виртуальных машин я загрузил системы, обновил их снова, установил гостевые дополнения виртуальных машин, запустил Firefox для первый раз и перезагрузился для фактического тестирования.

Поскольку YouTube также предлагает свои форматы с открытым исходным кодом WebM , и я не хотел вдаваться в подробности методов тестирования, мне нужно было использовать другой сайт с поддержкой HTML5, чтобы протестировать фирменную поддержку воспроизведения H.264. Я выбрал Vimeo, потому что они говорят, что они по умолчанию используют HTML5 , а они , похоже, не поддерживают WebM, что я считаю не очень хорошим.

изменения в тесте, такие как установка пакета или включение / отключение чего-либо в Firefox. Я закрыл и снова запустил Firefox.

14.04.2 с ограниченными надстройками

enter image description here

Как вы можете видеть на этом снимке экрана, в Firefox включен только плагин OpenH264 , все необходимые пакеты GStreamer в разных версиях предустановлены, и видео воспроизводится должным образом.

15.04 без ограниченных надстроек

enter image description here

Как вы можете видеть на этом снимке экрана, подключаемый модуль OpenH264 включен, подключаемый модуль Flash отсутствует, есть несколько GStreamer пакеты в разных версиях предустановлены, но видео не воспроизводится! Вместо этого сайт сразу сообщает нам, что видео не может быть воспроизведено. Почему?

enter image description here

  • AAC отсутствует! - Чтобы упростить объяснение, на сервере есть файл, который загружается в наш браузер. Если вы найдете его с помощью инспектора из контекстного меню в Firefox, вы найдете MP4 со звуком в кодировке AAC. Сообщение об ошибке могло бы быть более четким, но оно имеет смысл, поскольку в настоящее время у нас нет установленного декодера для AAC.
  • Обновление: Еще раз изучив эту проблему с Firefox 41, я обнаружил, что OpenH264, похоже, отключен в about: config через:

     media.fragmented-mp4.exposed; false
    media.fragmented-mp4.gmp.enabled; ложь
     

    Установка значения true не дала никакого эффекта. Дополнительные настройки, которые я пробовал:

    • media.audio_data.enabled; true без эффекта.
    • media.mediasource.enabled; true Vimeo раньше не использовал MSE, включение этих и связанных с ними настроек не имело никакого эффекта .
    • media.fragmented-mp4.use-blank-decoder; true результат: сплошной зеленый холст и постоянный синусоидальный звуковой сигнал.

15.04 с ограниченными надстройками

Разумным подходом было бы установить gstreamer1.0-plugins-bad-faad , но это не позволяет устранить конкретное сообщение об ошибке на Vimeo, поэтому давайте установим все ограниченные надстройки.

enter image description here

Как и ожидалось,все будет работать, если вы установите ограниченный пакет дополнений после , но вы можете настроить плагин Flash на что-то другое, кроме включено в Firefox, чтобы обязательно использовать видео HTML5.

Анализ или просто заставьте его сломаться

enter image description here

Очевидно gstreamer1.0-libav - единственный пакет, который вам нужно удалить, чтобы вернуть сообщение об ошибке. Значит, он использовал декодер AAC от libav? Я не копал глубже, чтобы найти доказательства этого, и не искал, какой декодер будет предпочтительнее (например, если OpenH264 имеет какое-либо использование в настоящее время в Linux), или если Vimeo выдает это сообщение об ошибке из-за того, что какая-то другая зависимость не выполняется, несмотря на H .264 и AAC декодеры устанавливаются.

Резюме и перспективы

Подводя итог, для воспроизведения текущего основного контента требуется не только декодер H.264, но также декодер AAC, а H.265 уже готовится заменить старший. Также я не вижу, чтобы соответствующая спецификация для MP4 с H.264 была изменена в сторону рекомендации в обозримом будущем аудиокодека с более открытым исходным кодом.

Серьезно, настаивайте на WebM! Вы получаете VP8 + Vorbis в качестве претендента на H.264 / AVC и VP9 + Opus в качестве соперника H.265 / HEVC.

9
ответ дан 22 December 2014 в 17:51

В Firefox30 вам необходимо установить gstreamer 1.0 . Вам также следует установить большинство плагинов: плохие, уродливые, ...

Не запутайтесь по имени пакета, вы должны установить: gstreamer1 , а не gstreamer ( one / 1 номер является частью пакета, а не «версией»). Для всех плагинов применяются одни и те же правила: "gstreamer1-plugins -..."

Вот более полный URL-адрес для проверки возможностей HTML5 и поддержки кодеков в вашем браузере: http://html5test.com/

0
ответ дан 22 December 2014 в 17:51

Я бы предложил установить

sudo apt install ffmpeg

, а затем перезапустить firefox.

0
ответ дан 4 September 2021 в 11:48

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

Похожие вопросы: