X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fhitbox.py;h=d7cd8bb7e6928c74786f20f3957eff0f94eb7a5c;hb=bc94bd510bfb8a98f7456912f930c69c21bd6e15;hp=d606429ca88a51138f3108594e7933f74638de34;hpb=af14ded75e10653b4713c23f8c428c6cd88610ad;p=youtube-dl.git diff --git a/youtube_dl/extractor/hitbox.py b/youtube_dl/extractor/hitbox.py index d606429ca..d7cd8bb7e 100644 --- a/youtube_dl/extractor/hitbox.py +++ b/youtube_dl/extractor/hitbox.py @@ -96,13 +96,33 @@ class HitboxIE(InfoExtractor): 'https://www.hitbox.tv/api/player/config/video/%s' % video_id, video_id) - clip = player_config.get('clip') - video_url = clip.get('url') - res = clip.get('bitrates', [])[0].get('label') + formats = [] + for video in player_config['clip']['bitrates']: + label = video.get('label') + if label == 'Auto': + continue + video_url = video.get('url') + if not video_url: + continue + bitrate = int_or_none(video.get('bitrate')) + if determine_ext(video_url) == 'm3u8': + if not video_url.startswith('http'): + continue + formats.append({ + 'url': video_url, + 'ext': 'mp4', + 'tbr': bitrate, + 'format_note': label, + 'protocol': 'm3u8_native', + }) + else: + formats.append({ + 'url': video_url, + 'tbr': bitrate, + 'format_note': label, + }) - metadata['resolution'] = res - metadata['url'] = video_url - metadata['protocol'] = 'm3u8' + metadata['formats'] = formats return metadata