question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

The future of Livestreamer Twitch GUI

See original GitHub issue

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 (f29484b869501fcab21c795e5ce424e7e5544515)
    • 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 #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) (#319)
  • Publish new release
    • Major version bump 1.0.0
    • Rename Twitch OAuth App

🎉 🎉 🎉

Issue Analytics

  • State:closed
  • Created 7 years ago
  • Reactions:43
  • Comments:13 (5 by maintainers)

github_iconTop GitHub Comments

7reactions
bastimeyercommented, Dec 4, 2016
3reactions
LautaroCuellocommented, Oct 16, 2016

Extend Linux launcher/icon setup scripts

Thanks, for your work.

Read more comments on GitHub >

github_iconTop Results From Across the Web

streamlink/streamlink-twitch-gui - Gitter
Hi, I don't know whether this application includes opening videos from "Past Broadcasts", at least I didn't find anything about it. Does this...
Read more >
Streamlink Twitch GUI 2.2.0 - Chocolatey
Streamlink Twitch GUI. A multi platform Twitch.tv browser for Streamlink Browse Twitch.tv and watch streams in your video player of choice.
Read more >
Twitch Studio User Interface Guide
This is a quick guide that will cover how to customize the Twitch Studio UI to best suit your style and channel content....
Read more >
Streamlink Twitch GUI
Features · Available on Windows, macOS and Linux · Watch streams in the video player of your choice via Streamlink · Watch multiple...
Read more >
Step-by-step guide on how to create a streaming app like Twitch
Developing a livestreaming app that matches the scale of Twitch is not a matter of a few months time and a large capital...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found