Questão Configuração de monitor triplo no linux


Eu espero que existam alguns gurus xorgs por aí.

Eu estou tentando obter uma configuração de três monitores trabalhando no linux. Eu tenho 2 monitores LCD e uma tv, todas as resoluções diferentes. Eu estou usando 2 placas de vídeo; um 9800 GTX e 7900Gt.

Eu vi muitos posts diferentes sobre pessoas tentando fazer isso funcionar, e em todos os casos, eles desistiram, ou a Xinerama magicamente resolveu todos os seus problemas.

Basicamente, meu principal problema é que não consigo fazer o Xinerama funcionar. Toda vez que eu ligo nas opções, minha máquina fica presa em um ciclo de inicialização sem fim. Se eu desabilitar o Xinerama, eu só tenho três telas Xorg, mas não consigo arrastar as janelas de uma para a outra.

Eu posso pegar os 2 lcds no Twinview, e a tv em uma tela separada do Xorg não é problema. Mas eu realmente não gosto dessa solução. Eu prefiro tê-los todos em telas separadas e costurá-los juntos com o Xinerama.

Alguém já fez isso?

Aqui está o meu xorg.conf para referência.

p.s. Isso me levou todos os 30 segundos para configurar no Windows XP! p.s. Eu vi em algum lugar que talvez o randr possa resolver meus problemas? Mas não sei bem como?

Section "Monitor"
 Identifier "Main1"
 VendorName "Acer"
 ModelName "H233H"
 HorizSync 40-70
 VertRefresh 60
 Option "dpms"
EndSection

#Section "Monitor"
# Identifier "Main2"
# VendorName "Acer"
# ModelName "AL2216W"
# HorizSync 40-70
# VertRefresh 60
# Option "dpms"
#EndSection

Section "Monitor"
 Identifier "Projector"
 VendorName "BenQ"
 ModelName "W500"
 HorizSync 44.955-45
 VertRefresh 59.94-60
 Option "dpms"
EndSection

Section "Device"
 Identifier "Card1"
 Driver "nvidia"
 VendorName "nvidia"
 BusID "PCI:5:0:0"
 BoardName "nVidia Corporation G92 [GeForce 9800 GTX+]"
 Option "ConnectedMonitor" "DFP,DFP"
 Option "NvAGP" "0"
 Option "NoLogo" "True"
 #Option "TVStandard" "HD720p"
EndSection

Section "Device"
 Identifier "Card2"
 Driver "nvidia"
 VendorName "nvidia"
 BusID "PCI:4:0:0"
 BoardName "nVidia Corporation G71 [GeForce 7900 GT/GTO]"
 Option "NvAGP" "0"
 Option "NoLogo" "True"
 Option "TVStandard" "HD720p"
EndSection

Section "Module"
 Load "glx"
EndSection

Section "Screen"
 Identifier "ScreenMain-0"
 Device "Card1-0"
 Monitor "Main1"
 DefaultDepth 24
 Option "Twinview"
 Option "TwinViewOrientation" "RightOf"
 Option "MetaModes"   "DFP-0: 1920x1080; DFP-1: 1680x1050"
 Option "HorizSync"   "DFP-0: 40-70; DFP-1: 40-70"
     Option "VertRefresh" "DFP-0: 60; DFP-1: 60"
 #SubSection "Display"
        #    Depth           24
        #    Virtual         4880 1080
        #EndSubSection
EndSection

Section "Screen"
 Identifier "ScreenProjector"
 Device "Card2"
 Monitor "Projector"
 DefaultDepth 24
 Option "MetaModes"   "TV-0: 1280x720"
 Option "HorizSync"   "TV-0: 44.955-45"
    Option "VertRefresh" "TV-0: 59.94-60"
EndSection

Section "ServerLayout"
     Identifier  "BothTwinView"
     Screen      "ScreenMain-0"
 Screen      "ScreenProjector" LeftOf "ScreenMain-0"
     #Option     "Xinerama" "on" # most important option let you window expand to three monitors
EndSection

2


origem




Respostas:


Scarily você e eu temos quase a mesma configuração exata. Eu tenho um 9800GTX Ultra e um 7900GS KO. Meu problema é que o Xinerama não funciona com GPUs tão diferentes. O Xrandr foi projetado para substituir o xinerama, mas uma das maiores características do xinerama (telas de junção juntas) não foi mantida portada por algum motivo.

Usando a abordagem nvidia, eu tenho basicamente o que você escolheu; monitores duplos + outro monitor. Meu problema é que, usando essa abordagem, nenhum dos gerenciadores de janelas pode determinar se há, na verdade, dois monitores à esquerda e, assim, as janelas maximizadas (e coisas como o painel) são esticadas em ambos os monitores.

Eu estava esperando que o nouveau fosse meu cavaleiro de armadura brilhante, mas estranhamente, não importa o que eu faça, não consigo nem mesmo o monitor duplo funcionar usando os drivers nouveau, usando várias versões (os padrões, de um PPA, construídos a partir da fonte) .

Eu sei de pelo menos algumas outras pessoas que têm configurações semelhantes para nós, pelo menos um amigo conseguiu sua configuração para um pouco de trabalho usando fakexinerama que basicamente apenas fica ao servidor X sobre os monitores para forçá-lo a trabalhar.

Espero que minha contribuição ajude você a encontrar o caminho para uma solução melhor. Por favor, mantenha-nos atualizados se você encontrar algo novo!


2





Então aqui está o meu trabalho xorg.conf para uma configuração de três monitores. É configurado como duas telas, que eu não gostei, mas agora estou muito feliz com isso. Ele me permite executar os dois CDs como uma configuração normal de dois monitores, e ainda exibir filmes e outras coisas no meu projetor, tudo a partir do mesmo computador. Também é bom que eu possa trabalhar na configuração de dois monitores, sem ter que ligar o projetor porque uma janela ocasionalmente é acionada na tela, como se todos estivessem no mesmo xscreen.

Tecnicamente, eu poderia rodar um quarto monitor! Eu acho que estou mais propenso a investir em uma nova CPU e placa-mãe antes de tentar isso, no entanto. Depende de quanto tempo o Starcraft 2 sai.

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 1.0  (buildd@crested)  Sun Feb  1 20:25:37 UTC 2009
# edited by me (brendan) 2010-04-18


#   NVIDIA magic (something about glx-new?)
Section "Module"
    Load           "glx"
EndSection

Section "Extensions"
    Option         "Composite" "Enable"
EndSection



#   Keyboards and Mice
Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection




#   Physical Monitors:
Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Acer"
    ModelName      "Acer H233H"
    HorizSync       40.0 - 70.0
    VertRefresh     60.0
EndSection

Section "Monitor"
    Identifier      "Monitor1"
    VendorName     "Acer"
    ModelName      "Acer AL2216W"
    HorizSync       40.0 - 70.0
    VertRefresh     60.0
EndSection

Section "Monitor"
    Identifier     "Monitor2"
    VendorName     "BenQ"
    ModelName      "BenQ W500"
    HorizSync       44.955 - 45.0
    VertRefresh     59.94 - 60.0
EndSection




#   Physical Video Cards/Ports:
Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 9800 GTX+"
#    Screen          0
    BusID          "PCI:5:0:0"
EndSection

Section "Device"
    Identifier    "Device2"
    Driver        "nvidia"
    VendorName    "nVidia Corporation"
    BoardName     "GeForce 7900 GT/GTO"
    BusID         "PCI:4:0:0"
    Option        "TVStandard" "HD720p"
EndSection




####    Default 3-monitor Layout 'default'

Section "ServerLayout"
    Identifier     "Default Layout"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen2" LeftOf "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "ServerFlags"
    Option         "Xinerama" "0"
EndSection


#   Virtual Screens
Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "1"
#    Option         "NoTwinViewXineramaInfo"
    Option         "metamodes" "DFP-0: 1920x1080 +1680+0, DFP-1: 1680x1050 +0+30"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen2"
    Device         "Device2"
    Monitor        "Monitor2"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "metamodes" "1280x720"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

2





Eu tive o mesmo problema, 4 monitores, 2 placas de vídeo idênticas e fui forçado a ter 2 Xscreens.

A solução que encontrei significou comprar algum hardware, mas está funcionando bem agora (monitores de 30 polegadas, orientação vertical, Slackware64). Parece que o X-windows precisa ter todos os monitores em um determinado Xsceen na mesma placa de vídeo. tente com a sua configuração, você verá que você não pode ter 1 monitor de cada placa de vídeo como 1 Xscreen, e o segundo em cada placa de vídeo como outra tela X. Eles devem estar na mesma placa de vídeo.

Então comprei uma placa de vídeo, uma MSI Radeon HD6990, que possui 4 portas mini-display e 1 porta DVI de link duplo. Eu tive que usar as portas mini-dp em todos três monitores - usar a porta DVI para um dos monitores significava comprar um adaptador ativo de link duplo por US $ 99,00. Observe que o adaptador ativo que acompanha a placa de vídeo diz que está ativo diretamente, mas é um único link adaptador ativo, uma distinção que me escapou até que vi uma imagem do adaptador dvi ativo dual-link - que tem um cabo USB para alimentação, bem como um cabo dp. O cabo fornecido com o cartão trabalhos, mas limita você a uma resolução de tela muito menor.

Isso é um aparte, mas enquanto corro com 2 Xscreens, eu só encontrei 2 programas Linux que podem alternar entre diferentes telas X: o Gimp o tem em um dos menus, mas só muda a tela gráfica principal para os outros menus do Xscreen. ficar parado, e XEmacs, que tem no menu e funciona muito bem.


1





Passei um bom tempo resolvendo esse problema para o meu sistema Red Hat EL5 com uma cabeça dupla ATI Radeon 6350. Eu poderia arrastar os ícones de uma tela para outra, mas ainda tinha duas barras de ativação em cada tela e não conseguia arrastar as janelas de uma tela para a outra. O que eu precisava era da seguinte entrada na minha seção "ServerLayout" do meu arquivo xorg.conf.

Opção "Xinerama"

Agora eu tenho apenas uma barra e posso arrastar janelas por cima.


0