You are correct that a Genvid-enabled game client will send the data to Twitch, but it’ll send that data via Genvid services which handle scalability. (Note that the SDK assumes you’re using your own AWS account; if you’d like us to assist with deployment we can.) I’ll provide a bit more details and links below, and we are happy to get on a call to explain more if you’d like.
First, a good overview is here: https://www.genvidtech.com/doc/SDK-1.19.0/quicktour/overview.html
The Genvid system is a very robust, scalable system design intended for live operations of your interactive
content. With Genvid, you deploy a spectator build of your game; the spectator build should be integrated with our SDK (what we call the Native SDK) https://www.genvidtech.com/doc/SDK-1.19.0/engine/contents.html
The spectator build, once setup with the Native SDK will capture audio and video and send it to Twitch. You’ll also determine what data you want to send to the extension. Genvid services will send that data. The Genvid Web APIs will read that data, and you’ll deploy a Genvid website via Extensions on Twitch. https://www.genvidtech.com/doc/SDK-1.19.0/website/website.html#website-integration
The game client by itself shouldn’t be sending data directly to Twitch because that won’t scale. While Twitch Extensions provides you the ability to setup your website (which you can do via Genvid) and a simple pubsub service, Twitch’s pubsub service only updates once per second, whereas the Genvid system allows for you to have far greater, richer data updated at higher amounts.
Here is how to setup the streaming services to Twitch once you’ve setup the Native and Web portions of the SDK: https://www.genvidtech.com/doc/SDK-1.19.0/streamingservices/streamingservices.html
While the above seems complicated at first glance, the design is intentionally balanced between scalability, stability and ability for you to customize to a wide variety of scenarios.