|
|
@ -484,18 +484,15 @@ fragment BannerFields on Banner {
|
|
|
|
'url': 'url',
|
|
|
|
'url': 'url',
|
|
|
|
})) or None
|
|
|
|
})) or None
|
|
|
|
|
|
|
|
|
|
|
|
m3u8_headers = {'jwt': self._TOKEN}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
entries = []
|
|
|
|
entries = []
|
|
|
|
for idx, video in enumerate(traverse_obj(data, (
|
|
|
|
for idx, video in enumerate(traverse_obj(data, (
|
|
|
|
'performanceWorks', lambda _, v: v['id'] and url_or_none(v['stream']['url']))), 1):
|
|
|
|
'performanceWorks', lambda _, v: v['id'] and url_or_none(v['stream']['url']))), 1):
|
|
|
|
formats, subtitles = self._extract_m3u8_formats_and_subtitles(
|
|
|
|
formats, subtitles = self._extract_m3u8_formats_and_subtitles(
|
|
|
|
video['stream']['url'], video['id'], 'mp4', m3u8_id='hls', headers=m3u8_headers)
|
|
|
|
video['stream']['url'], video['id'], 'mp4', m3u8_id='hls', query={'token': self._TOKEN})
|
|
|
|
entries.append({
|
|
|
|
entries.append({
|
|
|
|
'id': video['id'],
|
|
|
|
'id': video['id'],
|
|
|
|
'formats': formats,
|
|
|
|
'formats': formats,
|
|
|
|
'subtitles': subtitles,
|
|
|
|
'subtitles': subtitles,
|
|
|
|
'http_headers': m3u8_headers,
|
|
|
|
|
|
|
|
'album': metadata.get('title'),
|
|
|
|
'album': metadata.get('title'),
|
|
|
|
'album_artist': metadata.get('artist'),
|
|
|
|
'album_artist': metadata.get('artist'),
|
|
|
|
'track_number': idx,
|
|
|
|
'track_number': idx,
|
|
|
|