Can I Remotely Control OBS Running On Dedicated Cloud Sever with Nvidia RTX 6000 Running Ubuntu Linux

Mark Allyn

New Member
Folks:

I have a customer who wants a simple YES or NO answer.

They want to run OBS with Ninja on a Cloud Server (OVH/Google/Whoever) that does have Nvidia RTX 6000 GPU. They have option on how many GPU they want (1 - 5). Yes, they are expensive, but they can rent server by the hour.

They have Ubuntu Linux running on the server. They don't want to pay for Windows as the rental of GPU servers is expensive enough. They also insist on Open Source. They don't want to pay software licensing. They want to control the OBS console via VNC or X11 forwarding through SSH tunnel. Yes, they do understand that video to their desktop will be terrible. I told them that.

The reason they want to do this is to run a live stream with multiple remote cameras (from other people's locations). Their home/office location does not have the bandwidth for several cameras to Ninja in. However a cloud server would have the bandwidth available and moreover, it would be close to the backbone. They want all video coming from the cameras and going out on the livestream (restream/dacast/vimei/whatever) to be handled by the server and only the control of the OBS to be done by the workstation at the operator's location.

I did obtain a Linode dedicated cloud server with a single Nvidia RTX 6000 CPU, located at their Newark, New Jersey data canter, which is very close to one of the peering points of the Internet. That server is running Ubuntu 20.04 LTS.

And Yes, I was able to install the Nvidia linux drivers and I did use ffmpeg to verify NVENC by doing ffmpeg -h encoder=hevc_nvenc which demonstrates that the driver ecosystem is there and working.

I installed tightvncserver on the Ubuntu server and tightvncviewer on my windows client. That worked okay and I can see the desktop.

However, when I try to run OBS, OBS complains that it cannot find an OpenGL complient GPU device.

This suggests to me that OBS will not be able to communicate to an X server remotely; ie; it must be run from the box that has the display.

I then immediately shut down and deleted the server, capping my losses at about $3.00 for two hours for server time. Yes, GPU servers are not cheap.

What I am looking for right now is a simple answer. Is is reliably possible to have OBS Studio with Ninja running on a dedicated cloud server located in a backbone data center (not my home) running Linux and that does have a GPU that can do the encoding and decoding of the stream, and use vnc or some other means for remote control the console? Can this be done reliably without a bunch of fiddling around that would have to be repeated every time there is an upgrade?

My customer is at a point they can take a simple YES/NO answer. If the answer is NO, we are at a point at which we lost and we can move along with live. If the answer is YES, can someone please point me to a reliable how-to to enable access to the OBS console?

Thank you

Mark Allyn
Bellingham, Washington
 

Lawrence_SoCal

Active Member
Silly customer, or the person who thinks it can be boiled down to a such simple question... of course it can be done... most anything can... but that isn't the real question is it? I guarantee it can be done... but notice I didn't say at what cost (nor whether that might including a custom fork of OBS)

...anyway [make sure question is phrased correctly, ie with boundaries stated, not assumed, like cost, time, customization/forking, etc.]

see recent news articles about nVidia now supporting virtual GPU pass-through on Linux (still in Beta)
Unfortunately for you, your long description above doesn't provide a key detail
What virtualization, if any is in use, and is virtual GPU pass-through enabled or an option? Different cloud providers provide different features, so ..... wait for it..... it depends ;^) sorry couldn't resist... only 1 cup of coffee so far this morning.

You have 2 challenges (and not being a Linux SME, I won't make guesses)
- virtual GPU pass-through to OBS VM
- remote technology that supports displaying the locally H/W rendered GPU output (not stated technically correct, but not awake enough to bother finding exact right terminology... I'll let someone else correct me)
as a point of reference... on the M$ side, RDP is a No, but other remote viewer protocols work fine

if you are lucky, someone else who has pursued this will reply to you.
 

Mark Allyn

New Member
Thank you. This may be enough for me to ask a reasonably appropriate question to the cloud provider regarding whether it is possible to do Virtual GPU pass-through.

And I forgot. Although it would be technically challenging/fun to try to do an OBS fork, I don't have the time (too many other projects) and I don't want to fall out of favor of the OBS team by making an unauthorized fork. I've got enough people in this town who don't like me because I am too damn honest and I am not mealy mouthed. I would rather tell these folks an honest quick 'NO' if that's necessary rather then way 'maybe if I do this' only to find the next thing that happens is that I get run over by a bus :(.

Good. Now I am off to ask some pointed questions to Linode, my VSP provider. Again, thanks for the tip regarding Virtual GPU pass through. I was not aware of that concept.
 
D

Deleted member 121471

OBS is distributed under the GPLv2 license, you can fork it as long as your OBS fork is also GPLv2 compliant.

The only real issue is that official support won't be given as that is the responsibility of the fork maintainer.
 
Top