mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-30 22:25:19 +00:00 
			
		
		
		
	[yahoo] Use centralized sorting, and add tbr field
This commit is contained in:
		| @@ -1018,6 +1018,8 @@ class YoutubeDL(object): | ||||
|                 res += u'(unsupported) ' | ||||
|             if fdict.get('format_note') is not None: | ||||
|                 res += fdict['format_note'] + u' ' | ||||
|             if fdict.get('tbr') is not None: | ||||
|                 res += u'%4dk ' % fdict['tbr'] | ||||
|             if (fdict.get('vcodec') is not None and | ||||
|                     fdict.get('vcodec') != 'none'): | ||||
|                 res += u'%-5s@' % fdict['vcodec'] | ||||
|   | ||||
| @@ -57,6 +57,7 @@ class InfoExtractor(object): | ||||
|                     * width      Width of the video, if known | ||||
|                     * height     Height of the video, if known | ||||
|                     * resolution Textual description of width and height | ||||
|                     * tbr        Average bitrate of audio and video in KBit/s | ||||
|                     * abr        Average audio bitrate in KBit/s | ||||
|                     * acodec     Name of the audio codec in use | ||||
|                     * vbr        Average video bitrate in KBit/s | ||||
|   | ||||
| @@ -6,8 +6,8 @@ from .common import InfoExtractor, SearchInfoExtractor | ||||
| from ..utils import ( | ||||
|     compat_urllib_parse, | ||||
|     compat_urlparse, | ||||
|     determine_ext, | ||||
|     clean_html, | ||||
|     int_or_none, | ||||
| ) | ||||
|  | ||||
|  | ||||
| @@ -68,9 +68,9 @@ class YahooIE(InfoExtractor): | ||||
|         formats = [] | ||||
|         for s in info['streams']: | ||||
|             format_info = { | ||||
|                 'width': s.get('width'), | ||||
|                 'height': s.get('height'), | ||||
|                 'bitrate': s.get('bitrate'), | ||||
|                 'width': int_or_none(s.get('width')), | ||||
|                 'height': int_or_none(s.get('height')), | ||||
|                 'tbr': int_or_none(s.get('bitrate')), | ||||
|             } | ||||
|  | ||||
|             host = s['host'] | ||||
| @@ -84,10 +84,10 @@ class YahooIE(InfoExtractor): | ||||
|             else: | ||||
|                 format_url = compat_urlparse.urljoin(host, path) | ||||
|                 format_info['url'] = format_url | ||||
|                 format_info['ext'] = determine_ext(format_url) | ||||
|                  | ||||
|             formats.append(format_info) | ||||
|         formats = sorted(formats, key=lambda f:(f['height'], f['width'])) | ||||
|  | ||||
|         self._sort_formats(formats) | ||||
|  | ||||
|         return { | ||||
|             'id': video_id, | ||||
|   | ||||
| @@ -1098,3 +1098,7 @@ def url_basename(url): | ||||
| class HEADRequest(compat_urllib_request.Request): | ||||
|     def get_method(self): | ||||
|         return "HEAD" | ||||
|  | ||||
|  | ||||
| def int_or_none(v): | ||||
|     return v if v is None else int(v) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Philipp Hagemeister
					Philipp Hagemeister