運行多個 xserver 顯示“offscreen”或“headless”

運行多個 xserver 顯示“offscreen”或“headless”

我想運行兩個或更多顯示器,但我只有一個 GPU 和一台顯示器。第二個顯示器不必在監視器上顯示任何內容,虛擬輸出將是理想的選擇。

我使用 startx 啟動新的顯示:

startx -- :1

到目前為止一切順利,我可以使用 Ctrl+Alt+Fx 在電腦上的兩個顯示器之間切換(其中 x 是一個數字,在我的電腦上它是 7 或 8)。

問題是,當兩個顯示器都可用並且我目前在顯示器 0 上並且我嘗試錄製顯示器 1 時,錄製的影片中出現黑屏。主要問題似乎是當 tty 不活動時 xserver 不刷新。

我已經通過確認錄音。 ffmpg 的 x11grab 或使用 VLC 按預期工作。

除此之外,我還嘗試過Xephyr、Xnest 和Xvfb,雖然它們滿足了我的需要,但我無法使用它們,因為我在顯示器1 中運行的圖形要求非常高(OpenGL),而且我還要在此基礎上進行錄製。

我還嘗試使用 xserver-xorg-video-dummy 與 Xdummy 腳本一起啟動顯示,它可以工作,但不適用於 OpenGL 應用程式。

非常感謝對此問題的任何幫助!

答案1

我使用 Xephyr 找到了一個不錯的解決方法虛擬GL

安裝 Xephyr 和虛擬GL,然後使用您喜歡的設定啟動 Xephyr:

Xephyr -screen 1024x768 :1

如果一切順利,您現在可以在 Xephyr 中啟動具有 OpenGL 加速功能的可執行檔!

DISPLAY=:1 vglrun -- glxgears

相關內容