diff --git a/plugins/dispatchwrapparr/dashdrm.py b/plugins/dispatchwrapparr/dashdrm.py index 9f40dee..31515c4 100644 --- a/plugins/dispatchwrapparr/dashdrm.py +++ b/plugins/dispatchwrapparr/dashdrm.py @@ -19,7 +19,7 @@ log = logging.getLogger(__name__) -__version__ = "1.7.2" +__version__ = "1.7.3" ''' DASHDRM plugin for Dispatchwrapparr & Streamlink diff --git a/plugins/dispatchwrapparr/dispatchwrapparr.py b/plugins/dispatchwrapparr/dispatchwrapparr.py index f5fb8fd..14b3a0e 100755 --- a/plugins/dispatchwrapparr/dispatchwrapparr.py +++ b/plugins/dispatchwrapparr/dispatchwrapparr.py @@ -30,7 +30,7 @@ from streamlink.stream.stream import Stream from streamlink.options import Options -__version__ = "1.7.2" +__version__ = "1.7.3" def parse_args(): # Initial wrapper arguments @@ -508,7 +508,7 @@ def parse_fragment_headers(raw_header_values: str | list[str] | None) -> dict[st return parsed_headers -def detect_streams(session, url, clearkey): +def detect_streams(session, url, clearkey=None): """ Performs extended plugin matching for Streamlink Returns a dict of possible streams @@ -570,63 +570,36 @@ def find_by_mime_type(session, url): stream_type = "http" else: stream_type = None - return stream_type try: log.debug("First pass plugin matching with Streamlink Plugin Resolver...") plugin_name, plugin_cls, url = session.resolve_url(url) plugin = plugin_cls(session, url) - if plugin_name == "dash" and clearkey: - streams = invoke_drm_plugin(session, url, plugin_name, clearkey) - return streams - elif plugin_name == "hls" and clearkey: + if plugin_name == "dash": streams = invoke_drm_plugin(session, url, plugin_name, clearkey) - return streams - elif plugin_name == "dash": - # Use our own DASH handler for dash period change and pacing support - streams = invoke_drm_plugin(session, url, plugin_name, None) elif plugin_name == "hls": - # Use our own DASH handler for dash period change and pacing support - streams = invoke_drm_plugin(session, url, plugin_name, None) - return streams + streams = invoke_drm_plugin(session, url, plugin_name, clearkey) else: log.debug(f"Plugin '{plugin_name}' matched via resolver") - return plugin.streams() + streams = plugin.streams() + return streams except NoPluginError: log.debug("Second pass plugin matching via MIME Type Resolver...") - stream_type = find_by_mime_type(session, url) - - if stream_type == "dash" and clearkey: + plugin_name = find_by_mime_type(session, url) + if plugin_name == "dash": log.debug("DASH DRM matched via MIME Type Resolver") - streams = invoke_drm_plugin(session, url, stream_type, clearkey) - return streams - - elif stream_type == "hls" and clearkey: + streams = invoke_drm_plugin(session, url, plugin_name, clearkey) + elif plugin_name == "hls": log.debug("HLS DRM matched via MIME Type Resolver") - streams = invoke_drm_plugin(session, url, stream_type, clearkey) - return streams - - elif stream_type == "dash": - log.debug("DASH Stream Detected via MIME Type Resolver") - # Use our own DASH handler for dash period change and pacing support - streams = invoke_drm_plugin(session, url, stream_type, None) - return streams - - elif stream_type == "hls": - log.debug("HLS Stream Detected via MIME Type Resolver") - streams = invoke_drm_plugin(session, url, stream_type, None) - return streams - streams = HLSStream.parse_variant_playlist(session, url) - #return streams or {"live": HLSStream(session, url)} - - elif stream_type == "http": + streams = invoke_drm_plugin(session, url, plugin_name, clearkey) + elif plugin_name == "http": log.debug("HTTP Stream Detected via MIME Type Resolver") - return {"live": HTTPStream(session, url)} - + streams = {"live": HTTPStream(session, url)} else: raise PluginError("Could not detect stream type or no suitable plugin found.") + return streams def check_stream_variant(stream, session=None): """ Checks for different stream variants: diff --git a/plugins/dispatchwrapparr/hlsdrm.py b/plugins/dispatchwrapparr/hlsdrm.py index 35f19c4..4690793 100644 --- a/plugins/dispatchwrapparr/hlsdrm.py +++ b/plugins/dispatchwrapparr/hlsdrm.py @@ -15,7 +15,7 @@ log = logging.getLogger(__name__) -__version__ = "1.7.2" +__version__ = "1.7.3" ''' HLSDRM plugin for Dispatchwrapparr & Streamlink diff --git a/plugins/dispatchwrapparr/plugin.json b/plugins/dispatchwrapparr/plugin.json index 2aeeb9d..b45bf34 100644 --- a/plugins/dispatchwrapparr/plugin.json +++ b/plugins/dispatchwrapparr/plugin.json @@ -1,6 +1,6 @@ { "name": "Dispatchwrapparr", - "version": "1.7.2", + "version": "1.7.3", "description": "An intelligent DRM/Clearkey capable stream profile for Dispatcharr", "author": "jordandalley", "maintainers": ["michaelmurfy"], diff --git a/plugins/dispatchwrapparr/plugin.py b/plugins/dispatchwrapparr/plugin.py index e8e8875..c6b889f 100644 --- a/plugins/dispatchwrapparr/plugin.py +++ b/plugins/dispatchwrapparr/plugin.py @@ -10,7 +10,7 @@ class Plugin: name = "Dispatchwrapparr" - version = "1.7.2" + version = "1.7.3" description = "An intelligent DRM/Clearkey capable stream profile for Dispatcharr" profile_name = "Dispatchwrapparr" # Directory where dispatchwrapparr will be copied to