github streamlink/streamlink 4.1.0
Streamlink 4.1.0

latest releases: 6.7.4, 6.7.3, 6.7.2...
24 months ago

Release highlights:

  • Improved: decryption of HLS streams (#4533)
  • Improved: HLS playlist parsing (#4540, #4552)
  • Improved: string representations of Stream implementations (#4521)
  • Fixed: new YouTube consent dialog (#4515)
  • Fixed: crunchyroll plugin (#4510)
  • Fixed: nicolive email logins (#4553)
  • Fixed: threading issue when closing segmented streams (#4517)
  • Removed: suppression of InsecureRequestWarning (#4525)
  • New plugins: blazetv (#4548), hiplayer (#4507), useetv (#4536)
  • Removed plugins: rotana (#4512)

⚙️ Installation and configuration

Please see the detailed installation instructions and CLI guide on Streamlink's website.

⚠️ PLEASE NOTE ⚠️
Streamlink's Windows installers have been moved to streamlink/windows-installer.

❤️ Support

If you think that Streamlink is useful and if you want to keep the project alive, then please consider supporting its maintainers by sending a small and optionally recurring tip via the available options.
Your support is very much appreciated, thank you!

🙏 Contributors

🗒️ Full changelog

Alexis Murzeau <amubtdx@gmail.com> (1):
      tests: mock user euid to be able to run tests as root

Forrest <gravyboat@users.noreply.github.com> (1):
      docs: clean up gravyboat donation links (#4534)

Ian Cameron <1661072+mkbloke@users.noreply.github.com> (7):
      plugins.rotana: plugin removal
      plugins.hiplayer: new plugin
      plugins.crunchyroll: update/fix
      plugins.mildom: fix/update
      plugins.useetv: new plugin
      plugins.blazetv: new plugin
      plugin.api: update useragents

Sebastian Meyer <mail@bastimeyer.de> (1):
      plugins.useetv: geo+subscription error messages (#4550)

Sven <sknebel@users.noreply.github.com> (1):
      docs: fix broken relative link

bastimeyer <mail@bastimeyer.de> (43):
      docs: update dependencies section in install docs
      docs: use cross-reference instead of direct link
      plugins.youtube: fix consent dialog
      changelog: remove git shortlogs
      script: rewrite github release script
      script: rename github release script
      ci: use GITHUB_TOKEN for deploying to GitHub
      plugin.api.validate: refactor all + any
      plugin.api.validate: refactor get
      plugin.api.validate: refactor callable
      plugin.api.validate: fix xml_element
      plugin.api.validate: refactor Schema class
      plugin.api.validate: turn module into package
      plugin.api.validate: implement ValidationError
      plugin.api.validate: truncate error messages
      plugin.api.validate: rewrite tests
      tests: move FileStream tests
      http_session: don't disable InsecureRequestWarning
      session: fix deprecated imports
      plugin.api.http_session: add prepare_new_request
      stream: refactor to_url and string representation
      stream.hls: simplify discard logic in writer
      docs: rewrite API guide
      stream.hls: refactor segment decryption
      stream.hls_playlist: refactor M3U8Parser
      plugin.api: fix typing issues
      utils: fix typing issues
      session: fix typing issues
      options: fix typing issues
      logger: fix typing issues
      stream.dash: fix typing issues
      stream.hls: fix typing issues
      plugins: fix typing issues
      cli: fix typing issues
      tests: fix typing issues
      docs: temporarily disable intersphinx
      docs: enable intersphinx again
      chore: fix import typing issues
      tools: add mypy config
      ci: new linting config
      tests: fix typing issue in HLSStreamReadThread
      stream.hls: parse M3U8 from Response obj directly
      plugins.nicolive: fix email logins

yhhsin <yhhsin@gmail.com> (1):
      stream.segmented: join worker+writer on close (#4517)

Don't miss a new streamlink release

NewReleases is sending notifications on new releases.