mirror of
https://github.com/ytdl-org/youtube-dl
synced 2024-11-19 14:39:30 +01:00
Merge pull request #8766 from yan12125/dash-detect-ext
Detect file extensions of DASH formats from their codecs
This commit is contained in:
commit
64f08d4ff2
@ -29,6 +29,7 @@ from ..utils import (
|
|||||||
age_restricted,
|
age_restricted,
|
||||||
bug_reports_message,
|
bug_reports_message,
|
||||||
clean_html,
|
clean_html,
|
||||||
|
codec2ext,
|
||||||
compiled_regex_type,
|
compiled_regex_type,
|
||||||
determine_ext,
|
determine_ext,
|
||||||
error_to_compat_str,
|
error_to_compat_str,
|
||||||
@ -1471,6 +1472,7 @@ class InfoExtractor(object):
|
|||||||
f = {
|
f = {
|
||||||
'format_id': '%s-%s' % (mpd_id, representation_id) if mpd_id else representation_id,
|
'format_id': '%s-%s' % (mpd_id, representation_id) if mpd_id else representation_id,
|
||||||
'url': base_url,
|
'url': base_url,
|
||||||
|
'ext': codec2ext(representation_attrib.get('codecs')),
|
||||||
'width': int_or_none(representation_attrib.get('width')),
|
'width': int_or_none(representation_attrib.get('width')),
|
||||||
'height': int_or_none(representation_attrib.get('height')),
|
'height': int_or_none(representation_attrib.get('height')),
|
||||||
'tbr': int_or_none(representation_attrib.get('bandwidth'), 1000),
|
'tbr': int_or_none(representation_attrib.get('bandwidth'), 1000),
|
||||||
|
@ -1893,6 +1893,22 @@ def mimetype2ext(mt):
|
|||||||
}.get(res, res)
|
}.get(res, res)
|
||||||
|
|
||||||
|
|
||||||
|
def codec2ext(codec):
|
||||||
|
codec_type = codec.split('.')[0]
|
||||||
|
|
||||||
|
# Leave the return value None for unknown values as codec_type
|
||||||
|
# is not a good fallback for file extensions
|
||||||
|
return {
|
||||||
|
'avc1': 'mp4',
|
||||||
|
'avc2': 'mp4',
|
||||||
|
'avc3': 'mp4',
|
||||||
|
'avc4': 'mp4',
|
||||||
|
'mp4a': 'm4a',
|
||||||
|
'vorbis': 'webm',
|
||||||
|
'vp9': 'webm',
|
||||||
|
}.get(codec_type)
|
||||||
|
|
||||||
|
|
||||||
def urlhandle_detect_ext(url_handle):
|
def urlhandle_detect_ext(url_handle):
|
||||||
try:
|
try:
|
||||||
url_handle.headers
|
url_handle.headers
|
||||||
|
Loading…
Reference in New Issue
Block a user