Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
xrandr [Le 11/09/2012, 16:58]
ymulleneers [Interface graphique] vidage et remise en en-tete avec avertissement
xrandr [Le 11/09/2022, 11:56] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>Hardy écran personnalisation ​vétuste}}+{{tag>Focal écran personnalisation ​résolution}}
  
 ---- ----
Ligne 5: Ligne 5:
 ====== XRandR ====== ====== XRandR ======
  
-XRandR est un outil en ligne de commande qui utilise l'​extension RandR de Xorg afin de gérer les paramètres d'​affichage de vos écrans comme la taille, le redimensionnement,​ la rotation ou le multi-écran.+**XRandR** est un outil en ligne de commande qui utilise l'​extension RandR de [[:Xorg]] afin de gérer les paramètres d'​affichage de vos écrans comme la taille, le redimensionnement,​ la rotation ou le multi-écran.
  
-Le point fort de l'​extension RandR est que cette dernière est directement implémentée dans Xorg et ne nécessite pas le redémarrage de X lorsque l'on souhaite par exemple changer sa résolution,​ brancher un 2e écran ou [[multi-écran|en utiliser plusieurs]].+Le point fort de l'​extension RandR est que cette dernière est directement implémentée dans Xorg et ne nécessite pas le redémarrage de X lorsque l'on souhaite par exemple changer sa résolution,​ brancher un deuxième ​écran ou [[:multi-écran|en utiliser plusieurs]].
  
 +Il existe des interfaces graphiques réalisant une partie des transformations de xrandr :
  
 +  * Voir la page [[:​configurer_son_ecran|sur comment configurer son écran]] pour les interfaces graphiques par défaut.
 +  * **[[apt>​LXRandR]]** (installé par défaut sous [[:​Lubuntu]]).
 +  * **[[https://​debian-facile.org/​doc:​environnements:​x11:​arandr|ARandR]]** : très utile pour gérer le multi-écran avec LXDE (Lubuntu). Permet de régler l'​emplacement d'un écran activé mais qui n'est pas connecté (écran virtuel qui peut être partagé via vnc)
  
-===== Lister et changer la résolution d'un écran ===== 
  
-==== Lister les résolutions disponibles ====+===== Configuration ===== 
 +==== Connaitre la configuration xrandr actuelle ==== 
 +Avant de jouer avec xrandr, il est souvent utile de connaitre la configuration xrandr actuelle. Voici une astuce super utile : utiliser l'​application arandr : 
 +  - Installer **[[apt>​arandr]]** 
 +  - Lancer //​arandr//​ 
 +  - (optionnel) changer la configuration de vos écrans 
 +  - Menu //​Disposition//​ => commande //​Enregisrter sous...// 
 +  - Choisir un fichier 
 +  - Ouvrir le fichier dans un éditeur de texte et vous verrez la commande //xrandr// complète 
 +==== Lister ​les sorties et les résolutions disponibles ====
  
-Depuis ​un [[:​terminal]] ​en lancez la commande suivante.+Pour lister les résolutions disponibles,​ depuis ​un [[:​terminal]] lancez la commande suivante: <​code>​xrandr</​code>​
  
-<​code>​xrandr</​code>​+Vous obtenez une réponse, variable suivant votre matériel et la configuration de votre serveur X, du type : <​code ​bash> 
 +Screen 0: minimum 320 x 200, current 1366 x 768, maximum 32767 x 32767 
 +eDP1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 345mm x 194mm 
 +   ​1366x768 ​      ​60.0*+ 
 +   ​1360x768 ​      ​59.8 ​    ​60.0 ​  
 +   ​1024x768 ​      ​60.0 ​  
 +   ​800x600 ​       60.3     ​56.2 ​  
 +   ​640x480 ​       59.9   
 +CVT connected 1440x900+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 
 +   ​1440x900 ​     60.0 
 +   ​1024x768 ​      ​60.0* ​  
 +   ​800x600 ​       60.3     ​56.2 ​  
 +   ​848x480 ​       60.0 
 +   ​640x480 ​       59.9   
 +TV1 unknown connection (normal left inverted right x axis y axis) 
 +   ​848x480 ​       59.9 + 
 +   ​640x480 ​       59.9 + 
 +   ​1024x768 ​      ​59.9 ​  
 +   ​800x600 ​       59.9 
 +</​code>​
  
-Vous obtenez une réponse, variable suivant votre matériel ​et la configuration ​de votre serveur X, du type+Vous voyez apparaître les noms des modes écrans disponibles en première colonne ​et les différentes fréquences ​de rafraîchissement disponibles en seconde colonne.
  
-    Screen 0: minimum 320 x 200, current 2304 x 1024, maximum 8192 x 8192 +Les noms des écrans apparaissent en MAJUSCULES et leur statut ​suit.  Il existe ​sorties vidéo possibles : sortie VGA, sortie DVI, sortie HDMI, sortie LVDS pour la sortie principale d'un portable et sortie TV pour S-video. Les écrans utilisables sont marqués « connected », leurs noms seront utilisés avec la commande « -- output ».
-    LVDS1 connected 1024x768+1280+0 (normal left inverted right x axis y axis) 331mm x 207mm +
-       ​1280x800 ​      60.0 + +
-       ​1024x768 ​      60.0*  +
-       ​800x600 ​       60.3     ​56.2 ​  +
-       ​640x480 ​       59.9   +
-    VGA1 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 0mm x 0mm +
-       ​1024x768 ​      ​60.0* ​  +
-       ​800x600 ​       60.3     ​56.2 ​  +
-       ​848x480 ​       60.0   +
-       ​640x480 ​       59.9   +
-     TV1 unknown connection (normal left inverted right x axis y axis) +
-       ​848x480 ​       59.9 + +
-       ​640x480 ​       59.9 + +
-       ​1024x768 ​      ​59.9 ​  +
-       ​800x600 ​       59.9   +
- +
-Vous voyer apparaître les noms des modes écrans disponibles en première colonne et les différentes fréquences de rafraîchissement disponibles en seconde colonne. ​  +
- +
-Les noms des écrans apparaissent en MAJUSCULES et leur statu suit.  Il existe ​sorties vidéo possibles : sortie VGA, sortie DVI, sortie LVDS pour la sortie principale d'un portable et sortie TV pour S-video.+
  
 Attention, il n'est pas nécessaire d'​avoir sur votre ordinateur toutes les sorties détectées par XRandR. Certaines peuvent être bridées par le constructeur. Attention, il n'est pas nécessaire d'​avoir sur votre ordinateur toutes les sorties détectées par XRandR. Certaines peuvent être bridées par le constructeur.
  
-Les modes activé ​sont ceux/celui qui est directement ​suivi du signe *. +Les modes activés ​sont directement ​suivis ​du signe *.
-==== Fréquence listée dans les modes disponibles ====+
  
-=== Dimension de la fenêtre ​===+==== Lister les propriétés disponibles ====
  
-Pour changer la résolution vers 1024x768 ​(plus haute fréquence ​disponible),​ tapez+L'​option ''​%%--%%prop''​ permet d'​obtenir un affichage encore plus détaillé des propriétés disponibles. 
 +<​code>​ 
 +usr@pc:~$ xrandr --prop 
 +</​code>​ 
 +La sortie de cette commande renvoie une information analogue à l'​affichage ci-dessous : 
 +<​code>​ 
 +Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192 
 +HDMI-1 disconnected (normal left inverted right x axis y axis) 
 + aspect ratio: Automatic  
 + supported:​ Automatic, 4:3, 16:9 
 + Broadcast RGB: Automatic  
 + supported:​ Automatic, Full, Limited 16:235 
 + audio: auto  
 + supported:​ force-dvi, off, auto, on 
 + non-desktop:​ 0  
 + range: (0, 1) 
 + link-status:​ Good  
 + supported:​ Good, Bad 
 +HDMI-2 disconnected (normal left inverted right x axis y axis) 
 + aspect ratio: Automatic  
 + supported:​ Automatic, 4:3, 16:9 
 + Broadcast RGB: Automatic  
 + supported:​ Automatic, Full, Limited 16:235 
 + audio: auto  
 + supported:​ force-dvi, off, auto, on 
 + non-desktop:​ 0  
 + range: (0, 1) 
 + link-status:​ Good  
 + supported:​ Good, Bad 
 +DP-1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 
 + Broadcast RGB: Automatic  
 + supported:​ Automatic, Full, Limited 16:235 
 + audio: auto  
 + supported:​ force-dvi, off, auto, on 
 + non-desktop:​ 0  
 + range: (0, 1) 
 + link-status:​ Good  
 + supported:​ Good, Bad 
 +   ​1024x768 ​     60.00   
 +   ​800x600 ​      ​60.32 ​   56.25   
 +   ​848x480 ​      ​60.00 ​  
 +   ​640x480 ​      ​59.94 ​  
 +   ​1366x768_60.00 ​ 59.80*  
 +HDMI-3 disconnected (normal left inverted right x axis y axis) 
 + aspect ratio: Automatic  
 + supported:​ Automatic, 4:3, 16:9 
 + Broadcast RGB: Automatic  
 + supported:​ Automatic, Full, Limited 16:235 
 + audio: auto  
 + supported:​ force-dvi, off, auto, on 
 + non-desktop:​ 0  
 + range: (0, 1) 
 + link-status:​ Good  
 + supported:​ Good, Bad 
 +</​code>​ 
 +==== Fréquence listée dans les modes disponibles ==== 
 +=== Dimension de la fenêtre=== 
 +Pour changer la résolution vers 1440x900 ​(plus haute résolution ​disponible ​d'​après la réponse du terminal), tapez dans un [[:​terminal]]:​ <​code>​xrandr -s 1440x900</​code>​
  
-<​code>​xrandr -s 1024x768</​code>​+=== Fréquences de rafraîchissement ===
  
-=== Fréquence de rafraîchissement ​ === +La commande ci-dessous change la fréquence ​à la nouvelle valeur de 1440×900 ​à 60 Hz : <​code>​xrandr -s 1440x900 ​-r 60</​code> ​ 
- +
-La commande ci-dessous change la résolution ​à la nouvelle valeur de 1024×768 ​à 75 Hz : +
- +
-<​code>​xrandr -s 1024x768 ​-r 75</​code>​+
  
 === Utiliser plusieurs écrans === === Utiliser plusieurs écrans ===
  
-Si par exemple ​nous voulons ​mettre le second écran sur le coté droit de l'​écran principal et que l'​écran principal ait une résolution de 1920x1200, ​ nous pouvons ​taper +Si par exemple ​vous souhaitez ​mettre le second écran ​connecté en HDMI sur le coté droit de l'​écran principal et que l'​écran principal ait une résolution de ''​1920x1200''​,  nous pouvons ​entrer dans un terminal : <​code>​xrandr --output ​HDMI --pos 1920x0 --mode ​1440x900 ​--rate ​60</​code>​
- +
-  ​xrandr --output ​VGA0 --pos 1920x0 --mode ​1024x768 ​--rate ​75.1+
  
 Ainsi, nous pouvons en déduire l'​effet des paramètres. Ainsi, nous pouvons en déduire l'​effet des paramètres.
Ligne 72: Ligne 134:
   * **%%--rate%%** la fréquence de l'​écran,​ optionnel : par défaut c'est la plus grande valeur qui est appliquée.   * **%%--rate%%** la fréquence de l'​écran,​ optionnel : par défaut c'est la plus grande valeur qui est appliquée.
  
-==== Fréquence non listée dans les modes disponibles ====+**%%Exemples de configuration multi-écrans (multi screen, dual screen, mirror screen, clone screen...)%%** 
 +  
 +Pour chaque configuration,​ mettez la ou les lignes suivantes dans **%%/​etc/​X11/​Xsession.d/​45x11-xrandr%%**
  
-Imaginons que vous ayez lu le manuel de votre écran et que vous y aviez lu que le mode //1280x1024 à 60Hz// était supporté mais que ce mode n'est aucunement pas listé dans les modes disponibles et que vous enrager de ne pouvoir profiter des possibilités de votre écran. ​ Nous allons imposer la résolution de l'​écran à cette dimension et cette fréquence avec xrandr. ​ Nous ne modifierons pas le fichier ​de configuration de Xorg.  Mais, si ce mode n'est pas supporté, nous obtiendrons un message "​Frequency out of range" et nous ne verrons plus rien... Nous pourrons éventuellement revenir à une résolution et une fréquence supportée en utilisant le paragraphe "​Fréquence listée dans les modes disponibles"​ en aveugle.+Pour tester après une modification ​de configuration, il suffit ​de fermer puis réouvrir ​une session.
  
-Nous allons utiliser les programmes complémentaires ​**//gtf//** et **//sed//**, que vous trouverez dans le dépôt FIXME. ​ Vous entrez la ligne de commande suivante (Attention, messieurs les modificateurs,​ il y a truc non-trivial...),​ vous devriez bien entendu adapter les nombres 1280, 1024 et 60 à votre résolution cible+  ​* **%%Deux écrans cote à cote : %%** 
 +DP-2 est l'​écran principal, DP-1 est **%%à droite%%** de DP-2résolutions différentes : 
 +<​code>​ 
 +xrandr --output DP-2 --mode 1680x1050 --primary 
 +xrandr --output DP-1 --mode 1280x1024 --right-of DP-2 
 +</​code>​
  
-       ​xrandr ​--newmode $(gtf 1280 1024 60 | sed -ne '​s/"//​g;​s/​ Modeline //p')+Vous pouvez adapter la position de l'​écran secondaire avec **%% --left-of, --right-of, --above, --below%%** en fonction de vos besoins.
  
-Bravovous avez défini un mode nommé //​1280x1024_60.00//​ ou un nom adapté à votre résolution cible. ​ Maintenant, il ne vous reste plus qu'à l'​autoriser pour l'​écran ​récalcitrant. ​ Imaginons que le nom de cet écran soit //VGA1//.+  * **%%Deux écrans clonésrésolutions identiques (Clone dual screen) : %%** 
 +DP-2 est l'​écran ​principal, DP-1 est identique à DP-2, les résolutions sont identiques : 
 +<​code>​ 
 +xrandr --output DP-2 --mode 1280x1024 --output DP-1 --same-as DP-2 
 +</code>
  
-    ​xrandr --addmode VGA1 1280x1024_60.00+  * **%%Deux écrans clonés, résolutions différentes (Clone dual screen) : %%** 
 +DP-3 est l'​écran principal, DP-1 est identique à DP-3, les résolutions sont différentes : 
 +<​code>​ 
 +xrandr --output DP-3 --mode 1280x1024 --scale 1x1 --output DP-1 --same-as DP-3 --scale 1.25x1.33 
 +</​code>​ 
 +Ici, la résolution de l'​écran **%%principal%%** est **%%1280x1024%%**,​ celle de l'​écran **%%secondaire%%** est **%%1024x768%%**.
  
-Toutes mes félicitation vous pouvez maintenant utiliser un programme graphique ​pour changer la résolution de cet écran. ​Par exemple, par le biais de la configuration du système -> Affichage Ou vous référer à la section "mode listé dans les modes disponibles"​ ci-dessus.+NB : L'​échelle déclarée ​pour l'écran ​secondaire (1.25x1.33) est obtenue en divisant ​les dimensions de l'​écran **%%principal%%** par celles de l'​écran **%%secondaire%%**.
  
 +Ici  : 1280/​1024=**%%1.25%%** et 1024/​768=**%%1.33%%**
 +==== Fréquence non listée dans les modes disponibles ====
  
-===== Multi-écran ​=====+Il est tout à fait possible que votre écran ​supporte le mode //1280x1024 à 60Hz// mais que ce mode ne soit actuellement pas listé dans les modes disponibles. Dans ce cas vous pouvez imposer la résolution de l'​écran à cette dimension et cette fréquence avec ''​xrandr''​. Mais, si ce mode n'est pas supporté, vous obtiendrez un message ''​Frequency out of range''​ et vous ne verrez plus rien à l'​écran... Vous pourrez éventuellement revenir à une résolution et une fréquence supportées en utilisant le paragraphe [[#​Fréquence listée dans les modes disponibles|Fréquence listée dans les modes disponibles]] en aveugle (c'est à dire sans voir ce que l'on tape!).
  
-<​note>​A partir de la version 12.04 Precise Pangolinla configuration de xorg.conf n'est plus nécessaire ​et même, ce fichier n'​existe plus.</note> +Pour obtenir un mode non listéutilisez les programmes complémentaires **//​gtf//​** ​et **//sed//** Vous entrez ​la ligne de commande suivantevous devriez bien entendu adapter ​les nombres 12801024 et 60 à votre résolution cible 
-==== Configurer « xorg.conf » ==== +<​code>​xrandr ​--newmode $(gtf 1280 1024 60 | sed -ne 's/"//g;sModeline ​//p')</​code>​
-Afin de pouvoir utiliser XRandR pour l'​affichage multi-écran,​ il faut réaliser une petite modification dans le fichier xorg.conf. +
-Ces instructions ont été conçues pour la version 11.10 (Oneiric Ocelot), mais devraient rester valides sur les versions ultérieures. +
-=== Préparation ​de xorg.conf === +
-Pour la suite de l'​explicationnous partons du principe que la configuration de base marche comme il faut pour un seul écran. Si ce n'est pas le cas ou, pour les versions les plus récentessi le fichier ne se trouve pas dans le dossier /etc/X11/, il faudra vous référer ​à la page dédiée à [[xorg|X.org]]. En résumé, les commandes suivantes généreront un xorg.conf de base: +
-== Cartes ATI == +
-<​code>​ +
-sudo aticonfig ​--initial +
-</​code>​ +
-== Cartes nVidia == +
-<​code>​ +
-sudo nvidia-xconfig +
-</​code>​ +
-== Cas générique == +
-FIXME Fermer la session courante, puis basculer dans un terminal avec Ctrl+F1. Ouvrir une session avec l'utilisateur habituel, puis exécuter : +
-<​code>​ +
-sudo service gdm stop +
-sudo X -configure +
-# uniquement si un fichier xorg existe déjà: +
-sudo cp /etc/X11/xorg.conf ​/etc/X11/xorg.conf.bak-avant-XRandR +
-# dans tous les cas: +
-sudo mv ~/​xorg.conf.new /​etc/​X11/​xorg.conf +
-sudo service gdm start +
-</​code>​+
  
-Le cas échéant, remplacer gdm par kdm si votre environnement habituel est KDEPour revenir en mode graphique, ​appuyer sur Ctrl+F7.+Vous avez normalement défini un mode nommé ''​1280x1024_60.00''​ ou un nom adapté à votre résolution cible ​Maintenant,​ il ne vous reste plus qu'à l'​autoriser pour l'​écran récalcitrant. ​ Imaginons que le nom de cet écran soit //VGA1//. 
 +<​code>​xrandr --addmode VGA1 1280x1024_60.00</​code>​ 
 +Vous pouvez maintenant utiliser un programme ​graphique ​pour changer la résolution de cet écran. Par exemplepar le biais de la [[:​configurer_son_ecran|méthode graphique]] ou par celle décrite à la section [[#​Fréquence listée dans les modes disponibles]] ci-dessus.
  
-<note+==== Activer la résolution choisie ==== 
-A partir de 11.10, LightDM est utilisé a la place de GDM sous Ubuntu et Xubuntu. Ainsi donc, les commandes a utiliser sont plutôt:+Il reste maintenant à appliquer cette résolution soit (liste non exhaustive) : 
 +  * En ligne de commande : <code>​xrandr --output <​SortieEcran>​ --mode <​NomDuMode>​ </code
 +  * En sélectionnant dans les [[:configurer_son_ecran|paramètres d'​affichage]] le nouveau mode, 
 +  * En sélectionnant dans ArandR ce nouveau mode.
  
-<​code>​ +Maintenant que la nouvelle résolution fonctionne, il faut l'​activer pour l'​avoir au prochain ​ démarrage de l'​ordinateur. Une solution consiste à créer un script avec nos deux commandes et de le lancer au démarrage. Avec notre exemple, [[:​tutoriel:​comment_modifier_un_fichier|créez un fichier]] **Resolution.sh** avec ce qui suit comme contenu : 
-sudo service lightdm stop +<​code ​bash
-sudo X -configure +#!/bin/bash/ 
-uniquement si un fichier xorg existe déjà: +xrandr ​--addmode HDMI 1440x900_60 
-sudo cp /etc/X11/xorg.conf /​etc/​X11/​xorg.conf.bak-avant-XRandR +xrandr --output HDMI --mode 1440x900_60 
-# dans tous les cas: +exit 0;
-sudo mv ~/​xorg.conf.new /​etc/​X11/​xorg.conf +
-sudo service lightdm start+
 </​code>​ </​code>​
 +rendez votre script [[:​tutoriel:​script_shell#​executer_un_script|éxécutable]] et ajoutez-le enfin [[:​tutoriel:​application_demarrage|aux applications au démarrage]] (cf. point suivant pour une explication détaillée de la procédure de créatoin d'un script).
 +<​note>​Autre solution, sous Lubuntu (du moins la 16.04) : pour activer la résolution voulue aux prochaines démarrages,​ il suffit d'​ouvrir l'​éditeur des [[:​configurer_son_ecran#​lubuntu|paramètres d'​affichage de Lubuntu]] et d’enregistrer la configuration (bouton "​Enregistrer"​) pour que le système retrouve la résolution à l'​avenir.</​note>​
 +==== Ajouter une résolution non listée====
 +La résolution de votre écran n'est pas disponible par défaut. C'est rare et ça arrive, on va voir comment gérer cela.
  
-</note>+Commencez par identifier votre écran : 
 +<code bash>​xrandr | awk '/connected [^(]/{print $1}'</​code>
  
-Il sera peut-être nécessaire de redémarrer pour quel la nouvelle configuration prenne effet. Si la configuration créée ainsi ne fonctionne pasil est toujours possible de rétablir ​le fichier de sauvegarde avec les commandes ​suivantes:​ +Par exemple comme réponse vous avez "eDP-1-1" comme identifiantvous aurez à le remplacer par le votre dans les prochaines ​commandes.
-<​code>​ +
-sudo rm /​etc/​X11/​xorg.conf +
-sudo mv /​etc/​X11/​le_nom_du_fichier_de_sauvegarde /​etc/​X11/​xorg.conf +
-</​code>​+
  
-=== Modifications ​de xorg.conf === +Si vous désirez essayer avec une résolution ​de 1920x1080 en 60hz (n.b. vérifiez si la carte graphique le supporte avant) 
-XRandR a besoin de connaître ​la résolution maximale qu'il devra gérer, c'est à dire la résolution cumulée des 2 écrans. +Tapez la commande ​
-Dans l'​exemple nous partons du principe que nous aurons une résolution maximale de 2944×1968 soit +<code bash>gtf 1920 1080 60</​code>​
-  * pour le premier écran 1920×1200 +
-  * pour le second écran 1024×768+
  
-Cette résolution maximale ​est définie à l'aide de la directive « Virtual », toujours ​dans le fichier xorg.conf.+En retour vous aurez : <code bash># 1920x1080 @ 60.00 Hz (GTF) hsync: 67.08 kHz; pclk: 172.80 MHz 
 +Modeline "​1920x1080_60.00" ​ 172.80 ​ 1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync</​code>​ 
 +   
 +Ce qui nous intéresse ici est la seconde ligne (# est toujours ​suivi d'un commentaire)
  
-<file> +Pour ajouter la résolution depuis xrandr cela donne donc : 
-Section ​"Screen" +<code bash>xrandr --newmode ​"1920x1080_60.00" ​ ​172.80  ​1920 2040 2248 2576  1080 1081 1084 1118  -HSync ​+Vsync</code>
- […] +
- SubSection "​Display"​ +
- […] +
- Virtual 2944 1968 +
- # largeur 2944 = 1920 + 1024 +
- # hauteur 1968 = 1200 + 768 +
- EndSubSection +
-EndSection +
-</file>+
  
-À partir de maintenant, ​votre « xorg.conf » est opérationnel. Nous pouvons relancer le serveur X pour appliquer la nouvelle configuration. Pour ce faire, il faut fermer la session courante, et utiliser la fameuse combinaison de touches AltGr+Impr. ​écran+K (Ctrl+Alt+⇐ sur les anciennes versions). +et donc pour l'​ajouter au menu ("​eDP-1-1"​ sera à remplacer par votre identifiant d'écran) ​tapez : 
-===== Gérer les écrans =====+<code bash>​xrandr --addmode eDP-1-1 1920x1080_60.00</​code>​
  
-==== Préparation ====+Pour changer de résolution depuis le terminal : 
 +<code bash>​xrandr -s 1920x1080_60.00</​code>​
  
-==== Interface graphique ====+Cependant au redémarrage,​ ces modifications seront perdues, d'ou le chapitre suivant
  
 +<note tip>Une autre méthode consiste à regarder les choix disponibles en lançant **arandr** puis en regardant les lignes de commandes xrandr avec le nom du ou des sorties dans le menu **Sortie**.</​note>​
  
-==== Ligne de commande ==== 
  
 +=== Rendre persistantes les modifications ===
  
 +== Créer le script ==
 +Reprenez les commandes précédentes (en modifiant les commandes au besoin) :
 +<file bash>#​!/​bin/​sh
 +xrandr --newmode "​1920x1080_60.00" ​ 172.80 ​ 1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync
 +xrandr --addmode eDP-1-1 1920x1080_60.00
 +xrandr -s 1920x1080_60.00</​file>​
 +'​Ctrl+X'​ pour quitter, n'​oubliez pas de sauvegarder en tapant "​o"​.
  
-===== Résolution virtuelle ===== 
  
-La résolution virtuelle ​consiste à définir une résolution plus grande que pourrait supporter l'écran.+== Lancer le script via /​etc/​X11/​Xsession.d/​ == 
 +La première méthode ​consiste à [[:​tutoriel:​comment_modifier_un_fichier|créer le fichier]] **45x11-xrandr** avec les [[:​sudo|droits d'administration]] dans **/​etc/​X11/​Xsession.d/​**,​ en y mettant le script.
  
-==== Mode « panning » ==== 
  
-La taille d'​affichage n'est pas modifiée mais on peut déplacer son écran au sein de cette résolution virtuelleCe serait comme si on utilisait une lucarne pour visionner une partie d'un paysage et qu'on la déplaçait.+== Lancer le script via ~/.xprofile == 
 +Créez ​un fichier "~/.xprofile"​ et copiez y le script
  
-Exemple ​d'une résolution virtuelle de 1024x800 pixels pour un [[asus_eee_pc_901|Eee PC 901]] disposant d'un écran de 1024x600 pixels.+== Lancer le script via le lancement ​d'application au démarrage == 
 +Une autre méthode, peut-être plus artisanale mais efficace, consiste à préparer ​un script qui sera lancé avec applications au démarrage.
  
-<​code>​xrandr ​--output LVDS1 --panning 1024x800</​code>​+Ajouter au script précédent : 
 +<​code>​#​!/​bin/​bash 
 +gsettings set org.gnome.desktop.background picture-uri file:///​usr/​share/​backgrounds/​Xerus_Wallpaper_Grey_4096x2304.png 
 +gsettings set org.gnome.desktop.background picture-uri file:///​usr/​share/​backgrounds/​TCP118v1_by_Tiziano_Consonni.jpg 
 +exit 0; 
 +</​code>​
  
-Pour restaurer la résolution ​d'origine du [[asus_eee_pc_901|Eee PC 901]].+Le script est enregistré dans un fichier texte (adapt_resolution.sh par exemple) auquel les droits d’exécution sont accordés : 
 +<​code>​ 
 +chmod gua+x  adapt_resolution.sh 
 +</​code>​ 
 +Ensuite, sélectionner « applications au démarrage » parmi les applications ​d'Ubuntu. 
 +{{ ::​rchrapplic.png?​nolink&​600 ​|}} 
 +Choisir « Ajouter » parmi les options proposées : 
 +{{ :​administration:​applicdemar.png?​nolink&​600 |}}
  
-<​code>​xrandr --output LVDS1 --panning 1024x600</​code>​+Rechercher le script dans l'​arborescence,​ compléter le nom donné à la commande ainsi que les commentaires puis cliquer sur « Ajouter » (l'​image d'​illustration correspond à une fenêtre de modification où « Ajouter » a été remplacé par « Enregistrer ») : 
 +{{ :​administration:​pgmdemarr.png?​nolink&​600 |}} 
 +Désormais le script se lancera automatiquement à chaque connexion de l'​utilisateur (dès la prochaine connexion).
  
-==== Mode « scale » ==== 
  
-Vous pouvez **augmenter artificiellement la résolution** native à une résolution supérieure de celle supportée par la dalle LCD. Contrairement à la résolution virtuelle, tout le contenu est visible mais redimensionné.+==== Pivoter l'​affichage ====
  
-Exemple pour bénéficier ​d'une résolution de 1024×600 pixels sur la dalle LCD de 800×480 pixels du [[asus_eee_pc_701|Eee PC 701]]. Le paramètre ​''​scale'' ​est un facteur appliqué à la largeur x hauteur.+Pour pivoter l'​affichage (utilisation ​d'un écran en mode portrait par exemple), il est nécessaire d’utiliser l'option ​''​%%--%%rotate'' suivie du sens de rotation et précédée du nom de l'​écran concerné
  
-<​code>​xrandr --output LVDS1 --mode "​800x480"​ --scale "​1.28x1.25"</​code>​+Les options de rotation disponibles sont : 
 +|''​normal''​ | orientation par défaut (selon l'​écran,​ généralement paysage ou portrait) | 
 +|''​left''​ | pivoté de 90° vers la gauche par rapport à l’orientation « normal » | 
 +|''​right''​ | pivoté de 90° vers la droite par rapport à l’orientation « normal » | 
 +|''​inverted''​ | pivoté de 180° (à l'​envers) par rapport à l'​orientation « normal » | 
  
-Pour restaurer la résolution d'origine du [[asus_eee_pc_701|Eee PC 701]].+Ainsi, pour un écran nommé « eDP1 » dont l'affichage doit être tourné vers la gauche, la commande sera la suivante : 
 +<​code>​ 
 +usr@pcx:~$ xrandr --output eDP1 --rotate left 
 +</​code>​
  
-<​code>​xrandr --output LVDS1 --mode "​800x480"​ --scale "​1x1"</​code>​ 
  
-==== Bug des modes « panning » et « scale » ====+===== Résolution virtuelle ===== 
 + 
 +La résolution virtuelle consiste à définir une résolution plus grande que pourrait supporter l'​écran. 
 + 
 +==== Modes « panning » et « scale »==== 
 +Avec le mode « panning » la taille d'​affichage n'est pas modifiée mais on peut déplacer son écran au sein de cette résolution virtuelle. Ce serait comme si on utilisait une lucarne pour visionner une partie d'un paysage et qu'on la déplaçait. 
 + 
 +Avec le mode « scale » vous pouvez **augmenter artificiellement la résolution** native à une résolution supérieure de celle supportée par la dalle LCD. Contrairement à la résolution virtuelle, tout le contenu est visible mais redimensionné. 
 + 
 + 
 +Il faut préciser les paramètres « panning » et « scale » ensembles. 
 + 
 +Exemple pour une sortie VGA 1280x800 pixels : 
 +  * mode « scale » : 
 +<​code>​xrandr --output VGA1 --mode 1280x800 --scale 1.5x1.5 --panning 1920x1200</​code>​ 
 +  * mode « panning » : 
 +<​code>​xrandr --output VGA1 --mode 1280x800 --scale 1x1 --panning 1920x1200</​code>​ 
 +  * revenir en mode « normal » : 
 +<​code>​xrandr --output VGA1 --mode 1280x800 --scale 1x1 --panning 1280x800</​code>​ 
 + 
 +<note important>​ 
 +Après plusieurs changements de mode, il est possible qu'une erreur similaire à celle ci-dessous se produise. 
 +<​code>​X Error of failed request: ​ BadMatch (invalid parameter attributes) 
 +  Major opcode of failed request: ​ 140 (RANDR) 
 +  Minor opcode of failed request: ​ 7 (RRSetScreenSize) 
 +  Serial number of failed request: ​ 26 
 +  Current serial number in output stream: ​ 28</​code>​ 
 +Dans ce cas essayez : 
 +<​code>​xrandr --output VGA1 --scale 2x1 ; !-1</​code>​ 
 +</​note>​ 
 + 
 +==== NVidia : "​BadMatch"​ error ==== 
 +Si vous avez une erreur de ce type en ajoutant une résolution à une sortie vidéo : 
 +<code bash> 
 +xrandr --addmode HDMI-0 1400x1050_57.20 
 +  X Error of failed request: ​ BadMatch (invalid parameter attributes) 
 +  Major opcode of failed request: ​ 140 (RANDR) 
 +  Minor opcode of failed request: ​ 18 (RRAddOutputMode) 
 +  Serial number of failed request: ​ 31 
 +  Current serial number in output stream: ​ 32 
 +</​code>​ 
 +   
 +Vous pouvez créer un fichier **[[xorg|xorg.conf]]** en adaptant les données : 
 +  
 +<file xorg.conf>​ 
 +# nvidia-settings:​ X configuration file generated by nvidia-settings 
 +# nvidia-settings: ​ version 361.42 ​ (buildd@lgw01-18) ​ Tue Apr  5 14:33:28 UTC 2016 
 + ​Section "​ServerLayout"​ 
 +    Identifier ​    "​Layout0"​ 
 +    Screen ​     0  "​Screen0"​ 0 0 
 +    InputDevice ​   "​Keyboard0"​ "​CoreKeyboard"​ 
 +    InputDevice ​   "​Mouse0"​ "​CorePointer"​ 
 +    Option ​        "​Xinerama"​ "​0"​ 
 + ​EndSection 
 + ​Section "​Files"​ 
 + ​EndSection 
 + ​Section "​InputDevice"​ 
 +    # generated from default 
 +    Identifier ​    "​Mouse0"​ 
 +    Driver ​        "​mouse"​ 
 +    Option ​        "​Protocol"​ "​auto"​ 
 +    Option ​        "​Device"​ "/​dev/​psaux"​ 
 +    Option ​        "​Emulate3Buttons"​ "​no"​ 
 +    Option ​        "​ZAxisMapping"​ "4 5" 
 + ​EndSection 
 + ​Section "​InputDevice"​ 
 +    # generated from default 
 +    Identifier ​    "​Keyboard0"​ 
 +    Driver ​        "​kbd"​ 
 + ​EndSection 
 + ​Section "​Monitor"​ 
 +    # HorizSync source: edid, VertRefresh source: edid 
 +    Identifier ​    "​Monitor0"​ 
 +    VendorName ​    "​Unknown"​ 
 +    ModelName ​     "NT@ LCD MONITOR"​ 
 +    HorizSync ​      28.0 - 66.0 
 +    VertRefresh ​    48.0 - 75.0 
 +    Option ​        "​DPMS"​ 
 +    Modeline "​1400x1050_57.20" ​ 115.75 ​ 1400 1488 1632 1864  1050 1053 1057 1088 -hsync +vsync 
 +  EndSection 
 + ​Section "​Device"​ 
 +    Identifier ​    "​Device0"​ 
 +    Driver ​        "​nvidia"​ 
 +    VendorName ​    "​NVIDIA Corporation"​ 
 +    BoardName ​     "​GeForce GT 520" 
 + ​EndSection 
 + ​Section "​Screen"​ 
 +    Identifier ​    "​Screen0"​ 
 +    Device ​        "​Device0"​ 
 +    Monitor ​       "​Monitor0"​ 
 +    DefaultDepth ​   24 
 +    Option ​        "​Stereo"​ "​0"​ 
 +    Option ​        "​nvidiaXineramaInfoOrder"​ "​CRT-1"​ 
 +    Option ​        "​metamodes"​ "​HDMI-0:​ nvidia-auto-select +0+0, VGA-0: nvidia-auto-select +1400+0"​ 
 +    Option ​        "​SLI"​ "​Off"​ 
 +    Option ​        "​MultiGPU"​ "​Off"​ 
 +    Option ​        "​BaseMosaic"​ "​off"​ 
 +    Option ​        "​ModeValidation"​ "​NoVesaModes,​ NoXServerModes"​ 
 +    Option ​        "​ExactModeTimingsDVI"​ "​True"​ 
 +    SubSection ​    "​Display"​ 
 +        Depth       ​24 ​    
 +    Modes      "​1400x1050_57.20"​ 
 +    EndSubSection 
 + ​EndSection 
 +</​file>​
  
-Depuis la version 11.10 d'​Ubuntu,​ les modes « panning » et « scale » ne fonctionnent plus correctement. Pour corriger le problème : 
-<​code>​sudo apt-add-repository ppa:​mdeslaur/​testing 
-sudo apt-get update 
-sudo apt-get upgrade</​code>​ 
-puis redémarrer le serveur X ou l'​ordinateur. 
  
 +Pour plus de détail, voir l'​article hyper complet en Anglais sur xrandr sur [[https://​askubuntu.com/​questions/​710172/​why-do-xrandr-errors-badmatch-badname-gamma-failed-happen|askubuntu.com]]
 ==== Conserver les paramètres ==== ==== Conserver les paramètres ====
  
-L'​automatisation de l'​augmentation de résolution est possible. [[:​tutoriel:​comment_modifier_un_fichier|Créez le fichier]] **/​etc/​X11/​Xsession.d/​45x11-xrandr** et collez-y le code suivant :+L'​automatisation de l'​augmentation de résolution est possible. [[:​tutoriel:​comment_modifier_un_fichier|Créez le fichier]] **/​etc/​X11/​Xsession.d/​45x11-xrandr** ​avec les [[:​sudo|droits d'​administration]] ​et collez-y le code suivant :
  
 <​file>​xrandr --verbose --output LVDS1 --mode "​800x480"​ --scale "​1.28x1.25"</​file>​ <​file>​xrandr --verbose --output LVDS1 --mode "​800x480"​ --scale "​1.28x1.25"</​file>​
Ligne 214: Ligne 396:
 Enregistrez et quittez. Dorénavant,​ la résolution sera augmentée automatiquement lors de chaque connexion. Enregistrez et quittez. Dorénavant,​ la résolution sera augmentée automatiquement lors de chaque connexion.
  
 +
 +===== Ajouter des écrans virtuels =====
 +Si vous souhaitez des écrans virtuels VIRTUALX, voir ce lien : https://​askubuntu.com/​questions/​453109/​add-fake-display-when-no-monitor-is-plugged-in
  
 ===== Voir aussi ===== ===== Voir aussi =====
  
   * [[http://​www.delafond.org/​traducmanfr/​X11/​man1/​xrandr.1x.html|Manuel de XRandR]]   * [[http://​www.delafond.org/​traducmanfr/​X11/​man1/​xrandr.1x.html|Manuel de XRandR]]
-  * [[http://​www.labo-linux.org/​tips/​4635-g-rer-son-ses-cran-s-avec-xrandr|Gérer son/ses écran(s)]] avec XRandR (FIXME lien cassé) +  * [[http://​www.planet-libre.org/​index.php?​post_id=1359|Faire du multi-écrans ​avec XRandR]]
-  * [[http://​about-gnulinux.info/​dotclear/index.php?post/​2009/​12/​08/​Faire-du-multi-%C3%A9crans-avec-xrandr|Faire du multi-écrans]] ​avec XRandR+
   * [[https://​wiki.ubuntu.com/​X/​Config/​Resolution#​Adding%20undetected%20resolutions|XrandR]] : Ajouter un mode vidéo non listé (modeline) - wiki officiel anglophone.   * [[https://​wiki.ubuntu.com/​X/​Config/​Resolution#​Adding%20undetected%20resolutions|XrandR]] : Ajouter un mode vidéo non listé (modeline) - wiki officiel anglophone.
-  * [[http://korben.info/augmenter-resolution-ubuntu-netbook.html|Augmenter la résolution écran sous Ubuntu sans contraintes matérielles]]+  * [[https://www.x.org/releases/​X11R7.5/​doc/​man/​man1/​xrandr.1.html|(en) Xrandr sur Xorg]]
  
  
-==== Pages sur le sujet ==== +===== Le fichier xorg.conf ===== 
- +La configuration de [[:​xorg|xorg.conf]] n'est plus nécessaire sur les versions récentes d'​Ubuntu et même, ce fichier n'​existe plus. Cependant pour certaines cartes cela peut s'​avérer utile, dans ce cas référez-vous à la page qui traite d'​[[:​Xorg]].
-{{backlinks>​.}}+
  
 ---- ----
  
-//​Contributeurs : [[utilisateurs:​azerttyu]],​ [[utilisateurs:​Id2ndR]],​ [[utilisateurs:​Ignace72]],​ [[utilisateurs:​percherie]].//​+//​Contributeurs : [[utilisateurs:​ymulleneers]] ​[[utilisateurs:​azerttyu]],​ [[utilisateurs:​Id2ndR]],​ [[utilisateurs:​Ignace72]],​ [[utilisateurs:​percherie]], [[:​utilisateurs:​l_africain|L'​Africain]].// 
  • xrandr.1347375480.txt.gz
  • Dernière modification: Le 11/09/2012, 16:58
  • par ymulleneers