Add a "Supported codecs" setting (HEVC / Enhanced Broadcasting)#705
Add a "Supported codecs" setting (HEVC / Enhanced Broadcasting)#705einanderson wants to merge 1 commit into
Conversation
Adds a Supported codecs setting (Twitch default / H.265 (HEVC)) whose value is passed to usher via the new supported_codecs parameter, so users with hardware HEVC decode can receive Enhanced Broadcasting variants (1440p+). Default is "Twitch default" (no codec requested) -> behaviour unchanged. The value is only passed when the installed script.module.python.twitch accepts the parameter (feature-detected), so it degrades gracefully with an older library. Refs anxdpanic#699, anxdpanic#700
|
Ready for review (no longer draft) — no rush. This builds directly on your existing quality/usher handling; it only adds a small optional "Supported codecs" setting that requests H.265 (HEVC) / Enhanced Broadcasting, so 2K streams play (with audio) through inputstream.adaptive. Default stays "Twitch standard", so nothing changes unless enabled — an addition on top of your code, not a rewrite. Addresses #699 / #700. How to test: check out this branch + the lib PR anxdpanic/script.module.python.twitch#141 → Settings → Supported codecs = H.265 (HEVC), Video Quality = Adaptive (needs inputstream.adaptive) → a 2K channel plays 2K HEVC with audio; back to "Twitch standard" = unchanged stock behaviour. Uses |
Summary
Adds a "Supported codecs" setting so users can opt in to Twitch Enhanced Broadcasting (HEVC), which is required to receive 1440p+ variants.
Addresses #699 (Playback broken for 2k streams) and #700 (No audio on 2k stream): those 2K streams use HEVC, which Twitch only serves when the client requests
supported_codecs.What it does
Twitch default/H.265 (HEVC).live/video/live_request/video_request) via the newsupported_codecsparameter.supported_codecssent → behaviour unchanged (no regression).h264stays in the requested list as a fallback, so non-HEVC channels/devices still get a playable variant.script.module.python.twitchaccepts the parameter (feature-detected), so the plugin still works with an older library.Pairs with
The library-side change anxdpanic/script.module.python.twitch#141, which adds the
supported_codecsparameter. With an older library the setting simply has no effect.Testing
supported_codecs=h265,h264mechanism is in production use on Raspberry Pi 4 / Kodi 21 (HEVC 1440p plays).inspect); platform-independent.Notes