]> jfr.im git - yt-dlp.git/commitdiff
[extractor/crunchyroll:beta] Use streams API (#4555)
authorJeff Huffman <redacted>
Thu, 4 Aug 2022 18:05:58 +0000 (14:05 -0400)
committerGitHub <redacted>
Thu, 4 Aug 2022 18:05:58 +0000 (23:35 +0530)
Closes #4452
Authored by: tejing1

README.md
yt_dlp/extractor/crunchyroll.py

index 4e806e14c0a087e6abc91c18503f0098babec837..285c0b78a0b31155e6a63e4db774de0928282858 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1774,7 +1774,7 @@ #### crunchyroll
 
 #### crunchyrollbeta
 * `format`: Which stream type(s) to extract. Default is `adaptive_hls` Eg: `crunchyrollbeta:format=vo_adaptive_hls`
-    * Potentially useful values include `adaptive_hls`, `adaptive_dash`, `vo_adaptive_hls`, `vo_adaptive_dash`, `download_hls`, `trailer_hls`, `trailer_dash`
+    * Potentially useful values include `adaptive_hls`, `adaptive_dash`, `vo_adaptive_hls`, `vo_adaptive_dash`, `download_hls`, `download_dash`, `multitrack_adaptive_hls_v2`
 * `hardsub`: Preference order for which hardsub versions to extract. Default is `None` (no hardsubs). Eg: `crunchyrollbeta:hardsub=en-US,None`
 
 #### vikichannel
index bacdb851535da66cb16056b252b80318a14c0a00..fccf0548036ce6046fac7845bd35cfd9078d02c3 100644 (file)
@@ -801,7 +801,9 @@ def _real_extract(self, url):
         if episode_response.get('is_premium_only') and not episode_response.get('playback'):
             raise ExtractorError('This video is for premium members only.', expected=True)
 
-        stream_response = self._download_json(episode_response['playback'], display_id, note='Retrieving stream info')
+        stream_response = self._download_json(
+            f'{api_domain}{episode_response["__links__"]["streams"]["href"]}', display_id,
+            note='Retrieving stream info', query=params)
         get_streams = lambda name: (traverse_obj(stream_response, name) or {}).items()
 
         requested_hardsubs = [('' if val == 'none' else val) for val in (self._configuration_arg('hardsub') or ['none'])]