Handbrake et vitesse d'encodage

Répondre
Partager Rechercher
Bonjour
J'ai un questionnement à propos du préréglage dans Handbrake sur la vitesse d'encodage.
Ce que j'avais cru comprendre, c'est à qualité d'encodage égale (RF), plus on encode lentement, plus l'encodage est efficace.

Mais j'ai fait un test sur un fichier, en HEVC, et même RF (22), plus je règle sur une vitesse lente et plus la taille du fichier final augmente.

Quelqu'un peut expliquer l'intérêt ? Est-ce qu'il faut augmenter le RF et ça permet d'avoir un fichier de même qualité mais plus petit ?
Merci si quelqu'un connaît.
Citation :
Publié par Borh
Bonjour
J'ai un questionnement à propos du préréglage dans Handbrake sur la vitesse d'encodage.
Ce que j'avais cru comprendre, c'est à qualité d'encodage égale (RF), plus on encode lentement, plus l'encodage est efficace.

Mais j'ai fait un test sur un fichier, en HEVC, et même RF (22), plus je règle sur une vitesse lente et plus la taille du fichier final augmente.

Quelqu'un peut expliquer l'intérêt ? Est-ce qu'il faut augmenter le RF et ça permet d'avoir un fichier de même qualité mais plus petit ?
Merci si quelqu'un connaît.
Pour le coup ça dépend énormément du contenu de la vidéo. La vitesse d'encodage, ce sont différentes méthodes en réalité, qui vont donner des résultats qui peuvent être très différents en fonction du contenu.

Pour le RF, plus tu l'augmentes, plus tu augmentes la qualité et donc le poids du fichier. C'est le débit de la vidéo (un débit variable, qui va s'adapter en fonction du contenu).

Cela dit j'ai beau encoder des vidéos tous les jours, je me prends pas la tête avec tout ça sauf contraintes fortes (genre une machine qui va avoir du mal à décoder donc, privilégier des fichiers lourds mais faciles à décoder ou à l'inverse, peu d'espace disque mais une grosse puissance de calcul, etc...).
Utilise des pré-réglages standards, t'auras une bonne moyenne, et une bonne compatibilité.
C'est juste qu'avec mon 7950X, je pourrais me permettre d'encoder plus lentement si ça me permettait d'avoir des fichiers plus petits à qualité égale.
Après visiblement c'est pas simple...

Pour les préréglages déjà proposés par Handbrake, il y en a des tonnes. Et la plupart ont des framerate fixés, genre P30 ou P60 ce qui me paraît contre intuitif, j'ai pas envie de changer le framerate d'une vidéo que j'encode. C'est pour ça que j'utilise habituellement mes réglages avec un framerate "same as source".
Citation :
Publié par Borh
C'est juste qu'avec mon 7950X, je pourrais me permettre d'encoder plus lentement si ça me permettait d'avoir des fichiers plus petits à qualité égale.
Après visiblement c'est pas simple...
Dis toi qu'il faut les décoder aussi, donc à moins que ce ne soit uniquement à destination de ta machine, c'est générer des fichiers qui vont demander plus de ressources CPU pour un gain de place qui ne va pas non plus être la folie.
Perso je me baserais sur des pré-réglages type plateformes de streaming (de mémoire y'en a pas mal sur handbrake) si je cherchais le bon compromis d'optimisation.

[EDIT] ça t'empêche pas de changer le framerate une fois le pré-réglage appliqué, et effectivement, c'est sage de garder le même que la source sauf à partir de masters.
ralentir la vitesse d'encodage rend le fichier plus compliqué à décoder ?
J'avoue que je ne le savais pas, je pensais que ça dépendait du codec et du bitrate
Citation :
Publié par Borh
ralentir la vitesse d'encodage rend le fichier plus compliqué à décoder ?
J'avoue que je ne le savais pas, je pensais que ça dépendait du codec et du bitrate
Ah oui nan je parlais en général de vouloir gagner de la place au détriment du décodage.

En tout cas tu peux jeter un œil à la doc : https://handbrake.fr/docs/en/latest/...rformance.html

Et même eux te trouvent des aberrations.
Citation :
Generally speaking, the additional computation performed by x264’s slower encoder presets creates smaller files, and sometimes increases quality very slightly (usually negligibly). However, since so many settings differ between the various encoder presets, this isn’t strictly true in practice. Notice how the veryfast encoder preset actually produces a smaller file than the slower presets, at the expense of some quality loss.
Y'aura sûrement des gens plus calés que moi la dessus, mais perso j'ai lâché l'affaire sur le sujet, c'est beaucoup de temps et de ressources pour des résultats assez aléatoires, d'où mon conseil de passer par des presets, des gens s'en sont occupés Pourquoi pas s'inspirer des settings de la scène pirate, ils sont plutôt doués de ce côté.
Et dans l'industrie on utilise les mêmes settings un peu partout et l'espace disque est rarement une contrainte (plutôt l'inverse, on a plutôt des contraintes avec des machines qui veulent des formats peu compressés, type Quicktime Anim), donc je ne me pose plus trop la question.
Coucou, je dépoussière mon compte parce que quelqu'un de curieux m'a ping sur ce thème
Citation :
Publié par Borh
Bonjour
J'ai un questionnement à propos du préréglage dans Handbrake sur la vitesse d'encodage.
Ce que j'avais cru comprendre, c'est à qualité d'encodage égale (RF), plus on encode lentement, plus l'encodage est efficace.

Mais j'ai fait un test sur un fichier, en HEVC, et même RF (22), plus je règle sur une vitesse lente et plus la taille du fichier final augmente.

Quelqu'un peut expliquer l'intérêt ? Est-ce qu'il faut augmenter le RF et ça permet d'avoir un fichier de même qualité mais plus petit ?
Merci si quelqu'un connaît.
En très rapide, je pense que l'intuition est correcte mais qu'un "encodage efficace" ne signifie pas ce à quoi on pourrait s'attendre.

Les modes "qualité constante" des encodeurs impliquent généralement de jouer à l'apprenti-sorcier pour mettre au point une métrique satisfaisante. On n'est pas sur une grandeur strictement définie et mesurable comme le débit, ici il faut faire du doigt mouillé.

Quant au réglage en vitesse, il va déterminer jusqu'où on essaie de chercher afin de modéliser les détails. Exemple un peu technique mais que je vais essayer de simplifier : pour construire des "vecteurs de mouvements", i.e. des représentations disant "telle image, c'est similaire à l'image précédente mais avec ce bloc de pixels qui a bougé d'ici à là", un réglage + lent regardera + de possibilités pour chercher ces blocs de pixels déplacés.

Ici je vais spéculer à fond faute de connaître le fonctionnement interne de Handbrake, mais je pense que le mode RF de l'encodeur signifie en gros "si un détail a une pertinence inférieure à tel seuil (déterminé par le niveau de RF), on le jette".
Mais avec une vitesse plus lente, on peut trouver de nouvelles façons de représenter les détails, et ces représentations peuvent sembler cette fois assez pertinentes pour être gardées. Donc tu te retrouves avec des infos à rajouter dans ton encodage, même si le seuil de ta métrique (le RF) est inchangé. Pour moi, ça qualifie effectivement un encodage plus efficace, vis à vis de cette métrique.

On pourrait se dire que les détails conservés dans tous les cas prendront moins de place en encodant plus lentement. Mais comme le débit / la taille n'est absolument pas considérée au final, rien ne garantit que la place économisée sur ces détails suffira à compenser la taille de tous les détails rajoutés.
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés