I’m trying to have multiple people stream to my server, then have my server combine the streams and push it out to Twitch/YouTube, etc. Much like this old video. OBS keeps crashing whenever I start streaming from my desktop. I opened an issue with the OBS devs and they closed it literally within 2 minutes because I’m “doing too many unsupported things” (which is fair, but still makes me mad). Here’s the github issue if you want to look at my setup and such. I had it working on a slightly older version, but then I upgraded it and installed a GPU in the server so idk which caused it. Has anybody come across any pitfalls with the newest versions of OBS?
IMHO, there not much you can do. I understand their position, they’re free to not support whatever they choose, but It’s also a bit perplexing that they closed it right away, a bit rude. Anyway, using OBS on the server might not be the best idea, take a look at ffmpeg, obs is basically (very very basically) “just” a front to ffmpeg. If you describe exactly what you want to achieve, I may be able to help you with that ffmpeg part, I have already done HLS and MPEG-DASH streaming with ffmpeg, with the source being a video file sent from my pc over rtmp. The source could easily be your desktop and maybe ffmpeg can be used on the server, I’m sure it can, I just may not be able to figure it out. Anyway, describe your desired result as closely as possible and I’ll try to help you, tomorrow.
I had no issues recreating that old video setup with obs and fedora.
I even had rtmp running on the same machine for collecting several player videos.
This might be a case where the devs stopped caring about supporting everything (the nature of open source) and take priorities on Windows, NVENC and Twitch. The code may be open source, but the dev priorities may have cost the project it’s open nature, because it poured all it’s resources on Twitch streamers.
You basically have to be “All Games Done Quick” to get any features implemented in OBS. You’re kind of in a situation where you must be a software dev to fix it yourself to support your own edge cases. Asking isn’t gonna work anymore.
OBS has to have a Xserver and OpenGL running because it has to paint a canvas for a composite image it then sends to FFmpeg. It can’t work without a GPU and without Xserver and there will never be support for headless operation because that’s FFmpeg’s job. FFmpeg itself though can work if you give it the proper YUV or RGB buffers and the right commands. This is a better option by far.
This time I am 100% positive that OBS will NEVER get headless operation using a software renderer for the canvas.
Basically, I have NGINX on the server with 3 RTMP applications, one for me and my two friends. We each set out desktop OBSs to stream to those, and I want to combine those streams and push them to a 4th RTMP application on the same server that will push to Twitch/YouTube, etc. I would like to have multiple scenes in case just two of us or streaming or whatever, but that will be decided before actually streaming so I don’t mind making multiple ffmpeg scripts to handle those situations
But I had this all working with headless OBS on an older GT 230 card, but the performance was terrible (old and no NVENC support). That also might have been running on OBS 24, and now I’m on 25? I’m not sure but I can test that while I"m at it
The way I used was…
we had players streaming to the RTMP…
then OBS connected to them (we had many scenes setup)
and we streamed outbound to restream.io (to not waste the upload bandwidth)
Since we were only targeting 720p/30fps we got away with a core i7 6700 and 8GB ram machine.
I’d rather not use restream if I can do it myself, but we can’t even get to that part…
our plan for this year (if it is not cancelled) was to try not using RTMP at all
we plan to try to setup the “combiner/outbound” OBS to capture each of the players OBS streams directly
Do you mean by using NDI? Does that work over WAN?
I might also try using UDP instead of RTMP just to see what happens
now that you mention NDI… it may be worth trying, if it uses less cpu/gpu on the players machine
I figured it out. Instead of using a ‘vlc’ source, I used a ‘media’ source, unchecked the ‘local file’ and added the rtmp URL. The performance was still pretty bad though. Around 15 fps. Disabling the scene preview allows OBS via ssh to run at full speed. If you have spare cpu and are network bottlenecked, you can look into compressing the SSH connection via the ‘-C’ option. Now to play with VAAPI…