Depuis pas mal de temps le me gratte la tête avec les couleurs restituées par les BD et autres mkv (américains pour la plupart) au travers de mon pchc (ATI 6870 driver à jour) et mpc-hc (la dernière stable, 3456). Les persos à l'écran on la tête bien orange qu'en même, on dirait qu'ils ont la jaunisse... Je précise que le diffuseur est un LG AF115 sxrd branché en dvi pour être en rgb444 full et colorimétré avec une spyder 3 elite et coloHCFR, deltaE <3 6500K 2.2 en sRGB/rec709, bref les bonnes couleurs pour le pc.
Comme on peut le lire un peu partout, ici y compris, les BDs ne suivent apparemment pas la norme requise pour de la HD au niveau des couleurs. Il seraient encore fait à 90% avec les couleurs du rec601 ntsc (aux les américains), si j'ai bien tout compris. Question: ont ils prévu un jour de vraiment suivre la norme ? Autre question: Si quelqu'un est capable de faire un point précis et simple concernant ce problème pour éclairer une bonne fois pour tous ceux qui en ont besoin (moi par exemple).
J'ai donc essayé le shader BT.601 -> BT.709 fourni de base dans mpc-hc et c'est encore pire, là pour le coup les acteurs ont vraiment l'air malade. En cherchant un peu je suis tombé sur ce shader fait par Chambolle en 2008 (posté apparemment en même temps que le BT.601 -> BT.709):
ici >> http://www.homecinema-fr.com/forum/viewtopic.php?f=1195&t=29814317&start=570
- Code: Tout sélectionner
BT.709 -> BT.601
sampler s0 : register(s0);
float4 p0 : register(c0);
#define height (p0[1])
float4 main(float2 tex : TEXCOORD0) : COLOR {
// original pixel
float4 c0 = tex2D(s0,tex);
// r=c0[0], g=c0[1], b=c0[2]
// RGB [16,235] to YUV: 709 mode (128 is not added to Cb and Cr)
float y=0.213*c0[0] + 0.715*c0[1] + 0.072*c0[2];
//float y=0.2126*c0[0] + 0.7152*c0[1] + 0.0722*c0[2];
float Cb=-0.117*c0[0] -0.394*c0[1] +0.511*c0[2];
float Cr=0.511*c0[0] -0.464*c0[1] -0.047*c0[2];
// YUV to RGB [16,235]: 601 mode (Cb and Cr are 128 less)
float r=y+1.371*Cr;
float g=y-0.698*Cr-0.336*Cb;
float b=y+1.732*Cb;
return float4(r,g,b,0);
}
J'ai lu sur un autre forum (je ne sais plus où) que BT.601 -> BT.709 devrait s'appeller plutôt BT.709 -> BT.601 par rapport à ce qu'il fait, ne ne sais pas si c'est vrai mais du coup ça ma donner envie de voir ce ue pouvait donner le shader ci-dessus (appelé BT.709 -> BT.601 par son auteur en 2008, l'inverse donc de celui dispo de base dans mpc).
Le test de ce shader à l'air plutôt concluant et les couleurs redeviennent tout à coup beaucoup plus naturels dans les tons rouges (tout simplement rouges aux lieu de orange, mais j'exagère un peu).
Du coup je suis perdu, les couleurs ont l'air d'être les bonnes mais le sont elles réellement ? Si un killer passe dans le coin et à 5min à perdre, ce serait vraiment sympa .