Skip to content

Streamlink 8.4.0

Latest

Choose a tag to compare

@github-actions github-actions released this 06 May 18:14
  • SECURITY: fixed arbitrary local file read via file:// URI in HLS and DASH (CVE-2026-44353 / GHSA-hgqw-6m45-hw5f)
  • Added: --stream-passthrough-encrypted for passing through encrypted HLS/DASH segments to the output stream without any checks (#6896)
  • Fixed: --interface selection by name on macOS (#6908)
  • Fixed: --interface not being applied to adapters mounted after session init (#6915)
  • Updated plugins:
    • goltelevision: rewritten and fixed plugin (#6916)
    • twitcasting: improved ad segment filtering (#6910)

📦 Download and Installation

Please see the installation instructions for a list of available install methods and packages on the supported operating systems.

⚙️ Configuration and Usage

Please see the CLI documentation for how to configure and use Streamlink.

❤️ 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

3l3m3nt <[email protected]> (1):
      stream: add --stream-passthrough-encrypted

bastimeyer <[email protected]> (26):
      tools: bump ty to 0.0.30 and fix issues
      tools: bump mypy to 1.20.1
      tools: bump ruff to 0.15.10
      tests: add --stream-passthrough-encrypted tests
      cli.argparser: fix type of session-option mapping
      docs: fix sidebar-brand anchor color
      ci.readthedocs: bump python to 3.14
      tools: set ty.environment.python-platform to "all"
      ci.github: add macos-latest runners
      ci.github: update temp-dependencies install script
      compat: add more OS-check constants
      tests: add linux_only and darwin_only markers
      session.http: fix set_interface on macOS
      session.http: patch urllib3's set_socket_options
      plugins.twitcasting: filter preroll on segment map
      tools: bump ruff to 0.15.12
      chore: replace docutils-stubs with types-docutils
      tools: bump ty to 0.0.33
      tools: bump mypy to 1.20.2
      session.http: also set interface on adapter mount
      plugins.goltelevision: rewrite and fix plugin
      docs: update Ubuntu package URL to Ubuntu 26.04
      utils.url: add is_insecure_scheme
      stream.hls: check segment/map/key/plist URI scheme
      tests.stream.hls: decryption key w/ custom adapter
      stream.dash: check BaseURL and segment URI scheme

streamlinkbot <[email protected]> (1):
      session.http_useragents: update useragents