Projektor trapéztorzításának javítása xrandr-rel

Három éve nagy örömmel használok egy BenQ W1070 projektort. Eddig szerencsésen mindig olyan lakásban laktam, ahol elég volt a vetítő beépített függőleges trapézkorrekciója. Tavaly októbertől viszont olyan lakásban vagyok, ahol kényelmesebb úgy a bútorok elrendezése, ha a projektor és a vászon nincs szemben egymással. A vízszintes korrekciót nem tudja ez a modell, viszont Linuxon az xrandr-rel lehetséges szoftveresen javítani a képet.

A vászon és a projektor elhelyezkedéséről jöjjön két kép.


A vászon és projektor oldalról

A projektor és a kanapé a vászonnal szemben

Ebben az elhelyezkedésben a torzítás így néz ki, a kép elnyúlik jobb oldalra az ajtó irányába is:


A trapéztorzítás teljes valójában

A torzítás javításához az xrandr --transform kapcsolóját fogjuk használni. Az xrandr kézikönyve elég szűkszavú a transformról, elrendezi annyival, hogy egy 3×3-as mátrix a bemenet. Jöjjön egy kis magyarázat.

A transform paramétert bármelyik output paraméter után kiadhatjuk, azzal az adott kimenetet fogjuk torzítani:

xrandr --output HDMI1 --transform a,b,c,d,e,f,g,h,i

A vesszővel elválasztott tagok pedig a következő módon változtatják a képet:

  • a: x tengely irányú méretezés
  • b: bal-jobb irányú nyírás
  • c: x tengely irányú mozgatás (pixelben, pl.: -100 jobbra mozgatja a képet 100px-lel)
  • d: forgatás (1.5-ös verziótól)
  • e: y tengely irányú méretezés
  • f: y tengely irányú mozgatás (pixelben, pl.: -100 lefele mozgatja a képet 100px-lel)
  • g: forgatás
  • h: fel-le irányú nyírás
  • i: zoom

A fentieket összeállítva így néz ki a végleges parancs, az LVDS1 a laptop kijelzője, a DP2 a dockolóra kötött monitor és a HDMI1 pedig a projektor:

xrandr \
  --output LVDS1 --off \
  --output DP2 --off \
  --output HDMI1 --mode 1920x1080i \
    --transform 1,-0.22,0,0,1,0,-0.00022,0.00004,1 \
    --left-of LVDS1

Mivel a bal felső sarokpont és a képernyő felső széle fix, ezért a projektort fizikailag meg kell dönteni, hogy a trapéz felső széle egyenes legyen. Ezt akár néhány könyvvel is el tudjuk érni:

A végeredmény pedig így néz ki:


A trapéztorzítás korrigálva

A korrigált kép Kodival