Résolution d'écran (avancé)
Vous vous retrouvez avec une résolution de 640x480 alors que votre carte graphique peut faire bien mieux ? Votre carte graphique ou votre moniteur n'ont pas été bien détecté(s) ? Cette page va vous aider à résoudre ce problème.
Exécuter à nouveau le script de détection automatique
Voir la page xorg.
Spécifications de l'écran non détecté
Créez en premier lieu un fichier xorg.conf. Éditez le fichier /etc/X11/xorg.conf avec les droits d'administration.
Recherchez dans ce fichier la section nommée Monitor
. Entre les lignes Section "Monitor"
et EndSection
, vous devriez voir apparaître deux lignes qui débutent par les mots HorizSync
et VertRefresh
. Si elles ne sont pas présentes, vous avez des chances que ce soit la raison de votre problème !
Vous avez maintenant besoin de trouver l'information nécessaire, soit dans le manuel de votre écran, soit par la ligne de commande. Vous avez besoin de connaître la fréquence de synchronisation horizontale (HorizSync
) (habituellement mesurée en kHz) et le taux de rafraîchissement vertical (VertRefresh
) (normalement en Hz). Ces informations sont habituellement disponibles sous la forme "30-98 kHz" ou "50-160 Hz".
Vous pouvez également installez le paquet xresprobe et lancer la commande :
sudo ddcprobe | grep monitorrange
sudo add-apt-repository ppa:sergiomejia666/xresprobe && sudo apt-get update
Si votre écran supporte cette commande (ce qui n'est pas toujours le cas), la première paire de chiffres affichée correspond au taux HorizSync, la seconde aux valeurs VertRefresh.
n'est-ce pas plus simple avec xrandr??
Attention, il arrive quelques fois que ddcprobe ne renvoie ni la résolution maximale (renvoie par exemple 1024x768 au lieu 1280x1024) ni les fréquences maximales du moniteur. Sur certains moniteurs (en général des LCDs), dans le menu hardware du moniteur, il doit y avoir une fonction Reset. En utilisant la fonction Reset du moniteur, vous devriez obtenir les nouvelles résolutions et les nouvelles fréquences. (testé sur des vieux moniteurs XIOD LCD 17 pouces).
Il y a deux manières d'entrer ces valeurs dans le fichier de configuration :
- En lançant la reconfiguration du serveur X mais avec le paramètre
-plow
en plus :sudo dpkg-reconfigure -plow xserver-xorg
- En entrant manuellement les valeurs dans le fichier /etc/X11/xorg.conf. Ajoutez donc les deux lignes
HorizSync
etVertRefresh
selon l'exemple ci-dessous (mais avec vos valeurs bien sûr – n'essayez surtout pas de mettre des valeurs au hasard, ça ne marchera pas !!) :
Section "Monitor" Identifier "FLATRON 995F" Option "DPMS" HorizSync 30-96 VertRefresh 50-160 EndSection
Fermer tous les programmes et redémarrez le serveur X (comme précédemment).
La modification précédente n'est peut-être pas suffisante. Alors il vous faudra aussi mettre la résolution que vous souhaitez en l'ajoutant selon l'exemple ci-dessous (ici « 1280x1024
», mais avec vos valeurs bien sûr).
Section "Screen" Identifier "Default Screen" Device "Carte vidéo générique" Monitor "Écran générique" DefaultDepth 24 SubSection "Display" Depth 1 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 4 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 8 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 15 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 16 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 24 Modes "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection EndSection
Modifier les options du pilote
Dans le cas ou l'ajout de modeline ne corrige pas votre problème de résolution, il est possible de rajouter certains paramètres dans la section Device
du fichier de configuration de Xorg. Ces paramètres permettent de désactiver la reconnaissance automatique des paramètres de l'écran ( Plug'n'play ) et de forcer les résolutions définies.
Ils dépendent du pilote utilisé. Pour le pilote propriétaire nvidia, vous pouvez utiliser :
Option "UseEDID" "FALSE" Option "UseDisplayDevice" "DFP" Option "UseEDIDFreqs" "FALSE" Option "ModeValidation" "NoEdidModes"
Exemple :
Section "Device" Identifier "NVIDIA Gforce 7650 GS" Driver "nvidia" Busid "PCI:2:0:0" Videoram 262144 Option "AddARGBVisuals" "True" Option "AddARGBGLXVisuals" "True" Option "UseDisplayDevice" "DFP" Option "UseEDIDFreqs" "FALSE" Option "ModeValidation" "NoEdidModes" Option "UseEDID" "FALSE" Option "NoLogo" "True" EndSection
Pour le pilote libre radeon, vous pouvez utiliser :
Option "IgnoreEDID" "True" Option "DDCMode" "False"
Configuration et ajout d'une nouvelle résolution d'écran
Le principe de base est de :
- Récupérer les paramètres de la résolution que l'on souhaite,
- Créer une nouvelle configuration de résolution et ajouter cette résolution aux résolutions actuelles,
- Activer cette résolution.
Les paramètres de la résolution ou configuration de la résolution s'appellent Modeline sous Linux. La commande qui va nous servir est xrandr.
Votre problème est que la ou les résolutions que vous souhaitez ne sont disponibles ni dans les paramètres d'affichage, ni sous ArandR. La commande xrandr vous liste les résolutions disponibles et vous constaterez que la résolution que vous souhaitez n’apparaît pas.
Reportez-vous à la page xrandr pour la suite des manipulations.
Modification du fichier de configuration Xorg.conf
Résolutions ou rafraîchissements exotiques : les « Modelines »
Il arrive que la résolution que l'on voudrait absolument utiliser refuse jusqu'ici de fonctionner. Il faut dans ce cas utiliser les Modelines. Pour générer cette modeline, on tape dans un terminal :
gtf largeur hauteur fréquence
Où largeur et hauteur sont exprimés en pixels, et la fréquence (de rafraîchissement verticale) en Hz. Par exemple :
gtf 1680 1050 75
devrait donner :
# 1680x1050 @ 75.00 Hz (GTF) hsync: 82.20 kHz; pclk: 188.07 MHz Modeline "1680x1050_75.00" 188.07 1680 1800 1984 2288 1050 1051 1054 1096 -HSync +Vsync
On recopie alors la deuxième ligne (la première n'est qu'un commentaire) dans la section Monitor du fichier « xorg.conf » :
Section "Monitor" Identifier "FLATRON 995F" Option "DPMS" HorizSync 30-96 VertRefresh 50-160 Modeline "1680x1050_75.00" 188.07 1680 1800 1984 2288 1050 1051 1054 1096 -HSync +Vsync EndSection
Et on renseigne la résolution dans la section « Screen » de « xorg.conf ».Et ceci pour chaque profondeur de couleur.
Section "Screen" Identifier "Default Screen" Device "Carte vidéo générique" Monitor "Écran générique" DefaultDepth 24 SubSection "Display" Depth 1 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 4 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 8 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 15 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 16 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection SubSection "Display" Depth 24 Modes "1680x1050_75.00" "1280x1024" "1024x768" "832x624" "800x600" "720x400" "640x480" "640x400" "640x350" EndSubSection EndSection
Après ceci, il suffit de sauver votre xorg.conf et de redémarrer votre session graphique.
Il faut rentrer autant de fois la commande gtf largeur hauteur fréquence
que l'on veut de résolution (avec les paramètres pour chacune), et recopier la deuxième ligne (modelines) pour chaque résultat différent dans la section Monitor
. Il doit donc y avoir à la fin autant de modelines
que de résolutions définies dans Display
. (si vous voulez, par exemple définir une certaine fréquence pour une certaine résolution).
Il n'est pas forcément indispensable de rentrer le mode
pour chaque depth
dans display
, celle par défaut: depth24
peut suffire.
Problèmes connus
Problème de résolution uniquement sur l'écran de chargement du système (Grub)
Il est possible que le problème d'affichage touche uniquement l'écran de sélection du système d'exploitation : l'affichage n'est pas encore configuré complètement et certains écrans à dimensions "spéciales" ne sont reconnus qu'après l'écran du Grub.
On peut alors tenter de modifier la résolution par défaut, mais si cela ne fonctionne pas une solution radicale consiste à passer le menu Grub en mode "texte uniquement". Pour cela, taper dans un terminal (l'effet de sed est de décommenter la ligne "GRUB_TERMINAL=console"):
sudo sed -i -e 's/#GRUB_TERMINAL/GRUB_TERMINAL/g' /etc/default/grub
Puis sauvegarder les modifications :
sudo update-grub
Problème de Checksum des EDID avec certains écrans particuliers
Sur les dernières versions d'Ubuntu, certains écrans (particulièrement les HDMI) peuvent ne plus fonctionner correctement alors qu'il n'y avait aucun problème sur les distributions précédentes. Cela est dû au fait que Xorg fait maintenant une vérification de la checksum de l'EDID de votre écran. Quand cette vérification ne passe pas, votre écran qui marchait pourtant bien sur une ancienne distribution ne fonctionnera qu'en mode de secours (800x600) et rien ne vous indiquera vraiment pourquoi. Une simple vérification des logs pointera le problème.
Pour résoudre cela, il suffit d'ajouter la ligne suivante dans la section Device
du fichier xorg.conf :
Option "IgnoreEDIDChecksum" "CRT,DFP,TV"
Problème de fréquence avec Wine
Si votre serveur X se coupe dès que vous lancez une application avec Wine et que votre écran affiche un message comme "fréquence trop élevée" ou "out of range", ajoutez cette option à la Section "Device" de votre fichier xorg.conf :
Option "ModeValidation" "NoXServerModes"
Profondeur de couleur incorrecte
Il peut arriver que la configuration automatique règle la profondeur de couleur plus élevée que le matériel ne peut le supporter. Pour savoir si c'est votre cas, ouvrez le fichier /etc/X11/xorg.conf et recherchez le mot DefaultDepth
. La profondeur de couleur configurée est habituellement 24. Il est possible que cette valeur soit trop élevée; essayez alors de mettre cette valeur à 16.
Si cela ne résout pas votre problème, vous pourrez ensuite la remettre telle qu'elle était.
Enregistrez le fichier, fermez toutes les applications et redémarrez l'environnement graphique. Il ne reste plus qu'à espérer que vous puissiez vous reconnecter à la bonne résolution !
Voir aussi
- Tutoriel Résolution trop faible, écran pas reconnu sur le forum de discussion Ubuntu-fr
Contributeurs: Claude, Fabien26, _Enchained, Id2ndR, NioS, MpokLePuissant