|
|
@ -1751,14 +1751,16 @@ class InfoExtractor(object): |
|
|
|
# Example: https://www.youtube.com/watch?v=iXZV5uAYMJI |
|
|
|
# or any YouTube dashsegments video |
|
|
|
fragments = [] |
|
|
|
s_num = 0 |
|
|
|
for segment_url in representation_ms_info['segment_urls']: |
|
|
|
s = representation_ms_info['s'][s_num] |
|
|
|
segment_index = 0 |
|
|
|
timescale = representation_ms_info['timescale'] |
|
|
|
for s in representation_ms_info['s']: |
|
|
|
duration = float_or_none(s['d'], timescale) |
|
|
|
for r in range(s.get('r', 0) + 1): |
|
|
|
fragments.append({ |
|
|
|
'url': segment_url, |
|
|
|
'duration': float_or_none(s['d'], representation_ms_info['timescale']), |
|
|
|
'url': representation_ms_info['segment_urls'][segment_index], |
|
|
|
'duration': duration, |
|
|
|
}) |
|
|
|
segment_index += 1 |
|
|
|
representation_ms_info['fragments'] = fragments |
|
|
|
# NB: MPD manifest may contain direct URLs to unfragmented media. |
|
|
|
# No fragments key is present in this case. |
|
|
|