作者ivon852 (內容農場殺手)
看板Linux
標題[分享] xrandr讓平板當Linux電腦的第二螢幕
時間Sat Aug 24 11:00:28 2024
平板當電腦的螢幕,很多Windows和macOS軟體都有這功能,例如Duet Display能讓iPad當
電腦延伸桌面使用。不過他們需要依賴專有軟體呢,且沒有一個支援Linux的。
本文希望使用開源軟體的方案,實現平板當Linux電腦延伸桌面的目的。並且,這些方案也
可以在Windows系統使用。
雙螢幕效果示例,左邊是Linux電腦螢幕,右邊是在平板上的延伸桌面。Linux視窗可以拖
放到平板上。
https://i.imgur.com/vrLa8JA.png
我的做法,簡言之就是做個虛擬螢幕出來,然後調整遠端桌面軟體,讓它擷取那個虛擬螢
幕的畫面,進而遠端串流到平板上。這個許多前輩分享過了,不過我要改進一些。
原理圖如下
https://i.imgur.com/InmqtM4.png
遠端桌面軟體選擇
允許自由組態的遠端桌面軟體應該都能設定要擷取Linux的哪個螢幕。
只是要單純看圖片文字的,x11VNC就能應付
希望低延遲播放影片和玩遊戲的,Moonlight + Sunshine
需要使用平板觸控筆輸入的,Weylus
製作虛擬螢幕
最簡單的方式是買一個HDMI欺騙器,就有第二個螢幕了。這樣不論X11還是Wayland環境都
能擷取。
若要軟體模擬第二個螢幕的話,比較麻煩,Intel跟Nvidia的方案不相同,依賴桌面環境的
實作(GNOME和KDE都有類似功能,那XFCE怎麼辦?)也不是很穩定的解決方案
所以用xrandr吧。僅限X11環境使用,Wayland沒有通用的解決方案。
xrandr可以利用閒置的視訊輸出孔當作第二螢幕,但若電腦沒有多的HDMI輸出孔呢?
這個時候利用EVDI驅動,它原本是設計給DisplayLink使用的,兼具生成一個虛擬螢幕
的功能,於是EVDI生成的螢幕就可以交給xrandr調整了.
實作
安裝EVDI驅動
sudo apt install evdi-dkms
載入核心模組,生成一個虛擬螢幕(應該是DVI開頭)
sudo modprobe evdi options initial_device_count=1
用xrandr賦予解析度
xrandr --addmode DVI-I-1-1 "1920x1080"
xrandr --output DVI-I-1-1 --mode 1920x1080 --right-of eDP-1
由於我遠端桌面軟體是用Sunshine,需要用指令查看偵測到的螢幕編號
journalctl --user-unit sunshine
之後在Sunshine後台設定要擷取EVDI螢幕
於平板開啟Moonlight客戶端連線,確認螢幕有擷取到。
實測KDE X11環境下,EVDI生成的螢幕是黑色背景的,沒有任何桌布,不過確實能把視窗拖
曳過去。此外EVDI螢幕使用的時候KDE滑鼠會有點閃爍。
--
原創梗圖系列
https://i.imgur.com/Y10Cw4n.jpg https://i.imgur.com/FqRAWTs.jpg
https://i.imgur.com/Y1pYVqm.png https://i.imgur.com/PdAKXa0.png
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.236.215.122 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Linux/M.1724468446.A.762.html
1F:推 DaOppaiLoli: 推 08/24 13:35
2F:推 s9209122222: 現在 X11 都要被拋棄了 08/24 19:55
Wayland每家實作都不一樣啊,目前看來最符合我需求的就Hyprland的virtual output
3F:推 willy69wu31: 閃爍問題好像有個workaround,對主螢幕用 08/24 20:05
4F:→ willy69wu31: xrandr --output xxxxxx --scale 0.9999x0.9999 08/24 20:05
5F:推 lantw44: 不知道是不是只有我遇到,imgur 連結點下去會跳回首頁。 08/24 22:42
6F:推 Bencrie: 是跳回首頁 08/25 00:20
最近Imgur問題都很多。
7F:推 rockneila: 推 08/25 08:21
※ 編輯: ivon852 (114.27.85.120 臺灣), 08/25/2024 20:02:11
9F:推 changchichun: 好像很厲害,但是看不太懂 @@ 08/27 09:48
10F:推 lantw44: 說起來網頁版縮圖真的蠻重要的,畢竟 imgur 會刪圖。 08/27 21:40
11F:推 lifejourney: 之前有研究過類似的方案,後來發現從 GNOME 42 開始 08/31 16:48
12F:→ lifejourney: 可將支援 RDP 遠端桌面的裝置作為延伸螢幕來使用~ 08/31 16:48
13F:→ Arbin: KDE 6之後也可以像GNOME 42一樣(Wayland) 09/01 11:11
14F:→ Arbin: 但是krfb穩定性超爛 之前用24.04整天segfault 09/01 11:11