Untitled
unknown
plain_text
a year ago
2.7 kB
10
Indexable
def get_manifest( self, title: Title, video_codec: str, bitrate_mode: str, quality: str, hdr: Optional[str] = None, ignore_errors: bool = False ) -> dict: res = self.session.get( url=self.endpoints["playback"], params={ "asin": title.id, "consumptionType": "Streaming", "desiredResources": ",".join([ "PlaybackUrls", "AudioVideoUrls", "CatalogMetadata", "ForcedNarratives", "SubtitlePresets", "SubtitleUrls", "TransitionTimecodes", "TrickplayUrls", "CuepointPlaylist", "XRayMetadata", "PlaybackSettings", ]), "deviceID": self.device_id, "deviceTypeID": self.device["device_type"], "firmware": 1, "gascEnabled": str(self.pv).lower(), "marketplaceID": self.region["marketplace_id"], "resourceUsage": "CacheResources", "videoMaterialType": "Feature", "playerType": "html5", "clientId": self.client_id, **({ "operatingSystemName": "Linux" if quality == "SD" else "Windows", "operatingSystemVersion": "unknown" if quality == "SD" else "10.0", } if not self.device_token else {}), "deviceDrmOverride": "CENC", "deviceStreamingTechnologyOverride": "DASH", "deviceProtocolOverride": "Https", "deviceVideoCodecOverride": video_codec, "deviceBitrateAdaptationsOverride": bitrate_mode.replace("+", ","), "deviceVideoQualityOverride": quality, "deviceHdrFormatsOverride": self.VIDEO_RANGE_MAP.get(hdr, "None"), "supportedDRMKeyScheme": "DUAL_KEY", # ? "liveManifestType": "live,accumulating", # ? "titleDecorationScheme": "primary-content", "subtitleFormat": "TTMLv2", "languageFeature": "MLFv2", # ? "uxLocale": "en_US", "xrayDeviceClass": "normal", "xrayPlaybackMode": "playback", "xrayToken": "XRAY_WEB_2020_V1", "playbackSettingsFormatVersion": "1.0.0", "playerAttributes": json.dumps({"frameRate": "HFR"}), # possibly old/unused/does nothing: "audioTrackId": "all", },
Editor is loading...
Leave a Comment