-
-
Notifications
You must be signed in to change notification settings - Fork 8.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
UI: Implement multitrack output restart if stream key has become invalid #11452
base: master
Are you sure you want to change the base?
UI: Implement multitrack output restart if stream key has become invalid #11452
Conversation
a6274a6
to
81aaed2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit.
81aaed2
to
3e55037
Compare
3e55037
to
627e999
Compare
Full 48 hour test with this PR was successful. Also rebased on latest master and addressed feedback now. |
627e999
to
8844bbe
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Commit prefix should be frontend:
. Otherwise looks okay at a glance, though I have not tested this.
With the encoder reference counting fixups this is no longer required.
8844bbe
to
b0085ed
Compare
Description
Adds a special handling for the invalid key case where a previously successful connection with the multitrack output will restart the stream from scratch in order to re-run to multitrack configuration and fetch a new signed stream key.
Motivation and Context
Twitch EB uses a signed stream key that is valid for 48 hours. Since the time limit for a stream on Twitch is also 48 hours that means that when a user will get disconnected upon hitting the hour limit they will no longer be able to reconnect.
In order to allow users to run 24/7 streams with EB we therefore need to manually restart the stream once it has stopped due to an invalid stream key.
This PR accomplishes that by invoking
StartStreaming()
again once the previous output session has been stopped with an "invalid key" error code (provided the previous output session was successful, and the user has not manually stopped the stream).This change also removes the now-unnecessary deactivate handlers, they previously existed to work around encoder reference counting issues which have now been fixed upstream.
The submission of this PR was delayed as Twitch had a server-side issue that needed to be fixed first, that fix should now be live on all production servers.
How Has This Been Tested?
*Tested with an earlier revision of the PR based on Twitch fork.
Types of changes
Checklist: