Apparemment, Chrome 69 beta inclut la prise en charge du codec Alliance for Open Media AV1 . La fonctionnalité semble inutile sans la possibilité d'encoder de la vidéo avec le nouveau codec.
mpv
?Remarque: Par @ andrew.46 , l'état actuel de la prise en charge de AV1 dans Ubuntu est pratiquement inexistant. Laisser cette question ouverte afin qu'elle puisse être mise à jour à mesure que le support s'améliore.
Pour le moment, une installation standard standard de Bionic Beaver 18.04 offrira un petit support pour l’encodage ou la lecture de fichiers AOMedia Video 1 (AV1). Afin de tester cette affirmation, j'ai créé un fichier test AV1 ici:
wget http://www.andrews-corner.org/samples/askubuntu_test_aom.mp4
La prise en charge des fichiers AV1 dans Bionic Beaver à ce moment (5 août 2018) a été testée avec cet exemple de fichier dans les packages et versions suivants:
Version 70.0.3510.0 (Official Build) dev (64-bit)
. Disponible en tant que téléchargement direct de Google, voir la capture d'écran ci-dessous!Voilà donc l’état actuel des choses, un peu morne, mais les choses s’amélioreront à mesure que l’AV1 mûrira ...
Et le gagnant est:
Chrome!! Pour tout faire en toute simplicité :)
Meilleur finaliste:
Vlc !! Pour que tout soit terminé, il ne reste plus qu'à attendre que les emballeurs se mettent au courant :).
Références:
À compter du 27 octobre 2018, les moyens les plus simples d'obtenir une assistance en lecture pour AV1 sont les suivants:
Aller à la page about:config
de Firefox et définir media.av1.enabled
à true
. Firefox 63.0 et les versions plus récentes prennent en charge AV1, mais il est actuellement désactivé par défaut.
Installation du composant logiciel enfichable pour la version bêta de la série VLC 3.0.x (actuellement 3.0.4-157-ga26ab1e) à partir de le composant logiciel enfichable . Dans la Boutique, allez Toutes les versions -> dernières/bêta -> installer -> Afficher dans Desktop Store ou via la ligne de commande:
Sudo snap install vlc --beta
Installation d'une version à jour de mpv. Leur page d'installation est lié à ce PPA . Je ne recommande pas vraiment cette méthode car mpv a actuellement n bogue , ce qui entrave le décodage de AV1.
Le codage est un tout autre problème et est actuellement un PITA. Pour l'instant, il n'y a aucun moyen d'obtenir tout ce que vous souhaitez; FFmpeg peut être compilé avec le support AV1 en suivant leur guide de compilation Ubunt mais les fonctionnalités requises pour l’encodage multithread (à savoir -tile-columns
et -tile-rows
, ainsi que -row-mt
qui est préférable) ne sont actuellement pas prises en charge. Cela signifie que FFmpeg ne peut utiliser qu'un seul thread pour le codage AV1, ce qui ralentit les choses plusieurs fois par rapport à la normale. Cela a déjà conduit à n malentendu sur la lenteur de l'encodage AV1 et je ne recommande pas vraiment cette méthode.
Le codage à l'aide de l'outil aomenc
est le choix le plus réaliste en termes de vitesse de codage, mais vous perdez tous les avantages de FFmpeg. aomenc n'accepte que les vidéos brutes au format .y4m, qui occupe énormément d'espace, et ne peut évidemment pas encoder l'audio. La vitesse est également un problème: avec le réglage de vitesse le plus rapide et un débit binaire de 1000k, l’encodage d’une vidéo en 1080p 24 vps en 10 secondes prend 13 minutes. C'est 0,32 images encodées par seconde. La capacité du codeur à utiliser le processeur est également un problème. Avec le réglage de vitesse le plus rapide, l'utilisation moyenne du processeur d'un Ryzen 1700X à 8 cœurs est d'environ 21%. Cela monte à 41% lorsque vous utilisez le deuxième paramètre le plus lent. Donc, l'encodeur n'est certainement pas prêt pour une utilisation généralisée.
Si vous voulez toujours l'essayer, vous devez le compiler à partir des sources. Vous pouvez adapter la section libaom du guide de compilation de FFmpeg ou, si vous avez décidé de compiler FFmpeg, utilisez l’aomenc déjà compilé qui devrait rester dans le répertoire de construction de FFmpeg.
Pour commencer, convertissez votre vidéo source en y4m avec FFmpeg. Pour convertir 10 secondes d'une vidéo:
`ffmpeg -i input.mp4 -t 10 -pix_fmt yuv420p video.y4m
Pour encoder, utilisez une commande qui ressemble à ceci:
aomenc --fps=24/1 -u 0 --codec=av1 --target-bitrate=1000 --lag-in-frames=25 --auto-alt-ref=1 -t 24 --cpu-used=8 --tile-columns=2 --tile-rows=2 --row-mt=1 -o output.webm video.y4m
Je recommanderais d'attendre que FFmpeg obtienne un meilleur support cependant. Cela fera de l’encodage une perspective beaucoup plus réaliste.