解像度の異なるデュアルモニターをミラーリングする


24

次のxrandrコマンドを使用して、17インチのラップトップを27インチの外部モニターにミラーリングするので、それを使用してプレゼンテーションを行うことができます。

xrandr --output LVDS1 --mode 1600x900 --output HDMI1 --mode 1920x1080 --same-as LVDS1

ただし、外部モニター(HDMI1)は1920x1080ではなく1600x900の解像度にフォールバックします。

xrandr出力:

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
LVDS1 connected primary (normal left inverted right x axis y axis
   1600x900       60.0 +
   1024x768       60.0  
   800x600        60.3     56.2  
   640x480        59.9  
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 598mm x 336mm
   1920x1080      60.0*+
   1680x1050      59.9  
   1280x1024      75.0     60.0  
   1440x900       75.0     59.9  
   1280x960       60.0  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   640x480        72.8     75.0     66.7     60.0  
   720x400        70.1  
DP1 disconnected (normal left inverted right x axis y axis)

回答:


11

ラップトップでパンしても構わない場合は、これを試してください:

xrandr --output LVDS1 --rate 60 --mode 1920x1080 --fb 1920x1080 --panning 1920x1080* --output HDMI1 --mode 1920x1080 --same-as LVDS1

これはサポートされているとは思いもしませんでした!
blast_hardcheese

1
実際に取得バグのようですうち mode--本のxrandr --output $external --primary続くxrandr --output $internal --primary(提案私のためにこれを解決し、ここ
blast_hardcheese

5
なぜ引数に「*」--panningがあるのですか?マニュアルはそれについて何も述べていません。
ヤルノ

このおかげで、これが私のUltraWide(21:9)モニターで動作するように解像度を変更した方法ですxrandr --output eDP1 --mode 1920x1080 --fb 2560x1080 --panning 2560x1080--output HDMI2 --mode 2560x1080 --same-as eDP1。これにより、ラップトップディスプレイをパンするときに不具合が発生しますが、あまり使用しないので問題ありません。
joelostblom

外部ディスプレイを取り外した後xrandr --output eDP1 --mode 1920x1080 --fb 1920x1080 --panning 1920x1080、ラップトップで通常の状態に戻します。xrandr --HDMI2 --offxrandr警告メッセージを避けたい場合は、その前に追加できます。
joelostblom

6
xrandr --fb 1920x1080 --output LVDS1 --mode 1600x900 --scale-from 1920x1080 --output HDMI1 --mode 1920x1080 --scale 1x1 --same-as LVDS1

または、別の方法でLVDS1の解像度を基本解像度として使用することもできますが、HDMI1の品質は低下します。


注:ディスプレイの使用をリストするにはxrandr --listactivemonitors
VasyaNovikov

3

モニターの解像度が同じでない場合、構成でxrandrデュアルモニターを処理するのはあまり良くないようです--same-as。両方のモニターの最も一般的な解像度にフォールバックする(このような解像度では満足できないか、存在しない可能性があります)ため、回避策は--scaleオプションを使用することです。あなたがしたい場合は[monitor 1]、解像度と[resx1]x[resy1]し、[monitor 2]解像度と[resx2]x[resy2]は、インスタンスのために使用することができます

xrandr --output [monitor 1] --mode [resx1]x[resy1] --output [monitor 2] --same-as [monitor 1] --scale `echo "[resx1]/[resx2]" | bc -l`x`echo "[resy1]/[resy2]" | bc -l`

ここで、`echo "[res*1]/[res*2]" | bc -l`目的の比率を計算します。しかし、完璧な品質を保証するものではありません。さらに、上記で設定した解像度の品質はの解像度によって制限されることに注意して[monitor 1]ください。


3

xrandr --scale-from ...オプションを使用します。

xrandr --output LVDS1 --scale-from 1920x1080 外部(HDMI1)モニターの高解像度画像を低解像度LVDS1ラップトップモニターに縮小します。


1
アスペクト比の異なる人々(超ワイド21:9やラップトップ16:9など)への注意点は、ラップトップの画面が水平方向に圧縮されたように見えることです。また、--scale-fromモードを切り替えると、画面が黒くなるか、何もクリックできないことに気付きました。私にとっての解決策は、別のtty(alt + ctrl + F2など)に入れてから、プライマリtty(F1)に戻すことでした。しかし、これは常に機能するとは限らず、時々画面を盲目的にナビゲートしていました。重要なものを何も開いておらず、再起動する余裕があるときにこれを試してみることをお勧めします。
joelostblom

2

解像度を設定すると、リレーションを指定した場合にxrandrソースが実行します--same-as

case relation_same_as:
    output->x = relation->x;
    output->y = relation->y;

やってみました:

xrandr --output HDMI1 --mode 1920x1080 --output LSVD1 --mode 1600x900 --same-as HDMI1


1
そのソースの引用を誤って解釈しました。xyに関する位置しない解像度。したがって--same-as、モニターの左上隅の位置は同じになります。確かに、異なる解像度を設定し、引き続き使用できます--same-as
goldilocks
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.