JasonVP
Member
Someone suggested adding an RTMP server into OBS as a source a couple of years ago, and it didn't gain any traction. I'm going to take this opportunity to request it again and add some reasoning behind it. Please read through this before just saying, "No, it'll add too much bloat." (I actually don't think it will, but bear with me).
Challenge
The most common way for a streamer to configure a dual-PC stream setup is to add a capture card to the second PC. These capture cards come in various prices and configurations, but they all have limitations for video input. Some can handle 1440p/144FPS. ElGato's newly about-to-be-released card can do 4K/60FPS through it's HDMI port. But what about when 4K/144Hz displays appear? What will happen when a gamer with a beast of a gaming rig can drive 4K at > 60FPS? What kind of capture card on the streaming rig will he need?
Answer: a card that doesn't exist right now. And when it does exist (years from now), it'll cost as much as the whole streaming PC does.
Let's make capture cards a thing of the past.
Suggestion
Add a built-in RTMP server to OBS' sources.
Configuration Ideas
Gaming PC's IP: 192.168.1.10
Streaming PC's IP: 192.168.1.20
On the gaming PC with an NVidia graphics card: OBS is set up with an outbound NVENC stream is set up with a high bitrate (say 50Mbit/sec) with the target of the rtmp://192.168.1.20/name/key.
On the streaming PC: OBS is set up with an incoming source as an RTMP server. The configuration for this would be simple: give it a name and a security key that matches what's configured on the gaming PC's outbound stream.
How Will This Help
There's a plugin available right now called NDI which sort-of does what I'm asking without using RTMP as the transport. It's a great idea, but it doesn't work the same way as I've suggested. And it does add extra load to the gaming PC, which in some cases isn't really a great idea. So before you suggest I look at NDI: I already have. It's not the same thing.
Conclusion
I realize adding server code into OBS isn't high on folks priority list, but I'd like for it to be seriously considered at least. Before the developers just dismiss the idea, think through what I've written here and ask me questions if there's something that needs to be clarified. I really think this will make the lives of streamers with dual-PC setups significantly easier and less expensive.
Challenge
The most common way for a streamer to configure a dual-PC stream setup is to add a capture card to the second PC. These capture cards come in various prices and configurations, but they all have limitations for video input. Some can handle 1440p/144FPS. ElGato's newly about-to-be-released card can do 4K/60FPS through it's HDMI port. But what about when 4K/144Hz displays appear? What will happen when a gamer with a beast of a gaming rig can drive 4K at > 60FPS? What kind of capture card on the streaming rig will he need?
Answer: a card that doesn't exist right now. And when it does exist (years from now), it'll cost as much as the whole streaming PC does.
Let's make capture cards a thing of the past.
Suggestion
Add a built-in RTMP server to OBS' sources.
Configuration Ideas
Gaming PC's IP: 192.168.1.10
Streaming PC's IP: 192.168.1.20
On the gaming PC with an NVidia graphics card: OBS is set up with an outbound NVENC stream is set up with a high bitrate (say 50Mbit/sec) with the target of the rtmp://192.168.1.20/name/key.
On the streaming PC: OBS is set up with an incoming source as an RTMP server. The configuration for this would be simple: give it a name and a security key that matches what's configured on the gaming PC's outbound stream.
How Will This Help
- Reduced Costs: This should be pretty obvious. Every leap in display resolution in gaming (1080p to 1440p to 4K to... 8k?) requires new graphics cards in the gaming PC as well as new capture cards in the streaming PC. This solution makes the capture card completely irrelevant.
- Multiple Stream Sources: With a little imagination, multiple RTMP servers (different ports) could be configured as sources in OBS, and then it could receive streams from multiple PCs. This could be different camera angles, other game displays, etc. Imagine at the next big online gaming tournament, where the PCs are all configured with NVidia cards and they all output a stream directed at some central streaming PC. This would allow the broadcaster to rapidly switch between incoming streams to display what the players are seeing and doing. All without causing massive input lag or other problems for the player.
- Other ideas I haven't thought of yet?
There's a plugin available right now called NDI which sort-of does what I'm asking without using RTMP as the transport. It's a great idea, but it doesn't work the same way as I've suggested. And it does add extra load to the gaming PC, which in some cases isn't really a great idea. So before you suggest I look at NDI: I already have. It's not the same thing.
Conclusion
I realize adding server code into OBS isn't high on folks priority list, but I'd like for it to be seriously considered at least. Before the developers just dismiss the idea, think through what I've written here and ask me questions if there's something that needs to be clarified. I really think this will make the lives of streamers with dual-PC setups significantly easier and less expensive.