Instead of using OBS in the usual way of sending out an rtmp stream, the custom ffmpeg output offers us even more output protocols that we can use. In this guide I will use UDP as an example. (A full list of supported protocols can be found here: https://www.ffmpeg.org/ffmpeg-protocols.html)
First we of course have to configure OBS-Studio:
You can now watch the stream in VLC (for example) on another PC in your local network. Open a network stream in VLC and enter the following address: udp://@18.104.22.168:9999 (if you used this address as the "File Path" earlier, in the case of streaming to one pc you can enter udp://@:9999 on the receiving PC)
- Settings -> Output -> Output Mode -> Advanced
- Recording -> Type -> Custom Output (FFmpeg)
- FFmpeg Output Type -> Output to URL
- File path or URL -> udp://22.214.171.124:9999
This is a multicast address which means any pc on your local network can receive the stream. A different port can be used.
Alternatively you can directly send to just one PC in your system by using his IP, for example: udp://192.168.0.5:9999
You can use any port that is free and accessible on the PC's you want to use.
- Container Format -> Depends on the protocol, for udp it would be mpegts
- Video Bitrate -> 15000 or higher (depends on your encoder)
- Audio Bitrate -> 128 or higher (depends on your encoder)
- Video and Audio Encoder will be limited by the used container but we can luckily unlock other Encoder for our purpose:
Activate the checkbox "Show all codecs"
Be aware, some combinations and codecs will not work for streaming! You will have to test to find your best combination.
- Video Encoder -> libx264 / h264_nvenc (if you have an nvidia gpu) or other codecs can be used
- Audio Encoder -> AAC, AC3 or even OPUS can be selected.
- Enter any Muxer/Video Encoder or Audio Encoder settings as desired. See the FFmpeg Manual for more info on the available options.
- Click ok to save the settings.
- Start a Recording, not a Stream.
That way VLC will listen for the incoming stream from OBS:
OBS-Studio: Send an UDP Stream to a second PC using OBS
The custom ffmpeg output allows us to use different output protocols, here is one example.