YUV -> RGB rendering

Fusion des anciens forums encodage et re-encodage

Modérateur: Modérateurs

YUV -> RGB rendering

Messagepar eltouco » Mer 05 Déc, 2007 20:50

Bonsoir à tous,

Ce n'est peut être pas le bon endroit pour exposer mon questionnement, mais je me dis que quelqu'un ici a surement la réponse.

J'ai remarqué une différence dans l'affichage de rendus des couleurs selon les logiciels de lecture de video ou dans les mêmes logiciels selon les settings.

plus précisement, le cas de lecture d'un DVD ou d'un divx dans VLC

avec sortie sans accelération matériels : les couleurs semblent correctes les gris foncés sont gris, les noirs noirs et les blancs blancs (oui attendez la suite si ce n'est pas clair)
avec sortie avec accelération matériels (overlay) et mode directx : les couleurs apparaissent plus sombres, les gris foncés deviennent noirs et les blancs pétent moins (gris très clair)
avec sortie avec accélération matériels (overlay) et mode Direct3D : les couleurs semblent OK

Après avoir un peu cherché, il semble y avoir différentes conversion de YUV vers RGB.
sur les DVD, les informations YUV seraient sur une plage de valeurs entre 16 et 235 (16 étant le noir, 235 étant le blanc)
lors de la conversion, direct3D (en fait un module appellé VMR9) mappe les valeurs YUV 16-235 vers du RGB 16-235
DirectX, lui maperrait vers du 0-255, ce qui expliquerait pourquoi les gris foncés deviennent noirs...

Seulement qu'elle est la bonne version de rendu ?
Je suppose qu'il doit y avoir une norme quelque part sur le conversion YUV vers RGB ?

Si il y a quelqu'un qui a les idées claires là dessus, je suis preneur....

Touco
eltouco
 
Messages: 55
Inscription: 26 Nov 2007

Messagepar Underground78 » Mer 05 Déc, 2007 21:31

Bonsoir,

Sur Wikipedia : http://fr.wikipedia.org/wiki/YUV, il y a les tables de conversion entre YUV et RGB, je pense que ça peut t'aider ...
Avatar de l’utilisateur
Underground78
Administrateur
Administrateur
 
Messages: 11267
Inscription: 06 Fév 2007
Localisation: France

Messagepar eltouco » Jeu 06 Déc, 2007 20:35

Underground78 a écrit:Bonsoir,

Sur Wikipedia : http://fr.wikipedia.org/wiki/YUV, il y a les tables de conversion entre YUV et RGB, je pense que ça peut t'aider ...


Bonsoir,

En fait j'ai mal posé le problème.
Savez vous si les DVD sont encodé avec un noir à 16 et un blanc à 235 ? (au lieu de valeur entre 0 et 255) il semble que oui, mais je n'arrive pas à le voir confirmer dans une norme.
Car sachant cela, cela me permettra de savoir qu'elle est le bon outil de rendu pour voir les DVD dans leurs couleurs fidèles (et pas avec des noirs qui deviennent gris)

Merci à ceux qui se sont déja penché sur la question :o:

Touco
eltouco
 
Messages: 55
Inscription: 26 Nov 2007

Messagepar BiGf0oT » Ven 07 Déc, 2007 0:31

Techniquement, l’overlay se caractérise par l’utilisation des niveaux de luminance PC : le noir absolu est à 0 alors que le blanc absolu est à 255. Or, dans ce référentiel, les DVD n’utilisent que la plage 16-235. Afin de ne pas afficher que des nuances variant entre le gris foncé et le gris clair, il réalise donc une conversion 16 -> 0 jusqu’à 235 -> 255.


http://www.presence-pc.com/tests/PC-Home-Cinema-logiciels-et-exploitation-308/3/

=======

0-255 et 16-235
Explications à partir du site de DTSman http://perso.wanadoo.fr/nicolas.phil/fr/cadre.html
Avant toute chose rappelons qu'un ordinateur travaille la vidéo sur 8 bit et permet donc de quantifier chaque composante RVB sur 256 niveau. On parle alors d'échelle 0-255. Quand les trois composantes RVB valent toute trois zéro le couleur obtenue est le noir 100% et quand les trois composantes RVB valent toutes trois 255 on obtient alors un blanc 100%. Au total il y a donc 256^3 combinaisons de couleurs soient approximativement 16 millions de couleurs possibles. Bien que nos DVD soient encodés selon cette même échelle de quantification, au lieu d'utiliser les valeurs de 0 à 255 ils n'utilisent que les valeurs comprises entre 16 et 235.


http://www.homecinema-fr.com/article_site.php?t=29864940
Proverbe Chien : Si ça ne se mange pas, Si ça ne se baise bas, Pisse dessus !
Avatar de l’utilisateur
BiGf0oT
Administrateur
Administrateur
 
Messages: 6072
Inscription: 03 Fév 2007
Localisation: Dans ma grotte

Messagepar eltouco » Sam 08 Déc, 2007 0:35

BiGf0oT a écrit:
Techniquement, l’overlay se caractérise par l’utilisation des niveaux de luminance PC : le noir absolu est à 0 alors que le blanc absolu est à 255. Or, dans ce référentiel, les DVD n’utilisent que la plage 16-235. Afin de ne pas afficher que des nuances variant entre le gris foncé et le gris clair, il réalise donc une conversion 16 -> 0 jusqu’à 235 -> 255.


http://www.presence-pc.com/tests/PC-Home-Cinema-logiciels-et-exploitation-308/3/

=======

0-255 et 16-235
Explications à partir du site de DTSman http://perso.wanadoo.fr/nicolas.phil/fr/cadre.html
Avant toute chose rappelons qu'un ordinateur travaille la vidéo sur 8 bit et permet donc de quantifier chaque composante RVB sur 256 niveau. On parle alors d'échelle 0-255. Quand les trois composantes RVB valent toute trois zéro le couleur obtenue est le noir 100% et quand les trois composantes RVB valent toutes trois 255 on obtient alors un blanc 100%. Au total il y a donc 256^3 combinaisons de couleurs soient approximativement 16 millions de couleurs possibles. Bien que nos DVD soient encodés selon cette même échelle de quantification, au lieu d'utiliser les valeurs de 0 à 255 ils n'utilisent que les valeurs comprises entre 16 et 235.


http://www.homecinema-fr.com/article_site.php?t=29864940


Intéressant, mais je crois que ce n'est pas tout a fait vrai (que sur un DVD la luminance tient toujours entre 16 et 235)
car sur des sites américains, j'ai lu qu'ils parlent de niveau "blacker than black" et "whiter that white" à propos de DVD...
j'analyserai un DVD pour comprendre de quoi il en retrourne
eltouco
 
Messages: 55
Inscription: 26 Nov 2007

Messagepar BiGf0oT » Sam 08 Déc, 2007 1:10

Proverbe Chien : Si ça ne se mange pas, Si ça ne se baise bas, Pisse dessus !
Avatar de l’utilisateur
BiGf0oT
Administrateur
Administrateur
 
Messages: 6072
Inscription: 03 Fév 2007
Localisation: Dans ma grotte

Messagepar eltouco » Sam 08 Déc, 2007 1:16



Effectivement, je me le mets dans un coin pour lire ça après une bonne nuit

Merci :d:
eltouco
 
Messages: 55
Inscription: 26 Nov 2007

Messagepar Dirk-Pitt » Sam 08 Déc, 2007 12:32

On devrait noter ce lien quelque part.
Dell OptiPlex 755, 8 Go ram, 1.5 To disk, dual screen 2 x Dell 2007FP ( 3200x1200 ). Linux openSUSE 11.0
Avatar de l’utilisateur
Dirk-Pitt
Membre Fondateur
Membre Fondateur
 
Messages: 10541
Inscription: 03 Fév 2007
Localisation: 01's Land

Messagepar KadicK » Sam 08 Déc, 2007 14:33

On pourrait créer un sujet sur la base de celui pour faire découvrir des sites ...
Avatar de l’utilisateur
KadicK
Ghost member
Ghost member
 
Messages: 5202
Inscription: 03 Fév 2007

Messagepar Dirk-Pitt » Sam 08 Déc, 2007 18:26

Il y a celui de MKV2TS également propose par aussi par BiGf0oT.
Dell OptiPlex 755, 8 Go ram, 1.5 To disk, dual screen 2 x Dell 2007FP ( 3200x1200 ). Linux openSUSE 11.0
Avatar de l’utilisateur
Dirk-Pitt
Membre Fondateur
Membre Fondateur
 
Messages: 10541
Inscription: 03 Fév 2007
Localisation: 01's Land

Messagepar eltouco » Dim 09 Déc, 2007 23:36

J'ai fait un test

en fait c'est le YUV->RGB en acceleration matérielle qui est foireux, du moins en ce qui concenre ma carte graphique et son pilote (une ATI x850XT et les derniers pilotes)

avec l'option "utiliser les conversions YUV->RGB matérielles" dans VLC

sur un scéne qui contient du noir dont on est sur qu'il s'agit d'un noir dans la source, en l'occurence le fond du générique ou un fondu au noir, en faisant une capture d'écran et dans photoshop le noir est en fait (16,16,16) donc un noir un peu délavé

en enlevant cette option, les noirs sont bien à (0,0,0)
j'ai lu sur d'autres forums qu'il y avait effectivement un problèmes dans les pilotes de certaines cartes graphiques, donc il vaut mieux laisser faire VLC sur ce coup là.

Par contre, je remarque avec une sortie Direct3D, les contours sont légèrement flous, comme si il y avait une tentative d'aliasing des contours (?)

En sortie DirectX les contours sont nets.

bref, ce qui est sur c'est que par précaution il vaut mieux éviter la conversion matérielle YUV->RGB

Par contre sur le rendu directX3D ou directX je ne sais pas trop d'autant plus que c'est très mal documenté dans VLC.
eltouco
 
Messages: 55
Inscription: 26 Nov 2007

Messagepar pepsilite » Dim 09 Déc, 2007 23:49

Tu as le filtre "Limite luma/chroma" dans m4ng qui permet d'éliminer aussi toutes ces couleurs avant 16 et après 235.
05/07/15 m4ng v5 est disponible au téléchargement en version finale : m4ng v5
Avatar de l’utilisateur
pepsilite
The Grinch
The Grinch
 
Messages: 22999
Inscription: 03 Fév 2007
Localisation: Chez moi le plus possible ...

Messagepar eltouco » Lun 10 Déc, 2007 1:25

pepsilite a écrit:Tu as le filtre "Limite luma/chroma" dans m4ng qui permet d'éliminer aussi toutes ces couleurs avant 16 et après 235.


Merci pour l'info

en fait j'ai regardé ou se situe les limites de luminance dans un DVD avec ce script

Source="VTS_01_1.d2v"
Video=MPEG2Source(Source)
Return(Histogram(Video, "Levels"))

ça permet de voir que le niveau de luminance se situe bien entre 16 et 235 et respecte bien la norme CCIR 601.
Après c'est dans les conversions en RGB que ça peut merder, d'ou l'intéret de ne pas en faire avant la phase final c'est à dire l'affichage.

Sinon juste une suggestion, est-il possible que par défaut M4ng lise le mpeg du DVD pour envoie au codec avec des paramètres permettant un décodage avec plus de qualité ? par exemple

Video=MPEG2Source(Source,idct=5,cpu=6,cpu2="xxxxxx")

J'ai pas été vérifié moi même s'il y avait une différence visuelle j'ai juste lu la doc pour ces paramètres (meilleur IDCT, postprocessing...)
eltouco
 
Messages: 55
Inscription: 26 Nov 2007

Messagepar Underground78 » Lun 10 Déc, 2007 15:37

Le truc c'est que c'est par forcement bon pour tous les films de mettre tout à fond ...
Avatar de l’utilisateur
Underground78
Administrateur
Administrateur
 
Messages: 11267
Inscription: 06 Fév 2007
Localisation: France

Messagepar eltouco » Lun 10 Déc, 2007 16:12

Underground78 a écrit:Le truc c'est que c'est par forcement bon pour tous les films de mettre tout à fond ...


En fait j'ai pas une grosse expérience d'encodage de DVD (je commence juste à m'acheter des DVD depuis peu, autant que possible les éditions testé par DVDrama, donc souvent des editions collectors car la qualité des masters et de l'encodage est souvent meilleurs)

Sais tu sur quel type de films c'est pas bon de mettre tout à fond ? je suppose les films un peu ancien où le master n'est pas bon ou la compression laisse à désirer ?

a+

Touco

il est long le chemin de la connaissance
eltouco
 
Messages: 55
Inscription: 26 Nov 2007

Messagepar Underground78 » Lun 10 Déc, 2007 16:16

Ben justement, je dirais que si le film est vraiment bon, il n'est pas utile de mettre du postprocessing qui risque de plus dégrader l'image qu'autre chose ...
Avatar de l’utilisateur
Underground78
Administrateur
Administrateur
 
Messages: 11267
Inscription: 06 Fév 2007
Localisation: France

aide pour ce script ?

Messagepar lj1982 » Lun 03 Déc, 2012 13:23

eltouco a écrit:
pepsilite a écrit:Tu as le filtre "Limite luma/chroma" dans m4ng qui permet d'éliminer aussi toutes ces couleurs avant 16 et après 235.


Merci pour l'info

en fait j'ai regardé ou se situe les limites de luminance dans un DVD avec ce script

Source="VTS_01_1.d2v"
Video=MPEG2Source(Source)
Return(Histogram(Video, "Levels"))

ça permet de voir que le niveau de luminance se situe bien entre 16 et 235 et respecte bien la norme CCIR 601.
Après c'est dans les conversions en RGB que ça peut merder, d'ou l'intéret de ne pas en faire avant la phase final c'est à dire l'affichage.

Sinon juste une suggestion, est-il possible que par défaut M4ng lise le mpeg du DVD pour envoie au codec avec des paramètres permettant un décodage avec plus de qualité ? par exemple

Video=MPEG2Source(Source,idct=5,cpu=6,cpu2="xxxxxx")

J'ai pas été vérifié moi même s'il y avait une différence visuelle j'ai juste lu la doc pour ces paramètres (meilleur IDCT, postprocessing...)


Bonjour,
j'aimerais pouvoir mesurer la luminance de mes DVD, mais je ne sais pas comment executer ce script. J'ai plusieurs logiciels don M4ng.

Sinon, j'explique mon problème : j'ai deux sortes de DVD avec un décalage de luminance. Les deux sont lus correctement sur un télé cathodique (le plus contrasté est rabaissé en luminance).

Sur mon PC, j'ai 2 options de carte graphique, niveau étendu (0-255) ou niveau vidéo (15-235).
En niveau étendu, certains DVD sont en 15-235, d'autres en 0-255.
En niveau vidéo, certains sont en 15-235, d'autre en 35-215 (donc catastrophe).

Dans l'idéal, je veut mes noirs et mes blanc en 601 (16-235).
J'aimerais donc savoir quel DVD est correct.
lj1982
 
Messages: 1
Inscription: 03 Déc 2012


Retourner vers m4ng V1

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités