mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-10-22 17:11:27 +02:00
Compare commits
4 Commits
bfec47f4a2
...
0b93d8a4b9
Author | SHA1 | Date | |
---|---|---|---|
|
0b93d8a4b9 | ||
|
4eac04a761 | ||
|
1de886665c | ||
|
4f2ea35a9f |
|
@ -146,19 +146,39 @@ class CHZZKVideoIE(InfoExtractor):
|
||||||
video_meta = self._download_json(
|
video_meta = self._download_json(
|
||||||
f'https://api.chzzk.naver.com/service/v3/videos/{video_id}', video_id,
|
f'https://api.chzzk.naver.com/service/v3/videos/{video_id}', video_id,
|
||||||
note='Downloading video info', errnote='Unable to download video info')['content']
|
note='Downloading video info', errnote='Unable to download video info')['content']
|
||||||
formats, subtitles = self._extract_mpd_formats_and_subtitles(
|
video_status = video_meta.get('vodStatus')
|
||||||
f'https://apis.naver.com/neonplayer/vodplay/v1/playback/{video_meta["videoId"]}', video_id,
|
video_live_date = video_meta.get('liveOpenDate')
|
||||||
query={
|
if video_live_date:
|
||||||
'key': video_meta['inKey'],
|
live_status = 'was_live'
|
||||||
'env': 'real',
|
else:
|
||||||
'lc': 'en_US',
|
live_status = 'not_live'
|
||||||
'cpl': 'en_US',
|
|
||||||
}, note='Downloading video playback', errnote='Unable to download video playback')
|
|
||||||
|
|
||||||
|
if video_status == 'UPLOAD':
|
||||||
|
playback = self._parse_json(video_meta.get('liveRewindPlaybackJson'), video_id)
|
||||||
|
formats, subtitles = self._extract_m3u8_formats_and_subtitles(
|
||||||
|
traverse_obj(playback, ('media', 0, 'path')), video_id,
|
||||||
|
note='Downloading video playback', errnote='Unable to download video playback')
|
||||||
|
elif video_status == 'ABR_HLS':
|
||||||
|
formats, subtitles = self._extract_mpd_formats_and_subtitles(
|
||||||
|
f'https://apis.naver.com/neonplayer/vodplay/v1/playback/{video_meta.get("videoId")}', video_id,
|
||||||
|
query={
|
||||||
|
'key': video_meta['inKey'],
|
||||||
|
'env': 'real',
|
||||||
|
'lc': 'en_US',
|
||||||
|
'cpl': 'en_US',
|
||||||
|
}, note='Downloading video playback', errnote='Unable to download video playback')
|
||||||
|
else:
|
||||||
|
self.raise_no_formats(f'Unknown video status detected: "{video_status}"',
|
||||||
|
expected=True, video_id=video_id)
|
||||||
|
formats = []
|
||||||
|
subtitles = {}
|
||||||
|
if live_status == 'was_live':
|
||||||
|
live_status = 'post_live'
|
||||||
return {
|
return {
|
||||||
'id': video_id,
|
'id': video_id,
|
||||||
'formats': formats,
|
'formats': formats,
|
||||||
'subtitles': subtitles,
|
'subtitles': subtitles,
|
||||||
|
'live_status': live_status,
|
||||||
**traverse_obj(video_meta, {
|
**traverse_obj(video_meta, {
|
||||||
'title': ('videoTitle', {str}),
|
'title': ('videoTitle', {str}),
|
||||||
'thumbnail': ('thumbnailImageUrl', {url_or_none}),
|
'thumbnail': ('thumbnailImageUrl', {url_or_none}),
|
||||||
|
|
Loading…
Reference in New Issue
Block a user