-
-
Notifications
You must be signed in to change notification settings - Fork 199
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
Inconsistency in UI for stream detection and state #851
Comments
Thanks for the report and detailed video. I've never seen this. And from your video alone I can't really explain what's happening. Unfortunately I don't have the time to look into this now, as I'm very busy with rewriting the app and switching from Twitch's kraken API to the helix API. The player selection here is irrelevant, as it's only a different path passed as the player argument to Streamlink. Regarding This is what happens when you launch a stream: The The After the As soon as Once Streamlink's process terminates, the state gets set to Seeing that the modal dialog begins with "Stream has ended", this means that either the
According to your debug log, this is your streamlink path, which makes me wonder how you've actually installed Streamlink.
Can you also please check and see what's in your Streamlink config file? Also, unrelated to all this, you are using incorrect player args, and the Twitch GUI needs to unnecessarily escape every character of the stream title you've included in the player args to prevent malicious stream titles from running shell code via Streamlink on Windows. You need to put the variable(s) into (double-)quotes to fix this: |
Thanks for the thorough and prompt response. The callback setup explains why it can change state like that, I figured "stream ended" would be terminal. I'm happy to do legwork, just need guidance.
I use https://github.com/ScoopInstaller/Scoop rather than Chocolatey. It copies the config file, runs in the installer into the path you saw, and creates some symlinks into that shims dir, which is in my Path. https://github.com/ScoopInstaller/Extras/blob/d87473dd2f173360f2b8b0b77dce728e7bbb7793/bucket/streamlink.json Until whatever got screwed up last night, I had been using streamlink via this method.
I was fiddling with the config file, going as far as to remove it and start with fresh configs for both streamlink and the gui. Here's all that's enabled in it right now.
The minimal set of just those first two still produces the same behavior.
Gotcha. I only added those last night as I was fiddling and discovering stuff in the streamlink gui (it was fire and forget). I'll fix those. Though interestingly neither style seems to work with MPC at a glance, it's always |
Run a development build (see CONTRIBUTING.md) or a debug build (see README.md), open the app's dev tools after launching it, set a breakpoint on this line (sources tab -> The computed property will be calculated every time
You are passing VLC for example does this via the |
Best I can tell, it transitions as:
Presumably there are no state transitions for STATUS_COMPLETED -> which is why nothing is watching for that second transition into closing the stream and the gui gets into that inconsistent state. Looking at the stack trace, it gets triggered by code 0 here https://github.com/streamlink/streamlink-twitch-gui/blob/v1.13.0/src/app/services/streaming/launch/index.js#L70 Is |
Thanks. This is not normal behavior. Streamlink should only terminate when the stream ends or errors out, or when the user sends a SIGTERM / SIGINT to the process. I don't know Scoop and what it does to its packages, but this looks like the streamlink process gets wrapped by another one which then immediately terminates and detaches the actual streamlink process. Please try installing Streamlink via the official methods.
This is what streamlink is built for... |
Right, I used it via CLI until I discovered this project, I meant specifically
I was about to reply to this saying I had, because I remembered uninstalling via scoop and just using the installer. But of course I tried it again just now and the behavior is normal. Turns out you're right. Scoop shims are indeed a wrapper executable rather than symlinks. If I point the GUI to a symlink to the installed exe, the GUI works just fine. I'll go ahead and close it out, this was a flavor of PEBKAC. Thanks! |
Checklist
Streamlink Twitch GUI version
v1.13.0
Streamlink version
3.0.3,2.4.0,2.0.0
Operating system, environment and configuration details
Windows 10 21H2
Description
I've been happily using this setup for months. I updated streamlink tonight, and noticed this issue occur. I've fiddled with re-installing, restarting, clearing configs, and trying different streamlink versions.
I took a short video of the issue: https://streamable.com/gbl3ja
Only the first half really matters, but I also tried showing what happens with
streamlink.exe
instead ofstreamlinkw.exe
.In short:
As far as I can tell, this happens across multiple versions of streamlink, and mpc-hc or VLC. Debug logs are attached, nothing stands out. Since I can't get the behavior to change by changing versions, I recognize it might not be directly related to streamlink-twitch-gui, streamlink, or mpc.
Debug log
The text was updated successfully, but these errors were encountered: