[vimeo] Sort http formats higher

Closes #1821
This commit is contained in:
pukkandan 2021-11-28 16:24:02 +05:30
parent d298d33fe6
commit bc104778d6
No known key found for this signature in database
GPG key ID: 0F00D95A001F4698

View file

@ -119,10 +119,9 @@ def _set_vimeo_cookie(self, name, value):
self._set_cookie('vimeo.com', name, value) self._set_cookie('vimeo.com', name, value)
def _vimeo_sort_formats(self, formats): def _vimeo_sort_formats(self, formats):
# Bitrates are completely broken. Single m3u8 may contain entries in kbps and bps # Note: Bitrates are completely broken. Single m3u8 may contain entries in kbps and bps
# at the same time without actual units specified. This lead to wrong sorting. # at the same time without actual units specified.
# But since yt-dlp prefers 'res,fps' anyway, 'field_preference' is not needed self._sort_formats(formats, ('quality', 'res', 'fps', 'hdr:12', 'source'))
self._sort_formats(formats)
def _parse_config(self, config, video_id): def _parse_config(self, config, video_id):
video_data = config['video'] video_data = config['video']
@ -140,6 +139,7 @@ def _parse_config(self, config, video_id):
formats.append({ formats.append({
'url': video_url, 'url': video_url,
'format_id': 'http-%s' % f.get('quality'), 'format_id': 'http-%s' % f.get('quality'),
'source_preference': 10,
'width': int_or_none(f.get('width')), 'width': int_or_none(f.get('width')),
'height': int_or_none(f.get('height')), 'height': int_or_none(f.get('height')),
'fps': int_or_none(f.get('fps')), 'fps': int_or_none(f.get('fps')),