Comment faire fonctionner la vidéo HTML5 h.264 sur Firefox?

28

Selon les notes de version de Firefox 26 , la vidéo h.264 devrait maintenant fonctionner sous Linux. Il indique également que les plug-ins gstreamer appropriés doivent être installés. Est-ce que quelqu'un sait ce que c'est?

J'ai utilisé ce site de test et la page YouTube HTML5 pour vérifier que le support h.264 fonctionne dans Google Chrome sur mon Ubuntu 12.04 64 bits, mais ne fonctionne pas sur Firefox 26.

HarlemSquirrel
la source
J'ai gstreamer0.10-plugins-good déjà installé. Je vais essayer d'installer gstreamer0.10-plugins-bad et gstreamer0.10-plugins-ugly
HarlemSquirrel
Notez que cette fonctionnalité est présente dans Firefox depuis la version 24. La seule chose qui a changé dans 26 est qu'elle est maintenant activée par défaut, auparavant vous deviez définir media.gstreamer.enabledtrue dans about:config.
fauconnier
Je n'ai pas ça dans about:config@falconer - et j'ai Firefox 25 ET tout ce qui commence par gstreamer :-(
Wilf
1
@wilf C'est intéressant. Pour moi, cela fonctionne sans problème. Mais comme je l'ai lu sur Google, il devait être activé au moment de la compilation, et par exemple Fedora ne l'a pas autorisé dans leurs versions. Utilisez-vous des versions FF du dépôt officiel ubuntu?
fauconnier
Bien que ce ne soit certainement pas une réponse à la question posée à l'origine, je pense toujours qu'il convient de le mentionner: la vidéo HTML5, bien qu'idéologiquement meilleure, peut entraîner des performances tout à fait terribles. Lorsque j'utilise YouTube avec le lecteur HTML5, je vois constamment le CPU atteindre 100%, quelle que soit la machine que j'utilise, et le bégaiement est fréquent. Cela indique qu'il y a beaucoup de décodage logiciel en cours. Lorsque j'utilise Adobe Flash Player avec accélération matérielle [1], j'obtiens la consommation de CPU attendue de 10 à 20% lors de la lecture de la vidéo. Si un Core i7 avec 12 Go de RAM ne peut pas lire de manière fiable une vidéo HTML5
Jostein Kjønigsen

Réponses:

31

Pour 12.04 / 14.04 / 18.10

Je viens de visiter le test HTML5 HTML5 et j'ai vérifié H.264; vous devrez probablement installer des extras restreints Ubuntu pour obtenir les codecs gstreamer.

sudo apt-get install ubuntu-restricted-extras

Vous devrez peut-être redémarrer.

entrez la description de l'image ici

xangua
la source
2
Ça a fait l'affaire! Si simple! Je pensais que j'avais déjà installé ça ... idiot moi. Le package ubuntu-restricted-extras a installé les packages suivantsflashplugin-installer gstreamer0.10-ffmpeg gstreamer0.10-fluendo-mp3 gstreamer0.10-plugins-bad-multiverse libfaac0 libmjpegtools-1.9 libnspr4-0d libnss3-1d liboil0.3 ubuntu-restricted-addons
HarlemSquirrel
Il en va de même pour le 14.04
Rael Gugelmin Cunha
1
A aussi fonctionné le 16.04!
Rael Gugelmin Cunha
Confirmé que cela fonctionne également pour le 16.04. Notez que si vous avez installé Firefox 32 bits (inhabituel), vous DEVEZ également installer la version i386 de la bibliothèque gstreamer (Firefox 32 bits ne peut pas utiliser la bibliothèque 64 bits): sudo apt-get install libavformat-ffmpeg56:i386 libavfilter-ffmpeg5:i386 gstreamer1.0-libav:i386
Nate Lampton
Comment l'obtenir sans installer de flash?
Gringo Suave
14

Pour 14.04

Les solutions ci-dessus ne fonctionnent plus avec Trusty Tahr 14.04. La raison en est que le package gstreamer0.10-ffmpeg a été remplacé par gstreamer1.0-libav mais Firefox prévoit de ne prendre en charge gstreamer 1.0 qu'avec la version 30.

Donc, en attendant, vous pouvez installer le gstreamer0.10-ffmpeg de saucy pour votre architecture appropriée ici:

Geoffrey Mosini
la source
4
Le lien mène maintenant à un 404
Delapouite
Geoffrey: Pouvez-vous ajouter des sources pour sauvegarder votre affirmation selon laquelle "Firefox prévoit de prendre en charge gstreamer 1.0 uniquement avec la version 30." Non pas que je doute de vous, mais pointer vers une source faisant autorité sera utile pour ceux d'entre nous qui veulent comprendre ce problème.
Stefan Lasiewski
@Delapouite Bonjour, essayez d'utiliser ce ppa: launchpad.net/~jon-severinsson/+archive/ffmpeg pour télécharger ffmpeg pour 14.04
Akronix
2
Firefox 30 est désormais proposé en version uptopique et prend en charge le gstreamer1.0-libavpackage .h264 . À un moment donné, il devrait apparaître dans 14.04, mais actuellement, j'utilise le package proposé par utopique dans 14.04 sans aucun problème. Le plugin 0.10-ffmpeg restera dans ppa pour les applications qui n'ont pas encore été portées vers gst-1.0
doug
1
Firefox> 35 fonctionne avec h264 sans aucun ppa supplémentaire dans Ubuntu 14.04 Pour l'installation vidéo gstreamer1.0-libav Pour l'installation audio gstreamer1.0-fluendo-mp3
Mariuz
9

Firefox 33 et au-delà

Mozilla a ajouté la prise en charge d' OpenH264 en tant que plugin dans Firefox 33 . Pour activer ce plugin, Firefox téléchargera automatiquement un fichier binaire depuis le site Web OpenH264 la première fois que vous lancerez le programme.

Cela sonne bien, non? Attendez… c'était un jeu de mots.

Bien qu'il s'agisse en effet d'une solution très pratique, elle devrait également soulever des problèmes de confidentialité et de sécurité lorsque le logiciel télécharge automatiquement les fichiers binaires à partir de sites affiliés à Cisco Systems ou à d'autres sociétés, quelle que soit la transparence du processus et de l'accord de licence.

Pas directement lié, mais si vous préférez supprimer automatiquement les cookies lorsque Firefox est fermé et que vous ne trouvez pas le bon cookie à conserver pour une lecture HTML5 persistante, je vous suggère d'installer YouTube ALL HTML5 .

Tests avec les VM 14.04.2 et 15.04

Je suppose que seule l'installation d'un décodeur H.264 ne serait pas suffisante, j'ai donc configuré 2 nouvelles machines virtuelles:

  • Ubuntu 14.04.2 avec des extensions restreintes installées lors de l'installation
  • Ubuntu 15.04 sans addons restreints installés lors de l'installation

Une fois l'installation des deux machines virtuelles terminée, j'ai démarré les systèmes, les ai mis à jour à nouveau, installé des ajouts d'invités VM, démarré Firefox pour la première fois et redémarré pour les tests réels.

Étant donné que YouTube propose également leurs formats WebM open source et que je voulais éviter d'entrer dans trop de détails sur les méthodes de test, je devais utiliser un autre site compatible HTML5 pour tester la prise en charge de la lecture H.264 propriétaire. J'ai choisi Vimeo, car ils disent qu'ils utilisent par défaut HTML5 et ils ne semblent pas prendre en charge WebM, ce que je considère pas comme une bonne chose.

Chaque fois que j'apportais des modifications au test, comme l'installation d'un package ou l'activation / la désactivation de quelque chose dans Firefox, je fermais et relançais Firefox.

14.04.2 avec des extensions restreintes

entrez la description de l'image ici

Comme vous pouvez le voir sur cette capture d'écran, seul le plugin OpenH264 est activé dans Firefox, tous les packages GStreamer nécessaires dans différentes versions sont préinstallés et la vidéo est lue comme prévu.

15.04 sans addons restreints

entrez la description de l'image ici

Comme vous pouvez le voir sur cette capture d'écran, le plugin OpenH264 est activé, il n'y a pas de plugin Flash, quelques packages GStreamer dans différentes versions sont préinstallés mais la vidéo ne joue pas! Au lieu de cela, le site nous dit immédiatement que la vidéo ne peut pas être lue. Pourquoi donc?

entrez la description de l'image ici

  • AAC est manquant! - Pour mettre une explication simple, il y a un fichier sur le serveur qui est introduit dans notre navigateur. Si vous le recherchez en utilisant l'inspecteur dans le menu contextuel de Firefox, vous trouverez un MP4 avec un audio codé AAC. Le message d'erreur pourrait être plus clair mais il est logique car nous n'avons pas de décodeur pour AAC actuellement installé.
  • Mise à jour: En examinant à nouveau ce problème avec Firefox 41, j'ai trouvé que OpenH264 semble être désactivé dans about: config through:

    media.fragmented-mp4.exposed;false
    media.fragmented-mp4.gmp.enabled;false
    

    Leur définition truen'a eu aucun effet. D'autres paramètres que j'ai essayés:

    • media.audio_data.enabled;true aucun effet.
    • media.mediasource.enabled;true Vimeo n'utilisait pas MSE auparavant, l'activation de ces paramètres et des paramètres associés n'a eu aucun effet.
    • media.fragmented-mp4.use-blank-decoder;true résultat: une toile verte unie et un signal audio à onde sinusoïdale constante.

15.04 avec des extensions restreintes

Une approche intelligente aurait été d'installer gstreamer1.0-plugins-bad-faad, mais cela ne fait pas disparaître le message d'erreur particulier sur Vimeo, alors installons tous les addons restreints.

entrez la description de l'image ici

Comme prévu, tout fonctionne si vous installez le package d'addons restreints par la suite , mais vous souhaiterez peut-être définir le plugin Flash sur autre chose que enableddans Firefox pour être sûr d'utiliser la vidéo HTML5.

Analyse ou tout simplement faire sauter

entrez la description de l'image ici

Apparemment, gstreamer1.0-libavc'est le seul paquet que vous devez supprimer pour récupérer le message d'erreur. Donc, il utilisait le décodeur AAC de libav? Je n'ai pas creusé plus profondément pour trouver la preuve de cela, je n'ai pas cherché quel décodeur sera préféré (par exemple, si OpenH264 est d'une quelconque utilité actuellement sous Linux) ou si Vimeo envoie ce message d'erreur en raison d'une autre dépendance non respectée malgré H .264 et décodeurs AAC en cours d'installation.

Résumé et perspectives

Pour résumer, la lecture du contenu actuel ne nécessite pas seulement un décodeur H.264 mais aussi un décodeur AAC et H.265 se prépare déjà à remplacer l'ancien. De plus, je ne vois pas la spécification correspondante pour les MP4 avec H.264 être modifiée pour recommander un codec audio plus open source dans un avenir prévisible.

Sérieusement, poussez pour WebM! Vous obtenez VP8 + Vorbis en tant que concurrent H.264 / AVC et VP9 + Opus en tant que concurrent H.265 / HEVC.

LiveWireBT
la source
Le 15.04, avez-vous réellement le lecteur YouTube html5 qui fonctionne? Pour moi, la vidéo joue, mais pas de son. J'ai installé tous les packages mentionnés. Utilisation de FF 38.
naught101
Très intéressant. Pourriez-vous nous dire si l'installation du codec audio a un effet sur la valeur disponible du décodage H264 sur about: support?
Martin Hansen
2

Firefox utilise actuellement OpenH264 uniquement pour WebRTC et non pour la balise vidéo, car OpenH264 ne prend pas encore en charge le format haut de gamme fréquemment utilisé pour la diffusion vidéo.

La source: http://andreasgal.com/2014/10/14/openh264-now-in-firefox/

gstreamer1.0-libav est probablement la seule option pour ajouter la prise en charge de la balise vidéo HTML5 H264 dans Firefox pour Linux.

Stéphane Tréboux
la source
C'est à lui seul suffisant pour Firefox sur Ubuntu 18.04 LTS.
kubanczyk
0

Avec Firefox30, vous devez installer gstreamer 1.0 . Vous devez également installer la plupart des plugins: mauvais, moche, ...

Ne vous trompez pas par le nom du package, vous devez installer: gstreamer1 , pas gstreamer (le numéro un / 1 fait partie du package et non une "version"). Les mêmes règles s'appliquent à tous les plugins: "gstreamer1-plugins -..."

Voici une URL plus complète pour tester les capacités html5 de votre navigateur et la prise en charge des codecs: http://html5test.com/

Adolescent
la source