Exibições externas com o Bumblebee

14

Estou tentando conectar meu monitor externo (via cabo VGA) ao meu laptop, usando o Bumblebee e a configuração do Optimus.

Eu tenho um Lenovo W520, com um Intel GMA HD 3000 e um Nvidia Quadro 2000M. A BIOS possui três opções em relação às placas gráficas - integrada, discreta e Optimus.

O caso de uso é muito simples. Para o trabalho, uso apenas a placa integrada e a tela do laptop; quando assisto a filmes, quero usar meu projetor. Agora, o que tenho que fazer neste caso é:

  • reinicializar
  • inicie o Windows
  • assista ao filme

Graças ao Bumblebee, agora posso manter a configuração sempre como Optimus.

Antes do BB, eu tinha que mudar a configuração do BIOS toda vez que eu queria assistir um filme, porque mesmo nas janelas, usar gráficos integrados fazia com que o projetor não fosse detectado pelo sistema (suponho que isso geralmente significa por "saída hardwired", e que a saída VGA é hardwired para a placa discreta).

Agora, o que eu gostaria de fazer é poder conectar o monitor externo sem ter que trocar o O / S, isto é, para usá-lo no Ubuntu.

É possível?

Agora, se eu quiser usar o monitor externo no Ubuntu, a única opção é mudar o BIOS para usar os gráficos discretos, então use o nvidia-settings.

Se eu usar a configuração do Optimus, mesmo quando eu rodar usando o "optirun nvidia-settings -c: 8", eu não obtenho nenhuma opção para um monitor externo.

Existe algo que eu possa fazer?

    
por Marcus 12.02.2012 / 12:50

4 respostas

7

Eu tenho um W520. Não é a mesma configuração do T420 - a saída VGA está conectada à placa nvidia, então o link "this" do Samsagax não funcionará. Eu preparei uma postagem no blog aqui descrevendo o opções que você tem. Não consegui usar o monitor externo para trabalhar com o Bumblebee, e não acredito que seja possível com o W520. No entanto, você pode usar um monitor externo no modo otimizado, mas você precisa usar o xinerama ou abrir uma tela X separada no monitor externo.

    
por Zach 26.02.2012 / 02:41
3

(redirecionado da lista linux-hybrid-graphics)

Eu tenho um Thinkpad T420 que pode ser semelhante (mas pode não ser).

No meu T420, o VGA está conectado ao Intel e o Display-Port está conectado ao NVIDIA. Então, para a saída VGA eu posso usar o usual xrandr .

O Display-Port é uma história diferente. Para isso eu tenho que mudar o xorg.conf do bumblebee em /etc/bumblebee/xorg.conf.nvidia :

A opção ConnectedMonitor de DFP (o padrão) para DP1 para DisplayPort.

    
por Anonymous Coward 12.02.2012 / 19:13
2

As versões mais recentes do driver Intel incluem um programa chamado intel-virtual-output , que simplifica muito a configuração de exibições duplas e triplas em um W520.

O comando intel-virtual-output fornece uma maneira para um servidor X na placa Intel duplicar telas para outro servidor X. Ele olha para as telas disponíveis no visor remoto e as apresenta no servidor Intel X como VIRTUAL1, VIRTUAL2, etc.

O seguinte script (executado como root) funciona para mim, mas provavelmente você precisará ajustar as coisas:

#!/bin/sh

# Power on the nvidia card with bumblebee.
modprobe bbswitch
echo ON > /proc/acpi/bbswitch

# Run X display :8 on the nvidia card.
optirun true

# Tell the intel card to create virtual screens on :0 and
# copy whatever they're displaying to equivalent screens on :8
intel-virtual-output

# Configure my monitors the way I like them.
xrandr --output VIRTUAL3 --auto
xrandr --output VIRTUAL1 --auto --right-of VIRTUAL3
xrandr --output LVDS1 --off

Esta configuração ativa meu cabo DisplayPort para DVI (VIRTUAL3) à esquerda e o VGA (VIRTUAL1) à direita. Também desativa a tela do laptop.

Observe que, como essas são apenas telas virtuais do driver, em teoria a ferramenta de configuração de exibição da sua GUI deve ser capaz de descobrir depois de executar intel-virtual-output .

Na prática, a ferramenta de configuração de exibição no xubuntu não fazia realmente coisas coerentes. É por isso que esses comandos xrandr estão lá. Se você estiver executando o gnome ou o kde, pode valer a pena tentar a ferramenta GUI antes de mexer com xrandr . Caso contrário, antes de executar isso, você provavelmente desejará ajustar algumas coisas para qualquer configuração que esteja realmente usando. A execução de apenas xrandr informa quais exibições estão conectadas no momento. Você pode conectar e desconectar seus monitores para ver qual plugue se conecta a qual VIRTUAL [0-9] é exibido. A tela do laptop é LVDS1. Então é só uma questão de fazer os comandos xrandr com --right-of , --left-of , --below , etc. para colocar as coisas em seu devido lugar.

Quando quiser voltar a utilizar o telemóvel, pode executar isto (novamente, como root):

#!/bin/sh

# Turn on the laptop screen.
xrandr --output LVDS1 --auto

# Turn off my the other screens.
xrandr --output VIRTUAL1 --off
xrandr --output VIRTUAL3 --off

# Kill the xorg server running on the nvidia card.
kill $(ps ax | grep Xorg | grep :8 | awk '{print }')

# Wait plenty of time for it to die.
sleep 5

# Remove the nvidia kernel module so we can shut down the card.
# If you're running another driver this might be something different.
rmmod nvidia

# Use bumblebee to turn off the nvidia card and save power.
echo OFF > /proc/acpi/bbswitch

Estou executando o 14.04 do xubuntu usando o driver nvidia proprietário da versão 337.25. Eu também tenho pacotes de bumblebee de link .

Curiosamente, essa configuração é o oposto da configuração usual do Optimus. Normalmente você está seletivamente executando programas na placa nvidia e copiando buffers da placa nvidia para o cartão de intel que realmente fala com os monitores. Neste caso, você está executando tudo no cartão intel e copiando os buffers de tela relevantes para a placa nvidia.

Se você está se perguntando, sim, isso dificulta a execução de aplicativos acelerados da nvidia. Eu ainda não descobri uma maneira de fazer com que os jogos tenham um bom desempenho, e mesmo com o vídeo em HD, ele fica mais lento com o tempo. Ele parece não ter um buffer duplo porque você obtém uma varredura de cima para baixo visível esquerda-direita depois de reproduzir um vídeo de alta resolução por um tempo. Dito isto, a maioria dos projetores provavelmente ficará bem.

    
por Hans 18.09.2014 / 02:43
0

Talvez tente este .

Mas depende de hardwiring.

    
por Samsagax 12.02.2012 / 16:17