# Xrandr transform

**URL:** <https://www.debian-fr.org/t/xrandr-transform/81011>\
**Category:** Support Debian\
**Tags:** vidéoprojecteur, wayland, xorg, xrand\
**Created:** [Janvier 18, 2020, 2:16 UTC](https://www.debian-fr.org/t/xrandr-transform/81011 "2020-01-18T14:16:16Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![zguindavo](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/85f322/32.png) [@zguindavo](https://www.debian-fr.org/u/zguindavo)\
**Post date:** [Janvier 18, 2020, 2:16 UTC](https://www.debian-fr.org/t/xrandr-transform/81011/1 "2020-01-18T14:16:16Z")

</div>

Salut,

J’aurais aimé corriger l’affichage trapézoïdale d’un videoprojecteur pas en face de l’écran, et j’ai lu sur le web que ça pouvait se faire avec xrandr:

```auto
xrandr --output <output> --transform <a>,<b>,<c>,<d>,<e>,<f>,<g>,<h>,<i>

```

J’ai trouvé un outil pour calculer la matrice de transformation etc, mais mon problème est que la commande xrandr ne semble pas fonctionner sur ma machine, même dans le cas simple de mon écran principale :

```auto
$ xrandr
Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192
XWAYLAND2 connected 1366x768+0+0 (normal left inverted right x axis y axis) 310mm x 170mm
   1366x768 59.80*+

```

Je teste avec la matrice identité (pas de transformation):

```auto
$ xrandr --output XWAYLAND2 --transform 1,0,0,0,1,0,0,0,1
X Error of failed request: BadValue (integer parameter out of range for operation)
  Major opcode of failed request: 140 (RANDR)
  Minor opcode of failed request: 26 (RRSetCrtcTransform)
  Value in failed request: 0x3c8
  Serial number of failed request: 21
  Current serial number in output stream: 22

```

Des idées sur ce problème ?

Pour info:

```auto
$ uname -a
Linux guri 4.19.0-6-amd64 #1 SMP Debian 4.19.67-2+deb10u2 (2019-11-11) x86_64 GNU/Linux

$ lspci
00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b)
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b)

$ apt search xserver-xorg-video-intel 
xserver-xorg-video-intel/stable,now 2:2.99.917+git20180925-2 amd64 [installé]
  serveur X pour X.org – pilote d'affichage Intel i8xx et i9xx

```

Merci d’avance pour vos retours !!!

---

<div class="post-metadata">

**Author:** ![anon44391915](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/958977/32.png) [@anon44391915](https://www.debian-fr.org/u/anon44391915)\
**Post date:** [Janvier 20, 2020, 12:49 UTC](https://www.debian-fr.org/t/xrandr-transform/81011/2 "2020-01-20T12:49:34Z")

</div>

Bonjour,

Je ne suis pas calé du tout à ce sujet.  
J’ai trouvé :

### 3.4.2. L’option transform  
[https://troumad.developpez.com/linux/serveurx/xrandr/#L3.4.2](https://troumad.developpez.com/linux/serveurx/xrandr/#L3.4.2)

C’est expliqué progressivement et avec des exemples de transformations en étirement à la fin.  
Et en bonus : « 4. Une petite aide pour vidéo projecteur, un cas pratique »

> BadValue (integer parameter out of range for operation)

Indique clairement une valeur hors limite (ou un bug)

Que donne :

```plaintext
$ xrandr --output XWAYLAND2 --transform none

```

suivi de ton essai avec la matrice identité ?

[I Challenge Thee](https://packages.debian.org/fr/buster/xserver-xorg-video-intel) mentionne :

> L’utilisation de ce pilote est déconseillée si la version de hw est récente (à partir de 2007, environ). Il est possible de désinstaller ce pilote et laisser le serveur utiliser à la place son pilote intégré modesetting.

Pour mes petites idées…

Test sur mon poste de travail (Gentoo / OpenRC / Xorg) :

```plaintext
rem@n73sm ~ $ uname -a
Linux n73sm 4.19.27-gentoo-r1 #2 SMP Mon Aug 19 00:38:41 CEST 2019 x86_64 Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz GenuineIntel GNU/Linux
rem@n73sm ~ $ xrandr --version
xrandr program version 1.5.1
Server reports RandR version 1.6
rem@n73sm ~ $ xrandr
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
LVDS1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 380mm x 210mm
   1920x1080 60.02*+ 59.93  
   1680x1050 59.88  
   1400x1050 59.98  
   1600x900 60.00 59.95 59.82  
   1280x1024 60.02  
   1400x900 59.96 59.88  
   1280x960 60.00  
   1368x768 60.00 59.88 59.85  
   1280x800 59.81 59.91  
   1280x720 59.86 60.00 59.74  
   1024x768 60.00  
   1024x576 60.00 59.90 59.82  
   960x540 60.00 59.63 59.82  
   800x600 60.32 56.25  
   864x486 60.00 59.92 59.57  
   640x480 59.94  
   720x405 59.51 60.00 58.99  
   640x360 59.84 59.32 60.00  
DP1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 1280mm x 720mm
   1920x1080 60.00*+ 50.00 59.94 30.00 25.00 24.00 29.97 23.98  
   1920x1080i 60.00 50.00 59.94  
   1600x1200 60.00  
   1280x1024 60.02  
   1360x768 59.95  
   1280x720 60.00 50.00 59.94  
   1024x768 60.00  
   800x600 60.32  
   720x576 50.00  
   720x576i 50.00  
   720x480 60.00 59.94  
   720x480i 60.00 59.94  
   640x480 60.00 59.94  
VGA1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
rem@n73sm ~ $ xrandr --output HDMI1 --transform 1,0,0,0,1,0,0,0,1
rem@n73sm ~ $

```

---

<div class="post-metadata">

**Author:** ![anon44391915](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/958977/32.png) [@anon44391915](https://www.debian-fr.org/u/anon44391915)\
**Post date:** [Janvier 21, 2020, 3:04 UTC](https://www.debian-fr.org/t/xrandr-transform/81011/3 "2020-01-21T03:04:47Z")

</div>

J’ai installé un environnement graphique Xfce sur mon micro-serveur sous Debian buster pour refaire la manipulation.

Je n’ai ni clavier ni souris de relié alors je procède avec une session `ssh` (d’où le `DISPLAY=:0.0`)

Je ne constate aucun problème avec la commande `xrandr` utilisant la matrice identité.

```nohighlight
rem@n40l:~$ uname -a
Linux n40l 4.19.0-6-amd64 #1 SMP Debian 4.19.67-2+deb10u2 (2019-11-11) x86_64 GNU/Linux
rem@n40l:~$ DISPLAY=:0.0 xrandr --version
xrandr program version 1.5.0
Server reports RandR version 1.5
rem@n40l:~$ DISPLAY=:0.0 xrandr
Screen 0: minimum 320 x 200, current 1280 x 1024, maximum 8192 x 8192
VGA-0 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 338mm x 270mm
   1280x1024 60.02*+ 75.02  
   1280x960 60.00  
   1152x864 75.00  
   1024x768 75.03 70.07 60.00  
   832x624 74.55  
   800x600 72.19 75.00 60.32 56.25  
   640x480 75.00 72.81 66.67 59.94  
   720x400 70.08  
rem@n40l:~$ DISPLAY=:0.0 xrandr --output VGA-0 --transform 1,0,0,0,1,0,0,0,1
rem@n40l:~$ apt policy x11-xserver-utils
x11-xserver-utils:
  Installé : 7.7+8
  Candidat : 7.7+8
 Table de version :
 *** 7.7+8 800
        800 http://ftp2.fr.debian.org/debian buster/main amd64 Packages
        100 /var/lib/dpkg/status
rem@n40l:~$ 

```

Conclusion :

`xrandr` ne fonctionnera PAS avec Wayland !  
L’extension RandR est évidemment liée à [X.Org](https://fr.wikipedia.org/wiki/X.Org)  
Exécutez l’environnement de bureau sur xorg, puis utilisez simplement xrandr.

---

<div class="post-metadata">

**Author:** ![zguindavo](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/85f322/32.png) [@zguindavo](https://www.debian-fr.org/u/zguindavo)\
**Post date:** [Janvier 21, 2020, 2:55 UTC](https://www.debian-fr.org/t/xrandr-transform/81011/4 "2020-01-21T14:55:47Z")

</div>

Merci beaucoup pour ta réponse. Je n’avais pas du tout fait gaffe au fait que depuis Debian 10 j’avais Wayland par défaut sur ma machine… je regarde ce soir chez moi si je suis capable de faire tourner Gnome ou un autre environnement avec Xorg à la place. Encore merci !

---

<div class="post-metadata">

**Author:** ![zguindavo](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/85f322/32.png) [@zguindavo](https://www.debian-fr.org/u/zguindavo)\
**Post date:** [Février 2, 2020, 12:38 UTC](https://www.debian-fr.org/t/xrandr-transform/81011/5 "2020-02-02T00:38:43Z")

</div>

Bien en retard, mais j’ai effectivement pu vérifier que sous Xorg tout se passe mieux 😉  
Merci r2mi pour ton aide en tout cas.
