AureliusGemini
New Member
Hey everyone! I was just scrolling around the OBS streaming services dropdown list and saw Steam right there as a native option (alongside all the other platforms).
While it's great that the RTMP endpoint (rtmp://[ingest-rtmp.broadcast.steamcontent.com/app](https://ingest-rtmp.broadcast.steamcontent.com/app)) is technically supported, actually setting it up workflow-wise is a pain. Honestly, I really dislike Steam's clunky internal browser and its terrible built-in broadcast menus. I wanted to pitch an idea for a clean, lightweight native OBS plugin to fix this.
Here is how a stateless/on-demand approach could work:
While it's great that the RTMP endpoint (rtmp://[ingest-rtmp.broadcast.steamcontent.com/app](https://ingest-rtmp.broadcast.steamcontent.com/app)) is technically supported, actually setting it up workflow-wise is a pain. Honestly, I really dislike Steam's clunky internal browser and its terrible built-in broadcast menus. I wanted to pitch an idea for a clean, lightweight native OBS plugin to fix this.
The Core Problem
Steam’s broadcast backend strictly enforces ownership checks via a dynamic AppID (?appid=XXX). If you try to stream a non-Steam game (like something from Epic or GOG) or send a generic feed without matching the exact game package ID, Steam's ingest servers instantly reject the connection.The Solution: A Lightweight, Stateless & Platform-Agnostic OBS Plugin
Instead of running a heavy background daemon 24/7, a native OBS plugin would be ideal because it only runs when OBS is open, keeping things clean and zero-overhead when you aren't streaming. Furthermore, it should ideally be platform-agnostic (supporting Windows, Linux, and macOS wherever OBS and Steam run).Here is how a stateless/on-demand approach could work:
- On-Demand Game & Shortcut Parsing: When you prepare to stream, the plugin quickly reads Steam’s local configuration files (shortcuts.vdf) and checks active processes to find the correct official or generated local AppID on the fly.
- Dynamic RTMP Injection: Automatically append the matching ?appid= parameter to the Steam RTMP stream URL seamlessly.
- Account & Profile Selection: Read local session files (loginusers.vdf) to let users pick or verify which Steam account/profile is broadcasting.
- Extra: Ecosystem Integrations (Aitum & Streamer.bot): Beyond native OBS, it could expose simple hooks to play nicely with multi-streaming plugins like Aitum Multistream or trigger external automation via Streamer.bot (to handle things like auto-updating your Twitch category, posting Discord announcements, or managing stream titles when the game changes).