OBS Tricks: Poker Streaming Better No Delay/Delay Streaming

Currently the norm for poker players who stream and play live with no delay is that they use card covers usually image assets that they put into OBS to cover the hole cards they are dealt so they don’t get stream sniped. The norm for more experienced poker players is to play with a delay of 3 to 5 minutes as they talk through hands and interact with viewers 3 to 5 minutes later which can hinder the viewer experience and engagement of the stream.

A little while back Pokerpastor on twitch figured out a way to setup a Delay/No Delay stream (reference video link below) where the cards were on a 3 to 5 minute delay but you were able to interact with chat in real time. The way this was done was to stream from a second instance of OBS to an alt twitch account and then recapture the delayed stream as a browser source or display capture into your main OBS instance which you stream to your main channel. The problem with this is that the delayed stream ends up getting compressed multiple times degrading the quality of the captured poker hands and adding an extra layer of complexity.

In a recent video nutty released on YouTube (reference video link below) he showed how you can setup a dual pc setup without a capture card which got me to thinking of taking that solution and how it would greatly benefit the twitch poker community.

With the following solution you can cut out the middle man of a secondary twitch account and maintain much better quality of the delayed card output. For more advanced streaming setups you even have the possibility of sending a live stream via SRT over public internet with some simple port forwarding rules, or even connect many more PC’s to a single OBS instance.

A couple of things you will need ahead of time:
1. OBS Installed on Both your Poker and Streaming PC OR if streaming from one PC you need 2 Instances of OBS installed (Main OBS Install + OBS Portable for instance). Please note with the latter option your encoder will be taking on additional stress and if your PC isn’t well equipped for the job you will experience frame drops, lag and possible system crashes.

2a. FOR DUAL PC SETUPS – Setup your streaming PC with a static IP address on your local network. Make sure the streaming PC has a static IP address that is not inside the DHCP pool of your router as you could end up with an IP conflict and this setup will intermittently stop working and or your streaming PC will lose connectivity to the internet. If you don’t know what any of this means reach out to me in discord and I will happily help. For the sake of this scenario the local static IP of my stream PC is 192.168.77.51, your network could be addressed differently such as 10.1.10.X, 192.168.1.X, 192.168.0.x, 10.0.0.x, etc. The example IP is only a reference for the rest of this guide.

2b. FOR SINGLE PC SETUPS – We can skip this step since we will use the built in local host IP address of 127.0.0.1

3. FOR BOTH DUAL AND SINGLE PC SETUPS – Find an open port – open command prompt on your STREAM PC as admin and type in netstat -ab this will pull a full list of all currently used/registered ports that are being used on your PC pick a port number that doesn’t exist between two of these ports. In our example we will use port 8888 since we see port 7680 is in use and the next port is 18180

The Setup

4a. FOR DUAL PC SETUPS – Go into your Card Delay OBS and go to Settings > Stream > Service and select “Custom…” you will need both your stream PC’s static IP and port number identified in step 3. We are using SRT as our transport. In the Server field type in srt://STREAMPCIPADDRESS:PORTNUMBER?mode=caller (ie: our address will be srt://192.168.77.51:8888?mode=caller)

4b. FOR SINGLE PC SETUPS – Go into your Card Delay OBS and go to Settings > Stream > Service and select “Custom…” you will need the port number identified in step 3. We are using SRT as our transport. In the Server field type in srt://127.0.0.1:PORTNUMBER?mode=caller (ie: our address would be srt://127.0.0.1:8888?mode=caller)

5a. DUAL PC ADDING THE SOURCE IN MAIN OBS – Go into a OBS Scene and add a media source give it a name like “Poker Delay Hands” or something memorable to you. On the Properties of this source uncheck “Local File”, set network buffering to 0 MB and in the “Input” field enter in srt://STREAMPCIPADDRESS:PORTNUMBER?mode=listener and click “OK” (please note this address says listener and not caller) In our example our input address is srt://192.168.77.51:8888?mode=listener

5b. SINGLE PC ADDING THE SOURCE IN MAIN OBS – Go into a OBS Scene and add a media source give it a name like “Poker Delay Hands” or something memorable to you. On the Properties of this source uncheck “Local File”, set network buffering to 0 MB and in the “Input” field enter in srt://127.0.0.1:PORTNUMBER?mode=listener and click “OK” (please note this address says listener and not caller) In our example our input address is srt://127.0.0.1:8888?mode=listener

6. If everything is completed to this point you should be able to hit the “Start Streaming” button on your card delay OBS instance and after a few seconds it will appear in your main OBS in the scene where you added the source. Please note there will be a few seconds of natural delay using this method.

7. Now at this point if everything is working go ahead and setup your “Card Delay OBS” with the delay you want in Settings > Advanced > Delay, generally 180 seconds is fine. If you’re playing higher stakes feel free to go higher.

8. If you’re having any issues feel free to join the N2MBacon Discord by following the links in the top navigation.

9. If this worked for you and you want to say thanks, use that Twitch prime sub on me at https://twitch.tv/n2mbacon

References:
nutty – Dual PC Stream Setup: https://www.youtube.com/watch?v=ZqIPvhM_8Og (side note on this video he used ipaddy:port&mode= which I was unable to get to work until switching to ipaddy:port?mode=)
PokerPastor – Former Original Method: https://www.youtube.com/watch?v=5nKHqG_6y6g
2NU Productions – Send SRT Video from OBS to OBS without a server: https://www.youtube.com/watch?v=eDgZ-IqvCJc
How to Geek: https://www.howtogeek.com/28609/how-can-i-tell-what-is-listening-on-a-tcpip-port-in-windows/

General Chain of Data:

2 PC Setup for Delay No Delay (Set Delay on Poker PC OBS):
Poker PC > OBS > Custom Streaming Service > srt://staticipofstreamingPC:openportnumber?mode=caller > Local Network Transport > StreamPC > Add Media Source > Uncheck Local File, Network Buffering 0 MB, Input: srt://staticipofstreamingpc:openport?mode=listener

1 PC Setup with 2 OBS Instances
OBS > Custom Streaming Service > srt://127.0.0.1:openportnumber?mode=caller > 2NDOBS > Add Media Source > Uncheck Local File, Network Buffering 0 MB, Input: srt://127.0.0.1:openport?mode=listener