Page 1 sur 2

Reglages x264 cli (qualite au bon prix)

Posté : mar. 09 sept., 2014 16:56
par leon1789
Bonjour à tous

voici le paramétrage perso de x64

Code : Tout sélectionner

x264.exe  --keyint 500 --qpstep 4 --me dia --subme 8 --merange 12 --rc-lookahead 30 --partitions i8x8,p8x8,b8x8 --psy-rd 0.7:0.15 --ref 4 --trellis 1 --b-adapt 2 --bframe 5 --b-bias 0 --deblock -1:-1 --deadzone-inter 21 --deadzone-intra 0 --qcomp 0.60 --aq-strength 0.90 --ipratio 1.40 --chroma-qp-offset 4 --no-dct-decimate --no-mixed-refs --no-chroma-me
Evidemment, on peut avoir un meilleur encodage (un poil meilleur qu'avec le preset VerySlow !) avec ceci :

Code : Tout sélectionner

x264.exe --keyint 300 --qpstep 4 --me umh --subme 10 --merange 32 --rc-lookahead 80 --partitions i8x8,p8x8,b8x8 --psy-rd 1:0 --ref 9 --trellis 2 --b-adapt 2 --bframe 8 --b-bias 0 --deblock 0:-1 --deadzone-inter 11 --deadzone-intra 0 --qcomp 0.62 --aq-strength 0.95 --ipratio 1.4 --chroma-qp-offset 0 --no-dct-decimate --direct spatial --nr 30                                                                                
Au niveau de l'image, ces deux configurations (et celle du preset VerySlow) sont de même netteté, même niveau de blocking, même niveau de bruit, même niveau compression...
Mais alors, où se fait la différence en terme de qualité d'encodage entre les deux configurations ci-dessus ? C'est dans le respect des couleurs par rapport à la source : la seconde configuration respecte davantage. Personnellement, avec mes yeux, je ne vois pas de différence, mais un logiciel d'analyse la voit...

Seulement, la seconde configuration est 4 fois plus lente que la première. Le preset VerySlow, pas meilleur en terme d'encodage, est encore plus lent que la seconde configuration...

Posté : mar. 09 sept., 2014 17:02
par Subbat
Salut leon... sauf que pour l'instant on voit rien... tes balises img sont pas bonnes...

Posté : mar. 09 sept., 2014 17:04
par leon1789
Ben oui, je me suis trompé de bouton : j'ai cliqué sur Envoyer au lieu de Prévisualisation ! :hop:

Du coup, il faut encore attendre... j'ai pas fini... :whi:

Posté : mar. 09 sept., 2014 17:12
par Subbat
Ah ok... :ange:

Sur la 1ère série d'image... j'ai franchement beaucoup de mal à voir la différence entre les 4 dernières images... entre la source et les autres oui... mais pour le reste... je ne dois pas avoir des yeux suffisamment expert...

Posté : mar. 09 sept., 2014 17:39
par leon1789
Cela dépend des yeux, mais aussi des écrans : il faut éventuellement mettre la lumière à fond et zoomer. La différence se fait sur les détails, parfois sur la lumière, les blocs..

Bon, voici mes classements avec une attribution de 1 à 4 pts (il y a évidemment une part de subjectivité) :

#64
script1 : 2 pts
script2 : 3 pts
script3 : 4 pts
script4 : 1 pt

#606
script1 : 3 pts
script2 : 2 pts
script3 : 4 pts
script4 : 1 pt

#1326
script1 : 4 pts
script2 : 3 pts (problème de couleur)
script3 : 2 pts (problème de couleur)
script4 : 1 pt

#1472
script1 : 3 pts
script2 : 2 pts
script3 : 4 pts
script4 : 1 pt

#1610
script1 : 2 pts
script2 : 3 pts
script3 : 4 pts
script4 : 1 pt

#1831
script1 : 3 pts
script2 : 4 pts
script3 : 2 pts
script4 : 1 pt

#2068
script1 : 3 pts
script2 : 2 pts
script3 : 4 pts
script4 : 1 pt

Posté : mar. 09 sept., 2014 20:10
par Subbat
leon1789 a écrit :Cela dépend des yeux, mais aussi des écrans : il faut éventuellement mettre la lumière à fond et zoomer. La différence se fait sur les détails, parfois sur la lumière, les blocs..

Effectivement, sur l'écran de mon domicile (Dell), c'est nettement plus facile à comparer...

Bon, voici mes classements avec une attribution de 1 à 4 pts (il y a évidemment une part de subjectivité) :

#64
script1 : 2 pts
script2 : 3 pts
script3 : 4 pts
script4 : 1 pt

Subbat : Idem pour moi pour cette image #64


#606
script1 : 3 pts
script2 : 2 pts
script3 : 4 pts
script4 : 1 pt

Subbat : Idem là aussi pour moi sur cette image #606


#1326
script1 : 2 pts
script2 : 4 pts
script3 : 3 pts (problème de couleur)
script4 : 1 pt

Subbat : #1326 Là pas tout à fait d'accord, pour le script 1 et 4 Ok, mais je trouve que c'est sur le script 2 qu'il y a un problème de couleur plus important que sur le 3... Sur le script 2, l'extrémité du rocher au 1er plan est mauve...

#1472
script1 : 3 pts
script2 : 2 pts
script3 : 4 pts
script4 : 1 pt

Subbat : Idem là aussi pour moi sur cette image #1472


#1610
script1 : 2 pts
script2 : 3 pts
script3 : 4 pts
script4 : 1 pt

#1831
script1 : 3 pts
script2 : 4 pts
script3 : 2 pts
script4 : 1 pt

#2068
script1 : 3 pts
script2 : 2 pts
script3 : 4 pts
script4 : 1 pt

Si je trouve le temps, j'éditerais mon post pour les séries suivantes...

Posté : mer. 10 sept., 2014 17:11
par leon1789
Subbat a écrit : Subbat : #1326 (...) je trouve que c'est sur le script 2 qu'il y a un problème de couleur plus important que sur le 3... Sur le script 2, l'extrémité du rocher au 1er plan est mauve...
En effet, dans les deux cas, les couleurs ne sont pas respectées : sur mon écran, ce sont les signes en bas à droite qui sont mauves avec le script3, et bleus avec les script2.

Posté : mer. 10 sept., 2014 17:29
par Subbat
leon1789 a écrit :
Subbat a écrit : Subbat : #1326 (...) je trouve que c'est sur le script 2 qu'il y a un problème de couleur plus important que sur le 3... Sur le script 2, l'extrémité du rocher au 1er plan est mauve...
En effet, dans les deux cas, les couleurs ne sont pas respectées : sur mon écran, ce sont les signes en bas à droite qui sont mauves avec le script3, et bleus avec les script2.
Oui j'avais remarqué pour les singes (et non les signes ;) ) avec le script 3, mais je trouvais que c'était moins gênant...

Posté : ven. 12 sept., 2014 18:03
par leon1789
Seul Subbat ose donner un avis que les copies d'écran ? :(

Posté : ven. 12 sept., 2014 19:40
par pepsilite
Perso, je ne vois quasi aucune différence entre toutes les images ...
Il n'y a que pour la 1326 qu'il y a un truc bizarre sur les rochers dans 2 images et pour la suivante, une des images montre une barbe avec plus de précision que les autres.

Posté : sam. 13 sept., 2014 8:45
par leon1789
En effet, la barbe permet de juger la netteté sur l'image #1472. De mon coté, avec cette barbe, je peux classer facilement les images par ordre croissant de netteté : script4 est flou, puis script2, puis script1 (pareil au niveau de la barbe, mais meilleur au niveau du front, je trouve), et enfin script3 proche de l'original.


S'il n'y a pas assez de différences entre les images d'une même série, c'est que j'ai dû encoder avec un débit trop élevé. Pourtant, ce sont des encodages --crf x avec x compris entre 21.5 et 23 ...

Posté : sam. 13 sept., 2014 12:01
par Underground78
Je vois des bugs sur la source déjà, des artefacts de couleur étranges.

Posté : sam. 13 sept., 2014 13:59
par leon1789
C'est bien possible : la source est elle-même une compression x264 . Voir ici http://forum.doom9.org/showthread.php?t=170986

Posté : sam. 13 sept., 2014 14:13
par Underground78
Ça a plutôt l'air d'être au décodage puisque l’artefact n'est pas dans la version encodée ou pas au même endroit. Comment tu décodes ta source ?

Posté : sam. 13 sept., 2014 20:10
par leon1789
Pour faire les copie d'écrans, je passe par un script avs ( ffmpegsource("original.mp4") ou ffmpegsource("script....mp4") ) ouvert à l'aide de virtualdub.

Pour les tests (les quatre encodages), je laisse x264 faire tout seul via une ligne de commande ( x264.exe ... original.mp4 )

Posté : sam. 13 sept., 2014 20:30
par Underground78
Bizarre, j'aurais cru que ffmpegsource s'en sortirait bien...

Posté : lun. 15 sept., 2014 10:35
par leon1789
J'avais dit que je présenterai la méthodologie et le résultat, donc je vais le faire rapidement...

Je suis parti de la configuration du preset veryslow (qu'on peut considérer comme le preset de qualité maximale avec x264, tant en image qu'en compression) et j'ai cherché à modifier les paramètres de sorte à accélérer le traitement (en effet, le preset veryslow est très lent, comme son nom l'indique). Le preset veryslow est le script1 ci-dessus. A comparer avec le preset medium (le preset par défaut avec x264) qui est le script4 ci-dessus.

Pour cela, je me suis muni de huit films DVD (de genres variés) et d'un outil d'analyse vidéo (pas question d'analyser des centaines de milliers d'images à la main) qui fournit un certain nombre de mesures numériques des encodages (http://compression.ru/video/quality_mea ... html#start).
J'ai dû évidemment utiliser un script avisynth (un script minimal, sans fioriture) pour lire les .d2v et exporter l'image en YV12 vers x264 (encoder le format YV12 est plus rapide qu'encoder le format RGB).

Pour l'analyse sur le luma, j'ai utilisé les mesures le SSIM et le VQM (mesures psychovisuelles), MSU Blocking pour l'analyse de la formation des blocs, MSU Blurring pour évaluer la netteté d'une image, MSU Noise pour une estimation de bruit (mais aussi du banding je trouve).
Pour analyser l'équilibre entre les compressions luma (Y) et chroma (U et V), j'ai utilisé quatre type de mesures : PSNR-YUV, Delta-YUV, MSAD-YUV et MSE-YUV.

Ainsi, tout en essayant de garder les mêmes résultats des évaluations numériques du preset veryslow (bitrate compris), je suis arrivé à accélérer l'encodage au même niveau que le preset medium (celui qui est utilisé par défaut par x264, temps d'encodage qui était mon objectif), encodage en une passe --crf 18. Bien sûr, les évaluations numériques ne remplacent pas l'oeil humain...

Le réglage obtenu est l'encodage script2 ci-dessus (pour moi, le temps d'encodage est comparable à --preset medium, la qualité d'image et le taux de compression comparables à veryslow pour les films) :

Code : Tout sélectionner

x264.exe --keyint 500 --me dia --subme 8 --merange 12 --rc-lookahead 30 --partitions i8x8,p8x8,b8x8 --psy-rd 0.7:0.15 --ref 4 --b-adapt 2 --bframe 5 --deblock -1:-1 --deadzone-intra 0 --aq-strength 0.9 --ipratio 1.25 --chroma-qp-offset 9 --no-dct-decimate --no-mixed-refs --no-chroma-me
Constatant que les paramètres --deblock -1:-1 et --psy-rd ...:0.15 sont proches du réglage --tune film de x264, j'ai aussi aussi comparé avec le x264 --preset veryslow --tune film qui est le script 3 ci-dessus..

Posté : lun. 15 sept., 2014 13:13
par Subbat
Ah ouais... pas mal ça alors... avoir la rapidité du medium et la qualité du veryslow... bien joué...

J'ignorais pour la rapidité supplémentaire en yv12 par rapport au rgb... Il me semble que les scripts de m4ng sont forcément en sortie rgb... intéressant à savoir pour modifier le cas échéant à la mimine...

Posté : lun. 15 sept., 2014 13:43
par leon1789
Subbat a écrit : la qualité du veryslow...
C'est cela que j'aurais aimé tester avec des yeux qui ne sont les miens.

Pour l'encodage RGB vs YV12, je posterai le résultat d'un test ce soir.

Posté : lun. 15 sept., 2014 21:43
par leon1789
Subbat a écrit :J'ignorais pour la rapidité supplémentaire en yv12 par rapport au rgb... Il me semble que les scripts de m4ng sont forcément en sortie rgb... intéressant à savoir pour modifier le cas échéant à la mimine...
La sortie avisynth est peut-être au format rgb (suite à un convertToRGB), mais est-ce que x264 l'encode en format rgb (profile High 4:4:4 Predictive, level ...) ? Je pense que x264 doit reconvertir la sortie avisynth en yuv avant de compresser (profile High, level ...)

Posté : mar. 16 sept., 2014 9:30
par Subbat
leon1789 a écrit :
Subbat a écrit :J'ignorais pour la rapidité supplémentaire en yv12 par rapport au rgb... Il me semble que les scripts de m4ng sont forcément en sortie rgb... intéressant à savoir pour modifier le cas échéant à la mimine...
La sortie avisynth est peut-être au format rgb (suite à un convertToRGB), mais est-ce que x264 l'encode en format rgb (profile High 4:4:4 Predictive, level ...) ? Je pense que x264 doit reconvertir la sortie avisynth en yuv avant de compresser (profile High, level ...)
Oui, il me semble bien qu'il y a un message de x264 qui dit quelque chose de cet ordre... qu'il fait un conversion vers du yuv...

Posté : mar. 16 sept., 2014 16:48
par leon1789
Nous sommes d'accord.

Posté : mer. 24 déc., 2014 13:33
par leon1789
Salut à tous,

Je passais pour relire la réponse du matou ci-dessus.

Comment peut-il se faire qu'il n'y ait plus de titre à la discussion ? J'ai essayé d'en remettre un (en éditant le premier message), mais en vain... :bad:

Joyeuses fêtes !

Posté : mer. 24 déc., 2014 15:41
par Subbat
Salut léon... depuis notre passage obligé à php je sais plus quoi, il y a des incompatibilité avec notre forum qui est toujours en phpbb2... dont les accents dans le titre des sujets... Normalement si tu édites ton 1er message et met un titre sans accents ça devrait aller...

Posté : ven. 26 déc., 2014 9:33
par leon1789
Merci Subbat ! Effectivement, sans accent, ça revient !