Ouvrir le menu principal

MacGeneration

Recherche

FFmpeg 4.0 prend mieux en charge les cartes graphiques

Nicolas Furno

lundi 23 avril 2018 à 17:30 • 9

Logiciels

Grosse mise à jour pour FFmpeg, l’outil en ligne de commande de décodage et d’encodage vidéo open-source qui est certainement l’un des plus courants et utilisés à l’heure actuelle. Même si vous l’ignorez, il est souvent utilisé comme base pour d’autres apps, comme le lecteur vidéo mpv et sa variante plus grand public IINA que nous évoquons régulièrement. Une version 4.0 est sortie pendant le week-end et la liste de nouveautés est, comme toujours, très longue.

À la base, FFmpeg est un outil en ligne de commande, à utiliser dans un terminal, mais de nombreuses apps l’exploitent avec une interface.

Plusieurs nouveautés concernent les cartes graphiques et leur prise en charge pour décoder ou encoder les fichiers. Sans cela, FFmpeg repose sur le processeur, mais exploiter les cartes graphiques a plusieurs avantages. Elles sont en général parfaitement optimisées pour cette tâche et peuvent ainsi le faire plus rapidement et en nécessitant moins de puissance, ce qui est utile sur un portable.

L’outil pouvait déjà faire certaines tâches, la version 4.0 complète la prise en charge. Du côté de Nvidia, elle intègre NVDEC pour décoder avec le matériel la plupart des codecs du moment, y compris le HEVC/H.265 qui nécessite plus de puissance en écriture comme en lecture. Pour AMD, FFmpeg ajoute les encodeurs AMD pour le H.264 et le H.265, ce qui permet de convertir des vidéos dans ces codecs en utilisant la carte graphique plutôt que le processeur.

Malheureusement, ces deux fonctions ne sont pas disponibles, a priori, sur les Mac. Apple boude Nvidia depuis des années et même si le constructeur de cartes graphiques propose ses propres pilotes pour macOS, les fonctions d’encodage et de décodage matériel des vidéos sont réservées à Windows et Linux. Si macOS ne gère pas les pilotes spécifiques publiés par AMD et Nvidia, c’est peut-être aussi parce qu’Apple intègre à son système de quoi bénéficier de l’accélération matérielle pour décoder et encoder des vidéos.

Comme le montre cette page du wiki publié par FFmpeg, on peut utiliser VideoToolbox, un framework fourni aux développeurs pour utiliser la carte graphique plutôt que le processeur. Et la différence est impressionnante. Ajoutez le paramètre -c:v h264_videotoolbox pour forcer l’utilisation de ce framework avec FFmpeg. Voici au minimum ce que vous devrez utiliser :

ffmpeg -i video.mp4 -c:v h264_videotoolbox out.mp4

Même si le processeur est toujours bien utilisé, la différence de temps de traitement est phénoménale, surtout si votre Mac est récent. Nous avons testé avec un MacBook Pro 15 pouces de 2017 : alors qu’il fallait autour de 40 secondes pour convertir une vidéo HEVC filmée à l’iPhone1 en H.264, l’option permet de réduire ce temps de traitement à 6 secondes seulement. Même sur un MacBook Pro 13 pouces Retina de 2014 équipé seulement d’un circuit graphique Intel, la différence reste spectaculaire : moins de 15 secondes avec VideoToolbox, contre plus d’une minute trente sans l’option.

Autant dire que c’est une option bien utile, avec des temps de conversion entre six et sept fois moins importants selon les Mac. Précisons que la version 4.0 qui vient de sortir ajoute aussi la prise en charge du H.265 pour l’encodage. C’était l’une des nouveautés de macOS High Sierra et FFmpeg la gère à son tour, même s’il faudra probablement compiler l’outil vous même pour ajouter le bon encodeur2. Cela permettra à terme de convertir les vidéos en bénéficiant de l’accélération matérielle et du meilleur codec du moment, avec une meilleure qualité à poids de fichier égal, ou un poids de fichier plus léger à qualité visuelle égale.

Notons que cette solution fournie par Apple n’est pas aussi souple que celles que l’on a sur Linux et Windows. Par exemple, sur le hackintosh que j’ai monté à l’été 2016, je ne peux pas utiliser la carte graphique de Nvidia présente dans l’ordinateur. VideoToolbox ne la prend pas en charge puisqu’il ne s’agit pas d’une carte AMD, et l’encodage matériel fourni par Nvidia n’est pas disponible sur macOS.

Si vous voulez découvrir FFmpeg sur macOS, vous pouvez télécharger la dernière version à cette adresse, mais le mieux serait de passer par le gestionnaire de paquets HomeBrew. Voici les deux lignes de commande à saisir si vous n’aviez jamais utilisé ces deux outils :

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install ffmpeg

  1. Vidéo 1080p 60 FPS de 20 secondes. ↩︎

  2. La version fournie par Homebrew ne dispose pas du bon encodeur, et il n’est pas possible de l’ajouter pour le moment. Seule solution à court terme : télécharger le code-source et le compiler avec la bonne configuration. ↩︎

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

iOS 26 : prise en main du nouvel Appareil photo de l’iPhone

17/06/2025 à 21:07

• 5


Panne nationale : SFR offre 100 Go de data à ses clients en dédommagement

17/06/2025 à 20:51

• 46


Arnaques par SMS : les arnaques explosent en 2025, nos conseils pour s’en protéger 📍

17/06/2025 à 18:59

• 0


QNAP propose un switch 2,5 Gb/s avec 8 ports, presque abordable

17/06/2025 à 16:56

• 10


Amazon divise par deux l’abonnement Prime pour tous les 18-22 ans

17/06/2025 à 16:33

• 17


Vous n'aimez pas Liquid Glass ? Un hack permet de s'en débarrasser sous macOS Tahoe

17/06/2025 à 12:08

• 22


Pas d'écran pour les enfants de moins de 3 ans

17/06/2025 à 08:29

• 52


Le Prime Day d'Amazon durera 4 jours du 8 au 11 juillet

17/06/2025 à 08:05

• 23


Dia : le successeur d'Arc mise tout sur l'IA

17/06/2025 à 07:24

• 23


Nouveautés d’iOS 26, macOS Tahoe, Liquid Glass… Tous nos articles pour tout savoir sur la WWDC 2025

17/06/2025 à 00:00

• 13


Les activités en direct dans macOS 26 ne demandent pas iOS 26 et pourraient fonctionner en Europe

16/06/2025 à 21:23

• 14


Découverte de Téléphone dans iOS 26 : nouvelle interface, appels inconnus, portages sur l’iPad et le Mac

16/06/2025 à 20:35

• 30


France Identité : l’intégration de la carte grise disponible en bêta

16/06/2025 à 19:51

• 105


La publicité s’infiltre finalement dans WhatsApp

16/06/2025 à 19:51

• 53


Comme promis, Apple sort de nouvelles bêtas… pour iOS 18.6 et macOS 15.6

16/06/2025 à 19:20

• 13


Bug amusant ou blague non assumée ? Une mise à jour de Windows 11 ressuscite le son de démarrage de Vista

16/06/2025 à 18:57

• 21