From 62030d9527add26016c04ecb89b450d805b35ec6 Mon Sep 17 00:00:00 2001 From: chu23465 <130033130+chu23465@users.noreply.github.com> Date: Tue, 22 Apr 2025 21:37:18 +0530 Subject: [PATCH] Minor changes --- vinetrimmer/commands/dl.py | 4 ++-- vinetrimmer/objects/tracks.py | 6 +++--- vinetrimmer/services/appletvplus.py | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/vinetrimmer/commands/dl.py b/vinetrimmer/commands/dl.py index 10fc6f1..9a7e7e2 100644 --- a/vinetrimmer/commands/dl.py +++ b/vinetrimmer/commands/dl.py @@ -624,7 +624,7 @@ def result(ctx, service, quality, closest_resolution, range_, wanted, alang, sla executable = next((x for x in (shutil.which(x) for x in names) if x), None) if not executable: raise log.exit(" - Unable to find packager binary") - dec = os.path.splitext(track.locate())[0].replace("enc", "dec.mp4") + dec = os.path.splitext(track.locate())[0].replace("enc", "dec") + ".mp4" os.makedirs(directories.temp, exist_ok=True) try: @@ -663,7 +663,7 @@ def result(ctx, service, quality, closest_resolution, range_, wanted, alang, sla executable = shutil.which("mp4decrypt") if not executable: raise log.exit(" - Unable to find mp4decrypt binary") - dec = os.path.splitext(track.locate())[0].replace("enc", "dec.mp4") + dec = os.path.splitext(track.locate())[0].replace("enc", "dec") + ".mp4" os.makedirs(directories.temp, exist_ok=True) try: os.makedirs(directories.temp, exist_ok=True) diff --git a/vinetrimmer/objects/tracks.py b/vinetrimmer/objects/tracks.py index 62f40ad..bbc2f14 100644 --- a/vinetrimmer/objects/tracks.py +++ b/vinetrimmer/objects/tracks.py @@ -200,7 +200,7 @@ class Track: kid = next(iter(xml.xpath("PROTECTINFO/KID/@VALUE")), None) if not kid: # v4.3.0.0 kid = next(iter(xml.xpath("PROTECTINFO/KIDS/KID/@VALUE")), None) # can be multiple? - self.kid = uuid.UUID(base64.b64decode(self.kid).hex()).bytes_le.hex() + self.kid = uuid.UUID(base64.b64decode(kid).hex()).bytes_le.hex() #if not track.psshWV: # self.psshWV = Box.parse(Box.build(dict( # type=b"pssh", @@ -240,7 +240,7 @@ class Track: xml_str = base64.b64decode(self.psshPR).decode("utf-16-le", "ignore") xml_str = xml_str[xml_str.index("<"):] kids = [uuid.UUID(base64.b64decode(kid_xml['@VALUE']).hex()).bytes_le.hex() for kid_xml in xmltodict.parse(xml_str)['WRMHEADER']['DATA']['CUSTOMATTRIBUTES']['KIDS']['KID']] - self.kid = kids[-1] + self.kid = kids[-1] #Choose a random one cuz DSNP gives two for some reason self.kid = uuid.UUID(base64.b64decode(self.kid).hex()).bytes_le.hex() @@ -1226,7 +1226,7 @@ class Tracks: ) except: pass - + else: if by_codec: by_codec = by_codec.split(",") diff --git a/vinetrimmer/services/appletvplus.py b/vinetrimmer/services/appletvplus.py index 8abd723..e895740 100644 --- a/vinetrimmer/services/appletvplus.py +++ b/vinetrimmer/services/appletvplus.py @@ -281,7 +281,7 @@ class AppleTVPlus(BaseService): if not e.response.text: raise self.log.exit(" - No license returned!") raise self.log.exit(f" - Unable to obtain license (error code: {e.response.json()['errorCode']})") - return res['streaming-response']['streaming-keys'][0]["license"] + return base64.b64decode(res['streaming-response']['streaming-keys'][0]["license"]) # Service specific functions