Journal : Les grands écrans c'est bien (mais galère)
Posté par Croconux () le 28 décembre 2007
Après avoir bien galéré, je me suis décidé à écrire ce journal car je pense que ça peut servir à d'autres.
Pour mon nowel, je me suis fait plaisir, je me suis acheté un grand écran qui troue les fesses : 24" 1920x1200, que du bonheur (pensais-je). J'ai passé une demi journée à galérer pour le faire fonctionner correctement. En démarrant sous Linux (Debian sid à jour), je me suis retrouvé avec une résolution très laide (1280x768). Bon, jusque là c'est normal, mon ancien écran était un 19" à tube donc je pensais naivement qu'en ajoutant les modes supplémentaires ça passerait. Que nenni. En cherchant sur le net, je me suis rendu compte que je n'étais pas un cas isolé. Visiblement, les écrans avec une résolution trop élevée (22" et plus) posent pas mal de problèmes. D'après ce que j'ai pu trouver, les modes jusqu'à 1600x1200 sont standardisé VESA mais au dessus, chaque fabricant d'écran fait un peu ce qu'il veut et c'est franchement le boxon.
Première piste, les modelines. Chez certains ça semble résoudre le problème. En cherchant à droite à gauche, j'ai vu que pour une même résolution, il y avait à peu près autant de timings que d'écrans. J'en ai essayé quelques uns sans succès. Dans Xorg.log, j'ai toujours "No valid mode for 1920x1200. Removing". Je me suis dit qu'il me fallait surement les timing exacts de mon écran. Bon, comment les obtenir ? Après enquête, chaque moniteur est capable de donner les informations sur les modes qu'il supporte. Plusieurs outils permettent de lire ses infos :
- "read-edid"/"get-edid" : Pas de bol ces outils font des appels VBE de bas niveau (un truc hérité du DOS) qui ne marchent qu'en 32bits et je suis sur AMD64. C'est mort.
- "xresprobe" : Un script fourni avec xorg. D'après ce que j'ai pu lire, il n'est pas trop maintenu et, contrairement à ce que dit la doc, il utilise encore les infos VBE (pour les DFP en tous cas). C'est mort aussi. Il me renvoie des infos vides.
- "ddcprobe" : Apparemment, il interroge la carte graphique et l'écran. Pas de bol non plus, il me liste une série de modes standards (jusqu'à 1280x1024) puis dans la section "edid" se contente d'un joli "edidfail". Tiens donc, mon écran renverrait-il des conneries ? Dans le doute je met la main sur une box windows pour voir ce que ça donne et là, plein les yeux. La résolution native de mon écran est reconnue et c'est magnifique. Bon si ça marche sans avoir installé le moindre driver, ça doit bien pouvoir marcher sous mon manchot, nom d'un eskimo à la banane !
Retour sous Linux mais cette fois en VGA (jusqu'ici j'avais utilisé le DVI). Bizarrement, là xorg me trouve le mode 1600x1200. Pas top mais il y a du mieux. "xresprobe" me trouve cette fois si des infos, même s'il reconnait pour le coup mon écran comme un CRT (c'est bizarre qu'en analogique on arrive à obtenir des infos et pas en numérique, mais bon). Du coup, il semble black lister les modes au dessus de 1600x1200. Après re-enquête, il s'avère qu'en interne, xorg ne fait plus appel à ces divers utilitaires pour lire les infos EDID. Il a sa propre méthode de lecture. Re-merde. Je sens que je vais finir par m'arracher les poils du cul à la pince à épiler.
Retour en DVI (si j'ai pris un écran avec prise DVI ce n'est pas pour passer par de l'analogique). Un bon moyen de voir ce qui se passe : En mode console, démarrer X avec un maximum de logs "startx -- -logverbose 6". Là je me rend compte qu'xorg arrive bien à lire les infos EDID. Il liste les modes standards -plus- les modes supplémentaires de mon écran et le 1920x1200 en fait partie avec les timings exacts et tout. Sauf qu'un peu plus loin la plupart des modes sont invalidés "Mode is rejected: VertRefresh (75.0 Hz) out range" (celui là je veux bien, à la résolution max, il ne supporte que du 60 Hz) ou bien "Mode is rejected: Mode (1920 x 1200) is too large for DFP. Native resolution (Max: 1280 x 768)". Apparemment xorg s'est planté sur le calcul de la résolution native de mon écran.
Visiblement, certaines infos remontées sont erronées et du coup xorg invalides des modes qui sont bien valides. Il existe plusieurs façon de passer outre. Dans la section "Device" du xorg.conf il est possible de mettre "UseEDIDDpi", "UseEDIDFreqs" ou carrément "UseEDID" à false. J'ajoute en modeline le mode exact remonté par mon écran et je tente le coup. Les deux premiers ne changent rien. Après hésitation je tente le 3e en priant et là c'est l'écran noir. Je sens que je ne suis pas couché. Il existe aussi une option "ModeValidation" "NoEDIDModes" mais rien à faire. Puis c'est l'illumination : Je découvre une option de la mort inconnue de la section "Monitor" : "ModeValidation" "NoDFPNativeResolutionCheck". Miracle, ça marche nickel.
Bilan des courses, c'est quand même un peu le bronx dès qu'on sort des sentiers battus. Il y a une foule d'options pas franchement documentées dans xorg plus sans compter le fait que sur la section "Device" suivant le driver utilisé, les options sont différentes ou ne s'appellent pas pareil. Sinon, j'ai aussi découvert qu'apparemment le port DVI est limité en débit et ne permet pas de faire passer les résolutions les plus élevées (c'est vraiment couillon pour une norme aussi récente). Pour celà, il faut un DVI dual link. La limite est définie par le standard mais il est possible de passer outre (les liaisons DVI acceptent souvent plus que ce que le standard impose) et d'autoriser un débit plus élevé (Option "NoMaxPClkCheck"). Si ça ne marche pas, il faut ajouter une modeline limitant le débit. Pour celà, l'utilitaire "cvt" permet de générer des modelines avec débit réduit (option "-r"). Le port VGA ne semble pas soumis à ce type de limitation.
Bon, voilà c'était un peu long mais je pense avoir expérimenté quasiment toutes les looses possibles donc si ça peut aider... Maintenant je peux mouler et travailler en même temps sans avoir à changer de bureau. Que du bonheur.
Pour mon nowel, je me suis fait plaisir, je me suis acheté un grand écran qui troue les fesses : 24" 1920x1200, que du bonheur (pensais-je). J'ai passé une demi journée à galérer pour le faire fonctionner correctement. En démarrant sous Linux (Debian sid à jour), je me suis retrouvé avec une résolution très laide (1280x768). Bon, jusque là c'est normal, mon ancien écran était un 19" à tube donc je pensais naivement qu'en ajoutant les modes supplémentaires ça passerait. Que nenni. En cherchant sur le net, je me suis rendu compte que je n'étais pas un cas isolé. Visiblement, les écrans avec une résolution trop élevée (22" et plus) posent pas mal de problèmes. D'après ce que j'ai pu trouver, les modes jusqu'à 1600x1200 sont standardisé VESA mais au dessus, chaque fabricant d'écran fait un peu ce qu'il veut et c'est franchement le boxon.
Première piste, les modelines. Chez certains ça semble résoudre le problème. En cherchant à droite à gauche, j'ai vu que pour une même résolution, il y avait à peu près autant de timings que d'écrans. J'en ai essayé quelques uns sans succès. Dans Xorg.log, j'ai toujours "No valid mode for 1920x1200. Removing". Je me suis dit qu'il me fallait surement les timing exacts de mon écran. Bon, comment les obtenir ? Après enquête, chaque moniteur est capable de donner les informations sur les modes qu'il supporte. Plusieurs outils permettent de lire ses infos :
- "read-edid"/"get-edid" : Pas de bol ces outils font des appels VBE de bas niveau (un truc hérité du DOS) qui ne marchent qu'en 32bits et je suis sur AMD64. C'est mort.
- "xresprobe" : Un script fourni avec xorg. D'après ce que j'ai pu lire, il n'est pas trop maintenu et, contrairement à ce que dit la doc, il utilise encore les infos VBE (pour les DFP en tous cas). C'est mort aussi. Il me renvoie des infos vides.
- "ddcprobe" : Apparemment, il interroge la carte graphique et l'écran. Pas de bol non plus, il me liste une série de modes standards (jusqu'à 1280x1024) puis dans la section "edid" se contente d'un joli "edidfail". Tiens donc, mon écran renverrait-il des conneries ? Dans le doute je met la main sur une box windows pour voir ce que ça donne et là, plein les yeux. La résolution native de mon écran est reconnue et c'est magnifique. Bon si ça marche sans avoir installé le moindre driver, ça doit bien pouvoir marcher sous mon manchot, nom d'un eskimo à la banane !
Retour sous Linux mais cette fois en VGA (jusqu'ici j'avais utilisé le DVI). Bizarrement, là xorg me trouve le mode 1600x1200. Pas top mais il y a du mieux. "xresprobe" me trouve cette fois si des infos, même s'il reconnait pour le coup mon écran comme un CRT (c'est bizarre qu'en analogique on arrive à obtenir des infos et pas en numérique, mais bon). Du coup, il semble black lister les modes au dessus de 1600x1200. Après re-enquête, il s'avère qu'en interne, xorg ne fait plus appel à ces divers utilitaires pour lire les infos EDID. Il a sa propre méthode de lecture. Re-merde. Je sens que je vais finir par m'arracher les poils du cul à la pince à épiler.
Retour en DVI (si j'ai pris un écran avec prise DVI ce n'est pas pour passer par de l'analogique). Un bon moyen de voir ce qui se passe : En mode console, démarrer X avec un maximum de logs "startx -- -logverbose 6". Là je me rend compte qu'xorg arrive bien à lire les infos EDID. Il liste les modes standards -plus- les modes supplémentaires de mon écran et le 1920x1200 en fait partie avec les timings exacts et tout. Sauf qu'un peu plus loin la plupart des modes sont invalidés "Mode is rejected: VertRefresh (75.0 Hz) out range" (celui là je veux bien, à la résolution max, il ne supporte que du 60 Hz) ou bien "Mode is rejected: Mode (1920 x 1200) is too large for DFP. Native resolution (Max: 1280 x 768)". Apparemment xorg s'est planté sur le calcul de la résolution native de mon écran.
Visiblement, certaines infos remontées sont erronées et du coup xorg invalides des modes qui sont bien valides. Il existe plusieurs façon de passer outre. Dans la section "Device" du xorg.conf il est possible de mettre "UseEDIDDpi", "UseEDIDFreqs" ou carrément "UseEDID" à false. J'ajoute en modeline le mode exact remonté par mon écran et je tente le coup. Les deux premiers ne changent rien. Après hésitation je tente le 3e en priant et là c'est l'écran noir. Je sens que je ne suis pas couché. Il existe aussi une option "ModeValidation" "NoEDIDModes" mais rien à faire. Puis c'est l'illumination : Je découvre une option de la mort inconnue de la section "Monitor" : "ModeValidation" "NoDFPNativeResolutionCheck". Miracle, ça marche nickel.
Bilan des courses, c'est quand même un peu le bronx dès qu'on sort des sentiers battus. Il y a une foule d'options pas franchement documentées dans xorg plus sans compter le fait que sur la section "Device" suivant le driver utilisé, les options sont différentes ou ne s'appellent pas pareil. Sinon, j'ai aussi découvert qu'apparemment le port DVI est limité en débit et ne permet pas de faire passer les résolutions les plus élevées (c'est vraiment couillon pour une norme aussi récente). Pour celà, il faut un DVI dual link. La limite est définie par le standard mais il est possible de passer outre (les liaisons DVI acceptent souvent plus que ce que le standard impose) et d'autoriser un débit plus élevé (Option "NoMaxPClkCheck"). Si ça ne marche pas, il faut ajouter une modeline limitant le débit. Pour celà, l'utilitaire "cvt" permet de générer des modelines avec débit réduit (option "-r"). Le port VGA ne semble pas soumis à ce type de limitation.
Bon, voilà c'était un peu long mais je pense avoir expérimenté quasiment toutes les looses possibles donc si ça peut aider... Maintenant je peux mouler et travailler en même temps sans avoir à changer de bureau. Que du bonheur.
> Lire le journal (46 commentaires, moyenne: 1,4).
Vous avez demandé le commentaire #892676.



c'est le DVI le bug
quand je lis .... "Sinon, j'ai aussi découvert qu'apparemment le port DVI est limité en débit et ne permet pas de faire passer les résolutions les plus élevées (c'est vraiment couillon pour une norme aussi récente)."
Cool, j'ai bien fait de pas céder à la mode du DVI. Avec la petite prise VGA (standard vieux de 20 ans) j'utilise un écran 22 pouces CRT avec le pilote libre Radeon, sur une X300 64Mo, j'obtiens sans aucun problème la résolution de 2048x1536@60Hz, et compiz est potable en 1600x1200@85Hz. Bref, tu ne mentionnes pas le pilote utilisé, mais ça change pas mal la donne, car chaque pilote cause plus ou moins bien avec le matériel...
Pour info, le DVI est mort, il y a une nouvelle norme qui est censée porter le son en plus dans le câble...
[^]Re: c'est le DVI le bug
Et qui est pleine de DRM.
[^]Re: c'est le DVI le bug
Bref, tu ne mentionnes pas le pilote utilisé, mais ça change pas mal la donne, car chaque pilote cause plus ou moins bien avec le matériel
C'est le driver nvidia mais avec nv c'est pareil.
Pour info, le DVI est mort, il y a une nouvelle norme qui est censée porter le son en plus dans le câble.
Il n'y en a pas qu'une. En ce moment on la mode c'est le HDMI (qu'on retrouve sur pas mal de télés) qui n'apporte pas grand chose à part des DRMs en plus. Sinon il y a le DisplayPort (bardé de DRM aussi) soutenu par le VESA et l'EDI soutenu par je ne sais plus qui (mais on s'en fout un peu en fait). Le seul point commun à toutes ces normes ? Elle sont toutes bourrées de DRMs.
[^]Re: c'est le DVI le bug
En ce moment on la mode c'est le HDMI (qu'on retrouve sur pas mal de télés) qui n'apporte pas grand chose à part des DRMs en plus.
Euh ... ah bon ca apporte les DRMs ?
pourtant le DVI gère déjà le HDCP
[^]Re: c'est le DVI le bug
Le DVI permet de véhiculer un signal numérique mais la norme n'impose rien de particulier sur son contenu. On peut y faire circuler un signal chiffré mais ça sort de ce qui est défini dans la norme. Pour toutes les autres interfaces, c'est imposé. Un matériel HDMI doit supporter le HDCP (et payer des royalties, toussa) pour avoir le droit d'utiliser le nom, le logo, etc.
[^]Re: c'est le DVI le bug
Hum, si je ne dis pas de bêtises, HDMI, ce n'est qu'un format de prise pratique pour avoir à la fois le DVI et le son numérique... et des DRMs en plus.
Ainsi, les HDMI type A sont compatibles avec les DVI single link, et les type B avec le dual link.
En gros, HDMI et DVI évoluent ensemble et de manière compatible. Il n'y en a pas un qui remplace l'autre, et les deux sont dimensionnés aux besoins actuels dans leurs dernières versions.
[^]60 Hz
Et tu l'utilises vraiment ?
Non, parce que 60 Hz, sur un CRT, c'est un truc à se finguer les yeux !
Berlin 1936, Moscou 1980, Pékin 2008.
Jeux Olympiques, sponsor officiel de la dictature.
Mexico 1968, Pékin 2008.
Jeux Olympiques, sponsor officiel de la répression.
[^]Re: 60 Hz
dépend surtout du CRT, et de l'utilisateur
Subete ga wakatta toki…watashi ga anta wo korosu.
[^]Re: 60 Hz
dépend surtout du CRT, et de l'utilisateur
Ça dépend de rien du tout, 60Hz sur un CRT c'est: "bonjour le cessité"
[^]Re: 60 Hz
Jouer sur un écran 60Hz me pose aucun problème. Par contre j'ai mal à la tête dès que je veux faire de la bureautique.
Donc oui ça dépend de l'utilisateur : joueur ou pas.
[^]Re: 60 Hz
Dans les jeux, le 60Hz ne fait pas mal aux yeux mais comme tu dis, en bureautique (ou tout autre qui n'est pas du jeu) il ne vaut mieux pas se mettre en 60Hz sinon tu finis avec des lunettes.
[^]Re: 60 Hz
marrant j'ai eu pendant longtemps un écran correct en 60Hz sans problème. Et j'ai pas de problème de vision.
Et un moment j'ai fait du dual screen avec un autre CRT et, avec les mêmes params, on voyait clairement un scintillement sur l'un, et pas sur l'autre.
Juste comme ça les tv c'est du CRT et c'est du 50Hz.
Mais bon comme tu es sur de tout savoir, je t'indiquerais dans ce cas que le mot est "cécité". Quand on fait la leçon, c'est mieux de pas faire de fautes ;)
Subete ga wakatta toki…watashi ga anta wo korosu.
[^]Re: 60 Hz
Sauf que les téléviseurs affichent en général en entrelacé, ce qui diminue l'effet de scintillement, enfin être près du téléviseur pose un problème certain.
Les petits macintosh, avec un écran de 9"1/2 avaient non seulement un affichage à 60Hz, mais une certaine rémanence. Bref, c'était vraiment agréable, quoique un peu petit :
L'autre problème pour les écrans, c'est la valeur du noir, généralement c'est une sorte de gris foncé sur les écrans de mauvaises qualités, ce manque de contraste oblige à pousser la luminosité, ce qui augmente la perception du scintillement. Dans les jeux, il y a peu ou pas de grands applats blancs.
[^]Re: 60 Hz
Cherche pas, il y a des gens qui sont plus ou moins sensibles.
J'ai connu des gens qui avaient leur moniteur à 60 Hz sans que ça les dérange et qui ne voyaient même pas la différence lorsque je les basculais en 85 Hz, et j'en connais d'autre pour qui tourner en dessous de 75 Hz était l'assurance d'avoir des yeux de lapin myxomatosé au bout de quelques minutes.
En ce qui me concerne, je fais nettement la distinction entre du 60, du 75, du 85 ou du 100 Hz, quoi qu'entre 85 et 100 Hz, ça devient plus délicat à discerner, et je n'apprécie guère travailler sur un écran qui tourne à moins de 85 Hz. :-)
Et sinon, il y a pas mal de téléviseurs qui tournent à 100 Hz aussi, et comme dit juste au-dessus, les téléviseurs produisent un affichage « entrelacé » lorsqu'ils tournent à 50 Hz. :-)
[^]Re: 60 Hz
Cherche pas, il y a des gens qui sont plus ou moins sensibles.
Ca je suis tout à fait d'accord ;)
(je remet la phrase qui a fait tout ce foin :
dépend surtout du CRT, et de l'utilisateur
;))
il y a pas mal de téléviseurs qui tournent à 100 Hz aussi,
Les "récents" (moins de 10 ans quoi ). Les plus anciens je crois pas qu'il y en avait des masses.
Subete ga wakatta toki…watashi ga anta wo korosu.
[^]Re: 60 Hz
calme toi 007. Je ne donnais aucunes leçons, ce n'est pas parce que l'ont te contre-dit qu'on se pose en donneur de leçon.D'ailleurs ta réponse est bien plus arrogante, en plus d'être faussé (écran TV != CRT).
Tous les écrans CRT que j'ai pu trouver dans les administrations, chez madames/monsieur tout le monde avaient une image excècrable en 60hz et généralement ce sont des personnes qui ne jouent pas avec, auquel cas l'effet de dégradation pourrait être atténué. Mais vu que l'usage d'un ordi va audelà du joujou video, on peut conclure qu'en règle générale 60hz c'est caca.
Cela dit, peut-être que tu as un super Eizo qui de file une image stable à 60hz en 1024x768 (résolution de monsieur tout le monde à l'époque des CRT)
mais dans le cas contraire, c'est un suicide occulaire.
[^]Re: 60 Hz
Je ne donnais aucunes leçons, ce n'est pas parce que l'ont te contre-dit qu'on se pose en donneur de leçon.
Sauf qu'il ne s'agissait que d'une affirmation simple, sans aucune argumentation.
Pas un contradiction appuyé de fait, et ouverte au dialogue.
D'ailleurs ta réponse est bien plus arrogante, en plus d'être faussé (écran TV != CRT).
Effectivement il y a des écrans plasma et des LCD dans les écrans TV.
Mais existent ils des écrans CRT ?Oui
Peuvent ils à 50 Hz ? Oui.
Alors si tu estime que c'est arrogant de rappeller ça, je suis arrogant oui.
Tous les écrans CRT que j'ai pu trouver dans les administrations, chez madames/monsieur tout le monde avaient une image excècrable en 60hz
Donc tous les écrans sont exécrables en 60 Hz ?
Mais vu que l'usage d'un ordi va audelà du joujou video, on peut conclure qu'en règle générale 60hz c'est caca.
En règle générale ... SUR TA population d'écran, oui c'est sans doute caca.
Mais déjà ta popuplation est fortement biaisé (seulement sur ton expérience professionnel, et sur des administrations, qui offrent rarement la crème au niveau des technos).
Mais est ce que tu précisais cela ?
Je te cite
dépend surtout du CRT, et de l'utilisateur
Ça dépend de rien du tout, 60Hz sur un CRT c'est: "bonjour le cessité"
Donc on voit que non seulement tu ne précisais pas ça, mais que tu mettais tous les CRT dans le même moule.
Cela dit, peut-être que tu as un super Eizo qui de file une image stable à 60hz en 1024x768 (résolution de monsieur tout le monde à l'époque des CRT) mais dans le cas contraire, c'est un suicide occulaire.
Oh les CRT ont été utilisé bien plus qu'à une résolution de 1024 (14 ou 15" si je ne m'abuse ça).
Subete ga wakatta toki…watashi ga anta wo korosu.
[^]Re: 60 Hz
Non, ça me sert juste à essayer de lire Elephants Dream en HD dans une fenêtre, pour rire. Et voir que le CPU n'en peut us du coup ;-)
Effectivement, je bosse en 1600x1200@85Hz