]>
jfr.im git - yt-dlp.git/blob - yt_dlp/extractor/vimm.py
2 from .common
import InfoExtractor
5 class VimmIE(InfoExtractor
):
6 IE_NAME
= 'Vimm:stream'
7 _VALID_URL
= r
'https?://(?:www\.)?vimm\.tv/(?:c/)?(?P<id>[0-9a-z-]+)$'
9 'url': 'https://www.vimm.tv/c/calimeatwagon',
11 'id': 'calimeatwagon',
13 'title': 're:^calimeatwagon [0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}$',
14 'live_status': 'is_live',
18 'url': 'https://www.vimm.tv/octaafradio',
19 'only_matching': True,
22 def _real_extract(self
, url
):
23 channel_id
= self
._match
_id
(url
)
25 formats
, subs
= self
._extract
_m
3u8_formats
_and
_subtitles
(
26 f
'https://www.vimm.tv/hls/{channel_id}.m3u8', channel_id
, 'mp4', m3u8_id
='hls', live
=True)
27 self
._sort
_formats
(formats
)
38 class VimmRecordingIE(InfoExtractor
):
39 IE_NAME
= 'Vimm:recording'
40 _VALID_URL
= r
'https?://(?:www\.)?vimm\.tv/c/(?P<channel_id>[0-9a-z-]+)\?v=(?P<video_id>[0-9A-Za-z]+)'
42 'url': 'https://www.vimm.tv/c/kaldewei?v=2JZsrPTFxsSz',
43 'md5': '15122ee95baa32a548e4a3e120b598f1',
47 'title': 'VIMM - [DE/GER] Kaldewei Live - In Farbe und Bunt',
48 'uploader_id': 'kaldewei',
52 def _real_extract(self
, url
):
53 channel_id
, video_id
= self
._match
_valid
_url
(url
).groups()
55 webpage
= self
._download
_webpage
(url
, video_id
)
56 title
= self
._og
_search
_title
(webpage
)
58 formats
, subs
= self
._extract
_m
3u8_formats
_and
_subtitles
(
59 f
'https://d211qfrkztakg3.cloudfront.net/{channel_id}/{video_id}/index.m3u8', video_id
, 'mp4', m3u8_id
='hls', live
=False)
60 self
._sort
_formats
(formats
)
66 'uploader_id': channel_id
,