Compare commits

..

No commits in common. "3e92c60fcd94c37428d57153dbdd14cd0a1f9226" and "f7ce98a21e15cb094c772e9082796d009c61578b" have entirely different histories.

3 changed files with 7 additions and 21 deletions

View File

@ -67,10 +67,6 @@ _SIG_TESTS = [
] ]
_NSIG_TESTS = [ _NSIG_TESTS = [
(
'https://www.youtube.com/s/player/7862ca1f/player_ias.vflset/en_US/base.js',
'X_LCxVDjAavgE5t', 'yxJ1dM6iz5ogUg',
),
( (
'https://www.youtube.com/s/player/9216d1f7/player_ias.vflset/en_US/base.js', 'https://www.youtube.com/s/player/9216d1f7/player_ias.vflset/en_US/base.js',
'SLp9F5bwjAdhE9F-', 'gWnb9IK2DJ8Q1w', 'SLp9F5bwjAdhE9F-', 'gWnb9IK2DJ8Q1w',

View File

@ -1694,9 +1694,8 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
if n_response is None: if n_response is None:
# give up if descrambling failed # give up if descrambling failed
break break
for fmt_dct in traverse_obj(fmt, (None, (None, ('fragments', Ellipsis))), expected_type=dict): fmt['url'] = update_url(
fmt_dct['url'] = update_url( parsed_fmt_url, query_update={'n': [n_response]})
fmt_dct['url'], query_update={'n': [n_response]})
# from yt-dlp, with tweaks # from yt-dlp, with tweaks
def _extract_signature_timestamp(self, video_id, player_url, ytcfg=None, fatal=False): def _extract_signature_timestamp(self, video_id, player_url, ytcfg=None, fatal=False):
@ -2048,19 +2047,10 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
if no_video: if no_video:
dct['abr'] = tbr dct['abr'] = tbr
if no_audio or no_video: if no_audio or no_video:
CHUNK_SIZE = 10 << 20 dct['downloader_options'] = {
# avoid Youtube throttling # Youtube throttles chunks >~10M
dct.update({ 'http_chunk_size': 10485760,
'protocol': 'http_dash_segments', }
'fragments': [{
'url': update_url_query(dct['url'], {
'range': '{0}-{1}'.format(range_start, min(range_start + CHUNK_SIZE - 1, dct['filesize']))
})
} for range_start in range(0, dct['filesize'], CHUNK_SIZE)]
} if dct['filesize'] else {
'downloader_options': {'http_chunk_size': CHUNK_SIZE} # No longer useful?
})
if dct.get('ext'): if dct.get('ext'):
dct['container'] = dct['ext'] + '_dash' dct['container'] = dct['ext'] + '_dash'
formats.append(dct) formats.append(dct)

View File

@ -405,7 +405,7 @@ class JSInterpreter(object):
left, right = self._separate_at_paren(obj[len(klass):]) left, right = self._separate_at_paren(obj[len(klass):])
argvals = self.interpret_iter(left, local_vars, allow_recursion) argvals = self.interpret_iter(left, local_vars, allow_recursion)
expr = konstr(*argvals) expr = konstr(*argvals)
if expr is None: if not expr:
raise self.Exception('Failed to parse {klass} {left!r:.100}'.format(**locals()), expr=expr) raise self.Exception('Failed to parse {klass} {left!r:.100}'.format(**locals()), expr=expr)
expr = self._dump(expr, local_vars) + right expr = self._dump(expr, local_vars) + right
break break