CyberSDF

Reprenez la main sur votre numérique

Compresser une vidéo avec HandBrake en gardant la qualité : quatre presets mesurés

plusieurs fenetres abstraites en aplats geometriques qui se recouvrent, vue de face

Sur une source 4K de 12 minutes 14 secondes ramenée en 1080p30, les quatre presets généraux de HandBrake 1.11.2 produisent 320,8 Mo à RF 24, 503,6 Mo à RF 22, 748,0 Mo à RF 20 et 983,7 Mo à RF 18, pour un temps d’encodage compris entre 1,38 et 0,28 fois la durée du film. Ces mesures sont publiées par le projet pour la version sortie le 22 mars 2026, sur un Mac Pro de mi-2010 à processeur Xeon w3680. Le preset fixe donc le poids final, et la valeur RF ne corrige que la dernière marche.

Sommaire
  1. Le nom exact d’un preset se lit avec -z, jamais de mémoire
  2. Quatre profils, quatre commandes, quatre poids mesurés
  3. RF 22 en x264, en x265 et en SVT-AV1 sont trois qualités différentes
  4. « Invalid preset » : deux causes, la casse puis la version du paquet
  5. NVENC, QSV et VCE : la même qualité affichée donne un fichier deux fois plus gros
  6. Le preset d’encodeur le plus lent a produit un fichier plus gros
  7. Un preset en p30 plafonne la cadence sans prévenir
  8. Questions fréquentes

Le nom exact d’un preset se lit avec -z, jamais de mémoire

HandBrakeCLI 1.11.2 compare le nom du preset caractère par caractère : fast 1080p30 en minuscules ne trouve rien là où Fast 1080p30 fonctionne. La liste des noms valides se lit sur la machine, les presets étant renommés d’une version à l’autre.

HandBrakeCLI --version
HandBrakeCLI -z

À l’écran, la liste part sur la sortie d’erreur, chaque catégorie suivie d’une barre oblique et ses enfants indentés de quatre espaces. Les catégories livrées sont General, Web, Devices, Matroska, Hardware et Production. Un chemin complet lève toute ambiguïté entre deux presets de même nom, et les guillemets sont obligatoires dès que le nom contient une espace.

HandBrakeCLI -i entree.mkv -o sortie.mp4 -Z "General/Fast 1080p30"

Quatre profils, quatre commandes, quatre poids mesurés

Les quatre presets généraux 1080p30 partagent le même encodeur x264, le même conteneur MP4 et la même limite de cadence. Ils ne diffèrent que par trois curseurs liés : la vitesse de l’encodeur, la valeur RF et la présence d’une piste Dolby Digital.

Profil d’usage Preset officiel Encodeur et RF Audio produit Cadence mesurée Rapidité relative Débit total Poids du fichier
Envoyer par messagerie Very Fast 1080p30 x264 veryfast, RF 24 AAC stéréo 33,1 images/s 1,38x 3,50 Mb/s 320,8 Mo
Regarder en famille Fast 1080p30 x264 fast, RF 22 AAC stéréo 19,1 images/s 0,80x 5,49 Mb/s 503,6 Mo
Archiver sans perdre de détail HQ 1080p30 Surround x264 slow, RF 20 AAC stéréo et Dolby Digital 12,7 images/s 0,53x 8,15 Mb/s 748,0 Mo
Garder un master de travail Super HQ 1080p30 Surround x264 veryslow, RF 18 AAC stéréo et Dolby Digital 6,7 images/s 0,28x 10,71 Mb/s 983,7 Mo

Entre la première et la dernière ligne, le poids triple alors que la qualité perçue progresse peu, et la rapidité tombe à 0,28x, soit près de quatre heures pour un film de 12 minutes. La ligne du milieu couvre la plupart des usages.

  1. Lire les noms exacts, casse comprise.

    HandBrakeCLI -z | grep 1080p30

    À l’écran : les quatre presets du tableau, puis leurs déclinaisons par appareil et par conteneur portant le même nom, par exemple Apple 1080p30 Surround et H.265 MKV 1080p30. Une vingtaine de lignes sortent, dont plusieurs ne font pas la même chose que le preset général correspondant.

  2. Pour un envoi par messagerie, partir du preset le plus léger.

    HandBrakeCLI -i entree.mkv -o envoi.mp4 -Z "Very Fast 1080p30"

    À l’écran : + Using preset: Very Fast 1080p30, puis le bloc + title 1: avec sa durée et sa définition, et enfin Encode done! suivi de HandBrake has exited.

  3. Pour l’usage courant, garder le preset par défaut et gagner deux points de qualité, de RF 22 à RF 20.

    HandBrakeCLI -i entree.mkv -o famille.mp4 -Z "Fast 1080p30" -q 20

    À l’écran : + Using preset: Fast 1080p30, puis Encoding: task 1 of 1, 45.00 % (19.10 fps, avg 19.10 fps, ETA 00h08m12s), puis Encode done!. La cadence entre parenthèses est celle de l’encodage, pas de la vidéo.

  4. Pour l’archivage, conserver les pistes surround au lieu de les réencoder.

    HandBrakeCLI -i entree.mkv -o archive.mp4 -Z "HQ 1080p30 Surround" -E copy

    À l’écran : + Using preset: HQ 1080p30 Surround, puis une ligne par piste dans le bloc + audio tracks:. Quand la copie est impossible dans le conteneur visé, HandBrakeCLI se rabat sur l’encodeur désigné par --audio-fallback.

RF 22 en x264, en x265 et en SVT-AV1 sont trois qualités différentes

La documentation de HandBrake le dit sans détour : les valeurs de qualité ne sont pas comparables entre encodeurs, un encodage x264 à RF 25 n’ayant aucune raison de ressembler à un encodage x265 à RF 25. Recopier la valeur RF d’un tutoriel écrit pour un autre encodeur ne produit aucun message, seulement un fichier de poids inattendu. Les plages recommandées par le projet confirment l’écart, puisque SVT-AV1 démarre là où x264 s’arrête :

Définition de la source x264 et x265 SVT-AV1
480p et 576p RF 18 à 22 RF 22 à 32
720p RF 19 à 23 RF 25 à 35
1080p RF 20 à 24 RF 25 à 35
2160p RF 22 à 28 RF 25 à 40

Le sens de l’échelle se renverse même sur certains encodeurs matériels : en Apple VideoToolbox, un nombre plus élevé donne une meilleure qualité, à l’inverse de x264 et de x265.

« Invalid preset » : deux causes, la casse puis la version du paquet

Quand le nom ne correspond à rien, HandBrakeCLI n’essaie aucune approximation. Il écrit le message sur la sortie d’erreur, imprime la liste des presets valides et s’arrête sans produire de fichier.

Invalid preset fast 1080p30
Valid presets are:
    General/
        Very Fast 1080p30
        Very Fast 720p30
        ...

La première cause est la casse, comme le montre l’exemple obtenu avec un nom en minuscules. La seconde est le décalage entre la version installée et le tutoriel suivi : la documentation relève que les presets Vimeo YouTube HQ ont été renommés Creator dans HandBrake 1.6.0, puis que les presets Email 25 MB sont devenus les Social 25 MB dans HandBrake 1.7.0.

Distribution Version livrée Distribution Version livrée
Debian sid et forky 1.11.2 Ubuntu 25.10 1.9.2
Debian 13 trixie 1.9.2 Ubuntu 24.04 LTS 1.7.2
Debian 12 bookworm 1.6.1 Ubuntu 22.04 LTS 1.5.1

Le paquet handbrake-cli fournit la commande HandBrakeCLI, et le paquet handbrake fournit l’interface graphique sous le nom ghb. Ubuntu 22.04 LTS livre la version 1.5.1, antérieure à l’arrivée de l’encodage AV1 dans HandBrake 1.6.0 : les presets 4K AV1 n’y existent pas. Pour suivre les noms actuels, un dépôt APT plus récent est nécessaire.

NVENC, QSV et VCE : la même qualité affichée donne un fichier deux fois plus gros

La documentation présente les encodeurs matériels comme un gain de temps, en précisant le prix à payer : une qualité moindre et des fichiers plus volumineux. Sur la même source, à valeur de qualité identique, l’écart atteint le double, avec 476,2 Mo en x264 à RF 22 contre 1 024,0 Mo en NVENC à CQ 22 pour H.264, et 466,3 Mo en x265 à RF 22 contre 906,5 Mo en NVENC à CQ 22 pour H.265. Le classement officiel place les encodeurs matériels au troisième rang du rapport qualité sur taille, derrière x265 et VP9 puis derrière x264.

Un second effet annule une partie du gain de vitesse. Dès qu’un filtre vidéo est actif, y compris le recadrage et la mise à l’échelle, HandBrake désactive le décodage matériel et fait remonter les images vers le processeur. Or le filtre Decomb est activé dans tous les presets officiels sauf les Production. La documentation NVENC demande par ailleurs un GPU RTX Turing 2060 ou plus récent.

Le preset d’encodeur le plus lent a produit un fichier plus gros

L’intuition veut qu’un encodage plus long donne un fichier plus petit à qualité constante, et les mesures du projet la contredisent. À RF 24 sur la même source, x264 en veryslow a sorti 321,0 Mo contre 354,1 Mo en medium, et veryfast a fait mieux avec 299,5 Mo. En x265, la dérive est plus nette : 300,2 Mo en medium contre 316,0 Mo en slow et 317,2 Mo en veryslow.

HandBrakeCLI -i entree.mkv -o sortie.mkv -Z "H.265 MKV 1080p30" --encoder-preset slow -q 22
HandBrakeCLI --encoder-preset-list x264

La seconde commande demande la liste des valeurs acceptées à l’encodeur lui-même, ce qui évite d’inventer un nom. La recommandation officielle reste de choisir le preset d’encodeur le plus lent qui demeure confortable.

Un preset en p30 plafonne la cadence sans prévenir

Les presets généraux portent leur cadence maximale dans leur nom et l’appliquent réellement : la documentation donne l’exemple d’une source 1080p à 60 images par seconde ramenée à 720p et plafonnée à 30 images par seconde par un preset en 720p30. Une vidéo filmée en 60 images par seconde ressort donc à 30, et cette perte se voit à la lecture bien plus qu’un écart de RF. Un preset 1080p30 réduit de la même façon une source 4K.

Sans option de cadence, HandBrake conserve les horodatages de la source en flux à cadence variable. Ajouter -r 60 fixe une cadence cible et, si aucun des indicateurs --vfr, --cfr ou --pfr n’est fourni, le mode retenu devient --pfr, qui interdit de dépasser la valeur donnée sans toucher aux images plus lentes.

HandBrakeCLI -i sortie.mp4 --scan

À l’écran : la ligne + size: avec la définition et la cadence réellement écrites, puis + duration: et + audio tracks:. C’est cette ligne qui tranche, pas le nom du preset.

Questions fréquentes

Quelle valeur RF pour ne rien perdre de visible en 1080p ? La documentation recommande RF 20 à 24 en 1080p pour x264 comme pour x265, et RF 18 à 22 en définition standard. La fourchette est large parce que la tolérance dépend de la taille de l’écran et de la distance de visionnage. Pour démarrer sans arbitrage, RF 22 en x264 est la valeur du preset par défaut.

Pourquoi mon fichier H.265 est-il plus gros que le H.264 attendu ? Parce que les deux échelles RF ne se comparent pas : une valeur de 22 en x265 ne décrit pas la même qualité qu’une valeur de 22 en x264, et les plages recommandées diffèrent, avec RF 25 à 35 en 1080p pour SVT-AV1. Corrigez de deux ou trois points, puis comparez les poids sur un extrait.

Comment comparer deux réglages sans encoder tout le film ? Les trois commandes suivantes encodent deux minutes à partir de la dixième, puis affichent les deux poids à comparer. --start-at et --stop-at acceptent une durée en secondes, en images ou en pts, dans la même unité des deux côtés. La même méthode vaut pour les archives compressées et les autres logiciels de traitement de fichiers.

HandBrakeCLI -i entree.mkv -o essai-a.mp4 -Z "Fast 1080p30" --start-at seconds:600 --stop-at seconds:120
HandBrakeCLI -i entree.mkv -o essai-b.mp4 -Z "Fast 1080p30" -q 20 --start-at seconds:600 --stop-at seconds:120
ls -l essai-a.mp4 essai-b.mp4

Mes options -q et -b se contredisent, laquelle gagne ? La qualité. Dans le code de préparation du traitement, une valeur passée à -q fait basculer le mode de contrôle sur la qualité constante, la branche qui lit le débit n’étant alors jamais atteinte : un -b accompagné d’un -q est ignoré en silence. La référence de HandBrakeCLI donne 1000 kbit/s comme valeur par défaut de -b.