aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfelix <felix.von.s@posteo.de>2022-04-21 18:22:03 +0200
committerpukkandan <pukkandan.ytdlp@gmail.com>2022-05-02 07:20:08 +0530
commite4fa34a13e9f94f27f0fccae6bcadc8dd1ea1415 (patch)
tree9d0fe6e813b82d200ec98880612726611f3c8244
parent1a7cd9c4873edb24b5291da14b3105b8933d4316 (diff)
downloadhypervideo-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.py16
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:])