Add automatic generation of format note based on bitrate and codecs

pull/8/head
Philipp Hagemeister 11 years ago
parent aa13b2dffd
commit 91c7271aab

@ -781,12 +781,28 @@ class YoutubeDL(object):
return res return res
def list_formats(self, info_dict): def list_formats(self, info_dict):
def format_note(fdict):
if fdict.get('format_note') is not None:
return fdict['format_note']
res = u''
if fdict.get('vcodec') is not None:
res += fdict['vcodec']
if fdict.get('vbr') is not None:
res += u'@%4dk' % fdict['vbr']
if fdict.get('acodec') is not None:
if res:
res += u', '
res += fdict['acodec']
if fdict.get('abr') is not None:
res += u'@%3dk' % fdict['abr']
return res
def line(format): def line(format):
return (u'%-20s%-10s%-12s%s' % ( return (u'%-20s%-10s%-12s%s' % (
format['format_id'], format['format_id'],
format['ext'], format['ext'],
self.format_resolution(format), self.format_resolution(format),
format.get('format_note', ''), format_note(format),
) )
) )

@ -71,6 +71,10 @@ class InfoExtractor(object):
("3D" or "DASH video") ("3D" or "DASH video")
* width Width of the video, if known * width Width of the video, if known
* height Height of the video, if known * height Height of the video, if known
* abr Average audio bitrate in KBit/s
* acodec Name of the audio codec in use
* vbr Average video bitrate in KBit/s
* vcodec Name of the video codec in use
webpage_url: The url to the video webpage, if given to youtube-dl it webpage_url: The url to the video webpage, if given to youtube-dl it
should allow to get the same result again. (It will be set should allow to get the same result again. (It will be set
by YoutubeDL if it's missing) by YoutubeDL if it's missing)

@ -78,12 +78,13 @@ class VevoIE(InfoExtractor):
continue continue
format_url = self._SMIL_BASE_URL + m.group('path') format_url = self._SMIL_BASE_URL + m.group('path')
format_note = ('%(vcodec)s@%(vbr)4sk, %(acodec)s@%(abr)3sk' %
m.groupdict())
formats.append({ formats.append({
'url': format_url, 'url': format_url,
'format_id': u'SMIL_' + m.group('cbr'), 'format_id': u'SMIL_' + m.group('cbr'),
'format_note': format_note, 'vcodec': m.group('vcodec'),
'acodec': m.group('acodec'),
'vbr': int(m.group('vbr')),
'abr': int(m.group('abr')),
'ext': m.group('ext'), 'ext': m.group('ext'),
'width': int(m.group('width')), 'width': int(m.group('width')),
'height': int(m.group('height')), 'height': int(m.group('height')),

Loading…
Cancel
Save