2

For presentations I want to use the external USB connected video adapter connected to the projector (especially as the standard VGA output in my laptop got damaged).

My idea was to start a dedicated X server on this additional video adapter, and make it available via VNC. Then I can connect to it with xvncviewer to manage the presentation from my main X session (and have additional applications open, which are not visible for the audience).

Hover the problem is, that if I start the X server in this additional video adapter, it uses certain virtual console. As soon as I switch the virtual console to return to my main X session (to access the presentation X server via VNC), the presentation X server stops refreshing (as it sees, that its virtual console is not active).

Is there any way to start the additional X server in such a way, that it keeps refreshing, when I'm working in my main X session?

  • put the answer in an answer, please? – mikeserv Mar 15 '15 at 18:54
  • I'd rather avoid answering my own question, but as no other responses were published, I've decided to do it. I have removed answer from the "update" and reposted it as an "answer". – wzab Mar 15 '15 at 21:51
  • Don't be sorry - sometimes it is inevitable for the more obscure/specialized questions. In those cases the record is important for those that come after. – mikeserv Mar 15 '15 at 21:52
1

Sorry for answering my own question, but as no other responses were published, I've decided to do it.

It seems, that I have found a working solution:

  1. I start the X server with the -sharevts flag:

    X -config displaylink.conf -sharevts :2

  2. I start my applications:

    DISPLAY=2: x-window-manager DISPLAY=2: xterm

  3. I start the vnc server:

    x11vnc -localhost -display :2

The displaylink.conf has the following contents:

Section "Device"
  Identifier      "dl1"
  driver          "fbdev"
  Option  "fbdev" "/dev/fb1"
EndSection

Section "InputDevice"
   Identifier      "Generic Keyboard"
   Driver          "void"
   Option          "CoreKeyboard"
EndSection

Section "InputDevice"
   Identifier      "Configured Mouse"
   Driver          "void"
   Option          "CorePointer"
EndSection

Section "Monitor"
   Identifier "monitor0" 
EndSection

Section "Screen"
  Identifier "screen0"
  Device "dl1"
  Monitor "monitor0"
  DefaultDepth 16
EndSection

Section "ServerLayout"
  Identifier     "external"
  Screen  "screen0" 
  InputDevice "Generic Keyboard" "CoreKeyboard"
  InputDevice "Configured Mouse" "CorePointer"    
  Option "AutoAddDevices" "Off"
EndSection

Special case - additional display bigger than the main

Last time I have faced a situation, where the projector used for presentation had higher resolution than my laptop. It resulted in necessity to scroll presentation screen to access menu or toolbar, which was very inconvenient during a lecture.

After some unsuccessful attempts to force the projector to use one of lower resolutions acceptable for the LCD screen of my laptop, I have found, that I can use the "-scale" option in x11vnc. So the 3rd point above should look as follows:

  1. I start the vnc server:

    x11vnc -localhost -scale 1024x768 -display :2

The solution is not perfect, as the desktop image is a little blurred (on the laptop, not on the screen), but I can easily navigate through my presentation and demo applications.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.