From 479473e6562ab764174a874cac109987c40c46dc Mon Sep 17 00:00:00 2001 From: lossless1024 Date: Mon, 11 Sep 2023 16:14:24 +0200 Subject: [PATCH] Fix SCVR Closes #110 #105 --- streamonitor/sites/stripchat.py | 18 +++++++++++++----- streamonitor/sites/stripchat_vr.py | 10 +--------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/streamonitor/sites/stripchat.py b/streamonitor/sites/stripchat.py index 9f6b7d1..55870da 100644 --- a/streamonitor/sites/stripchat.py +++ b/streamonitor/sites/stripchat.py @@ -6,20 +6,28 @@ class StripChat(Bot): site = 'StripChat' siteslug = 'SC' + def __init__(self, username): + super().__init__(username) + self.vr = False + def getVideoUrl(self): return self.getWantedResolutionPlaylist(None) def getPlaylistVariants(self, url): - def formatUrl(auto): - return "https://edge-hls.{host}/hls/{id}/master/{id}{auto}.m3u8".format( + def formatUrl(master, auto): + return "https://edge-hls.{host}/hls/{id}{vr}/{master}/{id}{vr}{auto}.m3u8".format( server=self.lastInfo["cam"]["viewServers"]["flashphoner-hls"], host='doppiocdn.com', id=self.lastInfo["cam"]["streamName"], - auto='_auto' if auto else '') + master='master' if master else '', + auto='_auto' if auto else '', + vr='_vr' if self.vr else '') variants = [] - variants.extend(super().getPlaylistVariants(formatUrl(False))) - variants.extend(super().getPlaylistVariants(formatUrl(True))) + variants.extend(super().getPlaylistVariants(formatUrl(True, False))) + variants.extend(super().getPlaylistVariants(formatUrl(True, True))) + variants.extend(super().getPlaylistVariants(formatUrl(False, True))) + variants.extend(super().getPlaylistVariants(formatUrl(False, False))) return variants def getStatus(self): diff --git a/streamonitor/sites/stripchat_vr.py b/streamonitor/sites/stripchat_vr.py index 8116715..f0760b2 100644 --- a/streamonitor/sites/stripchat_vr.py +++ b/streamonitor/sites/stripchat_vr.py @@ -1,6 +1,5 @@ from streamonitor.sites.stripchat import StripChat from streamonitor.bot import Bot -from streamonitor.downloaders.fmp4s_wss import getVideoWSSVR class StripChatVR(StripChat): @@ -9,15 +8,8 @@ class StripChatVR(StripChat): def __init__(self, username): super().__init__(username) - self.getVideo = getVideoWSSVR self.stopDownloadFlag = False - - def getVideoUrl(self): - return "wss://s-{server}.{host}/{id}_vr_webxr?".format( - server=self.lastInfo["broadcastSettings"]["vrBroadcastServer"], - host='stripcdn.com', - id=self.lastInfo["cam"]["streamName"] - ) + '&'.join([k + '=' + v for k, v in self.lastInfo['broadcastSettings']['vrCameraSettings'].items()]) + self.vr = True def getStatus(self): status = super(StripChatVR, self).getStatus()