web-dev-qa-db-ja.com

xrandr scale 2x2 for multi display(4K HiDPI and Full HD mix)-ぼやけた出力

Kubuntu 17.04でnouveauを使用している場合、4Kをメインとして、右側にフルHD(実際には1920x1200ですが違いはありません)のデュアルモニター設定を取得しようとしています。

https://wiki.archlinux.org/index.php/HiDPI#Using_KDE_system_settings で説明されている)ダブルKDEシステムスケールをxrandrスケーリング(で説明されている)と共に使用しています https://wiki.archlinux.org/index.php/HiDPI#Side_display )。すなわち:

xrandr \
    --output eDP-1 --mode 3840x2160 --pos 0x0    --auto \
    --output DP-2  --mode 1920x1200 --pos 3840x0 --auto \
        --panning 3840x2400+3840+0 --scale 2.0x2.0 \
    --fb 7680x2400

問題は、3840x2400から1920x1200へのダウンサンプリングにより、DP-2が特にフォント上でわずかにぼやけることです。これは https://wiki.archlinux.org/index.php/HiDPI#Side_display の最後に記載されており、推奨される解決策はモニターのシャープネス設定です。試してみましたが、うまくいきません。

スケーリングが双線形のときに使用されるフィルター: https://cgit.freedesktop.org/xorg/app/xrandr/tree/xrandr.c?id=5d5db88d106a49d7560a8042fa054df8b609f00a#n299 。ニアレストネイバーも"nearest"でサポートされていますが、正確に2x2ダウンサンプリングであるにもかかわらず、見た目はひどいです。私は先に進み、これを"lanczos"ではなく"bilinear"でビルドしました。どうやら、これはサポートされていません:

X Error of failed request:  BadName (named color or font does not exist)
  Major opcode of failed request:  140 (RANDR)
  Minor opcode of failed request:  26 (RRSetCrtcTransform)
  Serial number of failed request:  36
  Current serial number in output stream:  37

Lanczos(またはより良いフィルター)をサポートする方法はありますか?ソフトウェアでフィルタリングを行ってもかまいません。

現在、回避策として、KDEの2倍のスケーリングとxrandrスケーリングを無効にしており、メインディスプレイで1920x1080のネイティブ解像度を使用しています。セカンダリディスプレイは、フォントを含め、予想どおり非常にシャープです。ただし、通常の視聴距離から見ると、メインディスプレイはスケーリングされたセカンダリよりもさらに悪く見えます。これは、ハーフ解像度がまだフルHDであり、4Kでない他のディスプレイでは驚くほどシャープに見えるため、これも奇妙です。

本当の問題は、両方のディスプレイで鮮明な画像を取得する方法はありますか?

編集:GeForce 940MXとIntel HD Graphics 620を搭載したNvidia PRIMEシステムを使用しているという重要な事実について言及するのを忘れていました。nvidia-384の結果Intelを使用する場合も同じです。つまり、同じブラーです。 GeForceを使用する場合、--scale 2x2オプションは効果がなく、--panningオプションは上記と同様のFailed Requestエラーを生成します。

16
Ayberk Özgür

私のノートブックにも4kモニターがあります。私が通常行っていることは、4kモニターに1920x1080モードを設定することだけで、実際には1080pモニターと同じように完璧に見えます。スケーリングやアンチエイリアスを行わないでください。2x2ピクセルだけにする方法を見つける必要があります。

1
gena2x