I recently tried to stream my game (via OBS) which reads messages from chat and reacts to them. But I noticed one problem - the time between sending a message to the chat and showing the reaction of the game to this is about 3 - 4 seconds. In the game that is running on my PC at this moment everything happens instantly, but there is this delay on the broadcast in the browser (there is also no delay at OBS).
Is it possible to reduce this delay on tweets to at least 1 second?
You have zero control over viewer latency. And every viewers latency will be different based on a variety of factors.
Thanks for the answer.
But it seemed to me, for example, that here the author of this game has a delay of about 1 second or even less:
Am I mistaken or can a twitch stream through OBS (or xSplit) using RTMP help this?
As I already said.
Latency is per viewer based on a variety of factors,
The stream you have linked you personally get a 1 second delay as you say,
but for me I could have 3 seconds or worse, for example. Then I could reload the page and get one second, or them open the stream on my phone and have 10 seconds on my phone, but 2 on my PC.
Regardless of how small the delay can be between the streamer and the viewer, there are a variety of contributing factors to the process:
- Delay introduced by composition software like OBS
- The streamers encoding chain and settings
- The geographical location of the streamer, the viewers, the ingest server, and the viewing CDN endpoint
- The client used to view Twitch (Web, mobile, Chromecast, console, etc.) and their supported latency features.
Understanding how Twitch (and streaming services in general) work is important when considering developing games that run using these platforms. You cannot rely on latency as a factor - either in amount or in consistency (for fairness between clients).