Skip to content
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

The future of Livestreamer Twitch GUI #331

Closed
23 of 25 tasks
bastimeyer opened this issue Oct 14, 2016 · 13 comments
Closed
23 of 25 tasks

The future of Livestreamer Twitch GUI #331

bastimeyer opened this issue Oct 14, 2016 · 13 comments
Labels

Comments

@bastimeyer
Copy link
Member

bastimeyer commented Oct 14, 2016

Let me just quickly talk about future plans and what's going on.

Due to the lack of updates of Livestreamer, a lot of things have been broken recently and needed to be fixed here in the GUI in order to make everything work again. Since Livestreamer's maintainer hasn't commited any changes and hasn't responded to any issues in almost a year now and as it seems that the whole project has been abandoned, a fork called Streamlink was created a couple of weeks ago.

A large amount of bugs have already been fixed in Streamlink by multiple, hard working people and although the project is just in its early stages, it's already looking great. There are still a couple of issues, like a potential naming conflict, but it seems that everything's okay. Packages and installers are being worked on and will be available soon.

As you can probably guess, further relying on Livestreamer is going to cause issues sooner or later. Breaking changes of Twitch's streaming infrastructure can happen at any time and that's why a switch over to Streamlink is inevitable. It's actually quite a relief, because critical bugs can get fixed, which will ensure the future of the GUI.

Right now, both Livestreamer and Streamlink are compatible with each other and work the same. Support for Streamlink has been added here in the GUI in the latest release (v0.16.0), and it can be chosen as an alternative in the settings menu. There are plans for the the CLI of Streamlink to be changed though, which could make both applications become incompatible with each other. I don't know if I want to support both Livestreamer and Streamlink if that's the case. Another reason to drop support for a non-future-proof Livestreamer.

So what does this all mean for Livestreamer Twitch GUI? Does it need to be renamed if the focus will be on Streamlink in the future? I would say so, yes. In addition to just renaming it, I'm also intending on moving the repo over to the Streamlink github organization. I'm not sure when this will happen, though.

Renaming and moving repos on Github is be pretty easy and automatic redirections will be created, so visitors of the old URLs won't see 404 errors. I'm not sure if the github API does this as well, though. If it doesn't, this would mean that the internal version check of the GUI will break.

And that's the next thing I want to talk about. How would a smooth transition of the project look like update-wise? A lot of people are just downloading the archives after being notified by the internal version check service. This kind of transition should be fairly simple, but there are also the AUR, chocolatey and homebrew-cask packages. Also, my work on the Windows installer and deb/rpm packages with custom package repos (#319) is almost done, but thinking about it, it would be wiser to wait for these to be published until the naming transition has been completed.

Maybe an intermediate release will be needed that informs the user about all the changes.

Checklist

  • Wait for the Streamlink naming issue to be resolved
  • Add support for Streamlink
    • Add basic support (v0.16.0)
    • Fix issues with Streamlink on Windows (f29484b)
    • Rewrite stream launch logic to support choosing between Streamlink and Livestreamer
    • Remove all static references to Livestreamer (templates, JS modules, etc.)
  • Rename repo and move it over to the streamlink github orga
    • Merge Streamlink Twitch GUI #345
      • Rename the application
      • Change all links
      • Update Linux launcher/icon setup scripts
      • Update documentation and wiki (will be merged once repo has moved)
      • Prepare changes for packages
        • AUR
        • Chocolatey
        • Homebrew cask
  • Check third party services
    • Travis-CI
    • Gitter
  • Add Windows installer
    • Implement internal upgrade system (postponed)
  • Add deb/rpm packages (postponed) (deb/rpm packages #319)
  • Publish new release
    • Major version bump 1.0.0
    • Rename Twitch OAuth App

🎉 🎉 🎉

@LautaroCuello
Copy link

Extend Linux launcher/icon setup scripts

Thanks, for your work.

@jsynth
Copy link

jsynth commented Oct 18, 2016

what with youtube-dl ?

@TheDromundKaas
Copy link

On only a semi-related note, I'd really like to support the project financially. Any chance for that?

@Magicool-1
Copy link

Magicool-1 commented Oct 19, 2016

Hey you say in v0.16.0 you can now use streamlink and switch livestreamer for streamlink in the settings, I can not find that option though in any of the settings tabs?

@bastimeyer
Copy link
Member Author

bastimeyer commented Oct 20, 2016

@LautaroCuello
Is there something wrong with the current launcher/icon setup scripts (start.sh, {add,remove}-menuitems.sh), or why are you quoting this line? Maybe you're confusing this with the addition of packages for Debian, *buntu, Mint, Elementary, Fedora, openSUSE, etc... #319

@jsynth
yt-dl works differently and is not a good option for streaming content.
streamlink/streamlink#7

@TheDromundKaas
If you want to support and donate, you can find informations on each of the releases pages. Thanks!

@Magciool
LS and SL are working identically right now, so you can simply change the executable path in the "livestreamer settings menu" to streamlink. All LS related bugfixes in the GUI are compatible with SL.
What I mentioned in the changelog was an addition to the validation routine for the SL executable, hence the word "initial support". Once new features are added to streamlink or once something becomes incompatible, there will be different settings in the GUI for choosing between both. In case livestreamer breaks and does not get updated, it will be removed.

@Magicool-1
Copy link

@bastimeyer thanks
I tried that but I had Python installed in a path with spaces in the directory and it just wouldn't work. But apparently that's a bug with python that some scripts don't work if there is a space in the directory path.
So reinstalled python to another directory now works like a charm.

@SanyaIV
Copy link

SanyaIV commented Oct 23, 2016

Do they actually work completely the same with Livestreamer GUI? I'm wondering because after I switched to Streamlink, when I start a stream it will open a new CMD window instead of having the output in the Livestreamer GUI window. Not THAT big of a deal but it's yet another window cluttering my taskbar, just an aesthetics thing..

@bastimeyer
Copy link
Member Author

I'm guessing you're on Windows...

The Windows cmd window is not supposed to be there and also causes issues when trying to close the process from within the GUI. I don't know why the cmd window is being opened, but it has something to do with the binary and python being started in a subprocess.

The streamlink installer causes the same issue that Livestreamer has when being installed via pip on Windows. That's the reason why it is mentioned in the readme and wiki.

The Windows installer for streamlink is still experimental, since it was rewritten and a different tool is now being used, but this may even be worth a bug report. I haven't had time to investigate this yet, but I will make sure that this gets fixed before the transition.

@SanyaIV
Copy link

SanyaIV commented Oct 24, 2016

@bastimeyer I'm indeed on Windows. I just used the Windows installer for version 0.0.2 that was available for download on the release page of Streamlink.

@Twinklebreeze
Copy link

Twinklebreeze commented Oct 25, 2016

@SanyaIV In one of the installers there is a bat file to run Streamlink. If you change python.exe to pythonw.exe the cmd window no longer shows up.

@chikei
Copy link

chikei commented Oct 25, 2016

@Koonboi I believe you actually means streamlink-script.py :), edit first line of this file #!"C:\Prog...\python.exe from python.exe to pythonw.exe will do the trick

@Twinklebreeze
Copy link

@chikei That too. The windows build I found was a comment in the issues, and it was started with a batch file. So I edited that.

@bastimeyer
Copy link
Member Author

The streamlink launch logic has been rewritten, see #336 (comment).
Not yet merged into master, testing encouraged, though...

bastimeyer added a commit that referenced this issue Nov 5, 2016
@bastimeyer
Copy link
Member Author

v1.0.0 has been released:
https://github.com/streamlink/streamlink-twitch-gui/releases/latest

@bastimeyer
Copy link
Member Author

It's been a month... Closing the thread now...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

8 participants