Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Split each screen of multi-screen on different ports #141

Open
Elko29 opened this issue Sep 25, 2018 · 8 comments
Open

Split each screen of multi-screen on different ports #141

Elko29 opened this issue Sep 25, 2018 · 8 comments

Comments

@Elko29
Copy link

Elko29 commented Sep 25, 2018

Hi everybody,
I'm looking for a solution to separate the broadcasting of each screen from a mutli-screen on different ports.

Exemple, with these command line :

                vncserver -geometry 1920x1080+0+0,1920x1080+1920+0
                                    \-----------/ \---------------/
What I would like to have :          port : 5901     port : 5902

My goal is to have one viewer listening to 5901 for screen 1 and a second one listening to 5902 for screen 2, is it possible or there is another solution to do this ?

@dcommander
Copy link
Member

No, it isn't currently possible, and I can think of many reasons why implementing such a solution would be problematic at best. But why do you need such a solution? I feel like whatever problem you're trying to solve can probably already be solved in a different way.

@Elko29
Copy link
Author

Elko29 commented Sep 26, 2018

Thanks !
Today, when I want to do something like my previous question, I need to use multiple turbovnc server on 5901, 5092, ... and aggregate every body with Xdmx and Xinerama tool.
It's functional but very heavy and Xdmx is an old tool ...

I also tried to use Xvfb to generate the screens I need and send this screens with multiple x11vnc but it was very very heavy ....

Have you another solution ?

@dcommander
Copy link
Member

Version 2.2 (which is currently in beta) of the TurboVNC Server already has built-in Xinerama support, which interacts seamlessly with the multi-screen spanning feature in the TurboVNC Viewer. I do not understand why you need to attach a different RFB server/port to each screen. You still have not explained why you feel that you need to do that. Without understanding the ultimate purpose, I cannot tell you what the appropriate solution would be.

@Elko29
Copy link
Author

Elko29 commented Sep 26, 2018

My use case is a wall screen where each screen is a simple vnc viewer. The visual comes from a VNC server that splits the VNC flow.

@dcommander
Copy link
Member

OK, but why can't you connect all of the screens in the display wall to the same X server? If you do that, then you should be able to use the TurboVNC Viewer with the new Xinerama feature in the TurboVNC Server to drive the wall. There are potential optimizations that might need to be made to improve performance, such as multi-threaded decoding in the viewer (see #60), but in general, that would be a much cleaner solution than using a different RFB connection for each screen.

@Elko29
Copy link
Author

Elko29 commented Sep 26, 2018

I don't have easy solution to connect all screens to the same X server. The only solution a know is to use Xdmx + Xinerama and this is realy heavy ! Do you know a different solution ?

The second constraint is, my screens are connected on a little ARM embedded systems like raspberry Pi or equivalent and a don't want to install big JAVA machine on it, I know it's possible but it's not in the embedded philosophy. So the TurboVNC Viewer is not compatible with ... But I have a correct C/C++ VNC viewer.

@dcommander
Copy link
Member

dcommander commented Sep 26, 2018

Would it be possible to start multiple TurboVNC Server instances and run Xdmx on the server instead of the client? Barring that, if the screens are all connected to independent machines, then I don't know of a solution other than what you propose-- but I don't think any VNC servers can currently do that. Modifying the TurboVNC Server to support such a feature would be tricky and time consuming, and it would be disruptive so the stability of the code, so it's unfortunately not a project I could do for free. Leaving this open and tagging as "funding needed" in case an organization might be interested in paying me to implement the feature.

@dcommander
Copy link
Member

NOTE: I was able to successfully run Xdmx across multiple TurboVNC Server instances. I couldn't make it treat each instance as an independent screen, but you probably don't need that for a display wall.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants