From 6a924cbca238232be48573ad29e853b0700cb53a Mon Sep 17 00:00:00 2001 From: deathbybandaid Date: Thu, 21 Jan 2021 09:33:26 -0500 Subject: [PATCH 1/2] Allow ffmpeg/vlc to select quality when origin_quality is set to None --- fHDHR/device/tuners/__init__.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/fHDHR/device/tuners/__init__.py b/fHDHR/device/tuners/__init__.py index c72d97e..7d47015 100644 --- a/fHDHR/device/tuners/__init__.py +++ b/fHDHR/device/tuners/__init__.py @@ -129,8 +129,12 @@ class Tuners(): quality_profile = stream_args["origin_quality"] if not quality_profile: - quality_profile = "high" - self.fhdhr.logger.info("Origin Quality not set in config. Defaulting to Highest Quality") + if stream_args["method"] == "direct": + quality_profile = "high" + self.fhdhr.logger.info("Origin Quality not set in config. Direct Method set and will default to Highest Quality") + else: + self.fhdhr.logger.info("Origin Quality not set in config. %s Method will select the Quality Automatically" % stream_args["method"]) + return m3u8_url else: quality_profile = quality_profile.lower() self.fhdhr.logger.info("Origin Quality set in config to %s" % (quality_profile)) From 03927ec495dcfa616e430d76343b529a26c5aa60 Mon Sep 17 00:00:00 2001 From: deathbybandaid Date: Thu, 21 Jan 2021 09:43:33 -0500 Subject: [PATCH 2/2] Logging that Direct Method cannot transcode --- fHDHR/device/tuners/stream/direct_m3u8_stream.py | 3 +++ fHDHR/device/tuners/stream/direct_stream.py | 3 +++ 2 files changed, 6 insertions(+) diff --git a/fHDHR/device/tuners/stream/direct_m3u8_stream.py b/fHDHR/device/tuners/stream/direct_m3u8_stream.py index 4e6bd32..c438061 100644 --- a/fHDHR/device/tuners/stream/direct_m3u8_stream.py +++ b/fHDHR/device/tuners/stream/direct_m3u8_stream.py @@ -23,6 +23,9 @@ class Direct_M3U8_Stream(): self.fhdhr.logger.info("Detected stream of m3u8 URL: %s" % self.stream_args["stream_info"]["url"]) + if self.stream_args["transcode_quality"]: + self.fhdhr.logger.info("Client requested a %s transcode for stream. Direct Method cannot transcode." % self.stream_args["transcode_quality"]) + def generate(): try: diff --git a/fHDHR/device/tuners/stream/direct_stream.py b/fHDHR/device/tuners/stream/direct_stream.py index fdc78e9..7547aaf 100644 --- a/fHDHR/device/tuners/stream/direct_stream.py +++ b/fHDHR/device/tuners/stream/direct_stream.py @@ -20,6 +20,9 @@ class Direct_Stream(): self.fhdhr.logger.info("Direct Stream of %s URL: %s" % (self.stream_args["true_content_type"], self.stream_args["stream_info"]["url"])) + if self.stream_args["transcode_quality"]: + self.fhdhr.logger.info("Client requested a %s transcode for stream. Direct Method cannot transcode." % self.stream_args["transcode_quality"]) + if self.stream_args["stream_info"]["headers"]: req = self.fhdhr.web.session.get(self.stream_args["stream_info"]["url"], stream=True, headers=self.stream_args["stream_info"]["headers"]) else: