mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-30 22:25:19 +00:00 
			
		
		
		
	use mimetype2ext to determine manifest ext in multiple extractors
This commit is contained in:
		| @@ -5,6 +5,8 @@ from .common import InfoExtractor | ||||
| from ..utils import ( | ||||
|     int_or_none, | ||||
|     parse_iso8601, | ||||
|     mimetype2ext, | ||||
|     determine_ext, | ||||
| ) | ||||
|  | ||||
|  | ||||
| @@ -50,21 +52,25 @@ class AMPIE(InfoExtractor): | ||||
|         if isinstance(media_content, dict): | ||||
|             media_content = [media_content] | ||||
|         for media_data in media_content: | ||||
|             media = media_data['@attributes'] | ||||
|             media_type = media['type'] | ||||
|             if media_type in ('video/f4m', 'application/f4m+xml'): | ||||
|             media = media_data.get('@attributes', {}) | ||||
|             media_url = media.get('url') | ||||
|             if not media_url: | ||||
|                 continue | ||||
|             ext = mimetype2ext(media.get('type')) or determne_ext(media_url) | ||||
|             if ext == 'f4m': | ||||
|                 formats.extend(self._extract_f4m_formats( | ||||
|                     media['url'] + '?hdcore=3.4.0&plugin=aasp-3.4.0.132.124', | ||||
|                     media_url + '?hdcore=3.4.0&plugin=aasp-3.4.0.132.124', | ||||
|                     video_id, f4m_id='hds', fatal=False)) | ||||
|             elif media_type == 'application/x-mpegURL': | ||||
|             elif ext == 'm3u8': | ||||
|                 formats.extend(self._extract_m3u8_formats( | ||||
|                     media['url'], video_id, 'mp4', m3u8_id='hls', fatal=False)) | ||||
|                     media_url, video_id, 'mp4', m3u8_id='hls', fatal=False)) | ||||
|             else: | ||||
|                 formats.append({ | ||||
|                     'format_id': media_data.get('media-category', {}).get('@attributes', {}).get('label'), | ||||
|                     'url': media['url'], | ||||
|                     'tbr': int_or_none(media.get('bitrate')), | ||||
|                     'filesize': int_or_none(media.get('fileSize')), | ||||
|                     'ext': ext, | ||||
|                 }) | ||||
|  | ||||
|         self._sort_formats(formats) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Remita Amine
					Remita Amine