Xinerama + 合成

Xinerama + 合成

我使用的是 KUbuntu 9 和兩個顯示器:CRT+DVI。 Nvidia 的 TwinView 運作正常,但啟用 Xinerama 擴充功能會停用 KDE 中的合成。

有沒有辦法使用 Xinerama 啟用合成(桌面效果)?為什麼會出現這種情況?

答案1

合成需要圖形卡上可用並在 X 伺服器中啟用某些圖形擴充(最常見的是 GLX)。然而,很少有驅動程式同時支援驅動 Xinerama 和 GLX 的技術 - 啟用其中一項技術往往會停用另一項技術。

最近的(GeForce 7 左右及更新版本)Nvidia 卡能夠啟用此類功能,如果 GPU 是夠相似。如果沒有,Nvidia 官方驅動程式只會在不支援 Xinerama+GLX 的卡上停用 GLX 擴展,而不是在所有螢幕上停用它。 AFAIK,開源 nv 驅動程式根本不支援 Xinerama+GLX(或者如果支持,它也受到與官方 nvidia 驅動程式相同的限制)。

如果你絕對沒有辦法讓這兩者在你的硬體上很好地工作,你可能想看看檯面庫 - 它是一個軟體 3D 渲染工具,可以取代硬體 GLX 並允許進行合成,儘管性能受到相當大的影響。

答案2

你通常不要使用 TwinView 時啟用常用的 Xorg Xinerama 擴展,因為 nVidia 驅動程式已經提供了與 TwinView 相容的 Xinerama 擴充。

從司機那裡自述文件:

視窗管理器是否能夠適當地放置視窗(例如,避免將視窗放置在兩個顯示裝置上,或放置在虛擬桌面的不可存取區域中)?

是的。 NVIDIA X 驅動程式提供了 Xinerama 擴展,X 用戶端(例如視窗管理器)可以使用該擴展來發現目前的 TwinView 配置。請注意,Xinerama 協定無法在配置變更發生時通知客戶端,因此如果您模式切換到不同的 MetaMode,您的視窗管理器仍會認為您擁有先前的配置。使用 Xinerama 擴充功能以及 XF86VidMode 擴充功能來取得模式切換事件,視窗管理器應該能夠在任何給定時間確定 TwinView 配置。

相關內容