[cleanup] Remove RTSP and MMS support (#17030)

Authored by: seproDev
This commit is contained in:
sepro
2026-07-04 21:59:16 +00:00
committed by GitHub
parent 8c1f07d813
commit bed3d58c5c
13 changed files with 29 additions and 125 deletions
-1
View File
@@ -359,7 +359,6 @@ from .commonmistakes import (
UnicodeBOMIE,
)
from .commonprotocols import (
MmsIE,
RtmpIE,
ViewSourceIE,
)
+9 -21
View File
@@ -3542,7 +3542,7 @@ class InfoExtractor:
query = urllib.parse.urlparse(url).query
url = re.sub(r'/(?:manifest|playlist|jwplayer)\.(?:m3u8|f4m|mpd|smil)', '', url)
mobj = re.search(
r'(?:(?:http|rtmp|rtsp)(?P<s>s)?:)?(?P<url>//[^?]+)', url)
r'(?:(?:http|rtmp)(?P<s>s)?:)?(?P<url>//[^?]+)', url)
url_base = mobj.group('url')
http_base_url = '{}{}:{}'.format('http', mobj.group('s') or '', url_base)
formats = []
@@ -3567,28 +3567,16 @@ class InfoExtractor:
video_id, mpd_id='dash', fatal=False))
if re.search(r'(?:/smil:|\.smil)', url_base):
if 'smil' not in skip_protocols:
rtmp_formats = self._extract_smil_formats(
formats.extend(self._extract_smil_formats(
manifest_url('jwplayer.smil'),
video_id, fatal=False)
for rtmp_format in rtmp_formats:
rtsp_format = rtmp_format.copy()
rtsp_format['url'] = '{}/{}'.format(rtmp_format['url'], rtmp_format['play_path'])
del rtsp_format['play_path']
del rtsp_format['ext']
rtsp_format.update({
'url': rtsp_format['url'].replace('rtmp://', 'rtsp://'),
'format_id': rtmp_format['format_id'].replace('rtmp', 'rtsp'),
'protocol': 'rtsp',
})
formats.extend([rtmp_format, rtsp_format])
video_id, fatal=False))
else:
for protocol in ('rtmp', 'rtsp'):
if protocol not in skip_protocols:
formats.append({
'url': f'{protocol}:{url_base}',
'format_id': protocol,
'protocol': protocol,
})
if 'rtmp' not in skip_protocols:
formats.append({
'url': f'rtmp:{url_base}',
'format_id': 'rtmp',
'protocol': 'rtmp',
})
return formats
def _find_jwplayer_data(self, webpage, video_id=None, transform_source=js_to_json):
-28
View File
@@ -29,34 +29,6 @@ class RtmpIE(InfoExtractor):
}
class MmsIE(InfoExtractor):
IE_DESC = False # Do not list
_VALID_URL = r'(?i)mms://.+'
_TEST = {
# Direct MMS link
'url': 'mms://kentro.kaist.ac.kr/200907/MilesReid(0709).wmv',
'info_dict': {
'id': 'MilesReid(0709)',
'ext': 'wmv',
'title': 'MilesReid(0709)',
},
'params': {
'skip_download': True, # rtsp downloads, requiring mplayer or mpv
},
}
def _real_extract(self, url):
video_id = self._generic_id(url)
title = self._generic_title(url)
return {
'id': video_id,
'title': title,
'url': url,
}
class ViewSourceIE(InfoExtractor):
IE_DESC = False
_VALID_URL = r'view-source:(?P<url>.+)'
+1 -1
View File
@@ -138,7 +138,7 @@ class FilmOnChannelIE(InfoExtractor):
continue
if not is_live:
formats.extend(self._extract_wowza_formats(
stream_url, channel_id, skip_protocols=['dash', 'rtmp', 'rtsp']))
stream_url, channel_id, skip_protocols=['dash', 'rtmp']))
continue
quality = stream.get('quality')
formats.append({
+1 -4
View File
@@ -37,10 +37,7 @@ class MangomoloBaseIE(InfoExtractor):
m3u8_entry_protocol = 'm3u8' if self._IS_LIVE else 'm3u8_native'
format_url = self._html_search_regex(
[
r'(?:file|src)\s*:\s*"(https?://[^"]+?/playlist\.m3u8)',
r'<a[^>]+href="(rtsp://[^"]+)"',
], webpage, 'format url')
r'(?:file|src)\s*:\s*"(https?://[^"]+?/playlist\.m3u8)', webpage, 'format url')
formats = self._extract_wowza_formats(
format_url, page_id, m3u8_entry_protocol, ['smil'])