diff options
author | felix <felix.von.s@posteo.de> | 2022-04-21 18:22:03 +0200 |
---|---|---|
committer | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-05-02 07:20:08 +0530 |
commit | e4fa34a13e9f94f27f0fccae6bcadc8dd1ea1415 (patch) | |
tree | 9d0fe6e813b82d200ec98880612726611f3c8244 | |
parent | 1a7cd9c4873edb24b5291da14b3105b8933d4316 (diff) | |
download | hypervideo-pre-e4fa34a13e9f94f27f0fccae6bcadc8dd1ea1415.tar.lz hypervideo-pre-e4fa34a13e9f94f27f0fccae6bcadc8dd1ea1415.tar.xz hypervideo-pre-e4fa34a13e9f94f27f0fccae6bcadc8dd1ea1415.zip |
[hls] Fix unapplied byte_range for EXT-X-MAP fragment
Cherry-picked from #3302
Authored by: fstirlitz
-rw-r--r-- | yt_dlp/downloader/hls.py | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/yt_dlp/downloader/hls.py b/yt_dlp/downloader/hls.py index 694c843f3..f65f91f4f 100644 --- a/yt_dlp/downloader/hls.py +++ b/yt_dlp/downloader/hls.py @@ -191,6 +191,14 @@ class HlsFD(FragmentFD): if extra_query: frag_url = update_url_query(frag_url, extra_query) + if map_info.get('BYTERANGE'): + splitted_byte_range = map_info.get('BYTERANGE').split('@') + sub_range_start = int(splitted_byte_range[1]) if len(splitted_byte_range) == 2 else byte_range['end'] + byte_range = { + 'start': sub_range_start, + 'end': sub_range_start + int(splitted_byte_range[0]), + } + fragments.append({ 'frag_index': frag_index, 'url': frag_url, @@ -200,14 +208,6 @@ class HlsFD(FragmentFD): }) media_sequence += 1 - if map_info.get('BYTERANGE'): - splitted_byte_range = map_info.get('BYTERANGE').split('@') - sub_range_start = int(splitted_byte_range[1]) if len(splitted_byte_range) == 2 else byte_range['end'] - byte_range = { - 'start': sub_range_start, - 'end': sub_range_start + int(splitted_byte_range[0]), - } - elif line.startswith('#EXT-X-KEY'): decrypt_url = decrypt_info.get('URI') decrypt_info = parse_m3u8_attributes(line[11:]) |