diff options
author | Jesús <heckyel@hyperbola.info> | 2021-10-18 12:52:41 -0500 |
---|---|---|
committer | Jesús <heckyel@hyperbola.info> | 2021-10-18 12:52:41 -0500 |
commit | 59687ede1efedf6e05b2cb0f943f3f6050bab411 (patch) | |
tree | 0815696227b22322bd4bafc07b23bbd6790c10c9 /yt_dlp/utils.py | |
parent | 7872079c20088eb804b596becfe77e441da6cbf6 (diff) | |
parent | 176f1866cb437dd59cf8f600638cfd7ba2a8525e (diff) | |
download | hypervideo-pre-59687ede1efedf6e05b2cb0f943f3f6050bab411.tar.lz hypervideo-pre-59687ede1efedf6e05b2cb0f943f3f6050bab411.tar.xz hypervideo-pre-59687ede1efedf6e05b2cb0f943f3f6050bab411.zip |
update from upstream
Diffstat (limited to 'yt_dlp/utils.py')
-rw-r--r-- | yt_dlp/utils.py | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/yt_dlp/utils.py b/yt_dlp/utils.py index 1c213aa44..c42817e75 100644 --- a/yt_dlp/utils.py +++ b/yt_dlp/utils.py @@ -4618,12 +4618,21 @@ def parse_codecs(codecs_str): return {} split_codecs = list(filter(None, map( str.strip, codecs_str.strip().strip(',').split(',')))) - vcodec, acodec = None, None + vcodec, acodec, hdr = None, None, None for full_codec in split_codecs: codec = full_codec.split('.')[0] if codec in ('avc1', 'avc2', 'avc3', 'avc4', 'vp9', 'vp8', 'hev1', 'hev2', 'h263', 'h264', 'mp4v', 'hvc1', 'av01', 'theora', 'dvh1', 'dvhe'): if not vcodec: vcodec = full_codec + if codec in ('dvh1', 'dvhe'): + hdr = 'DV' + elif codec == 'vp9' and vcodec.startswith('vp9.2'): + hdr = 'HDR10' + elif codec == 'av01': + parts = full_codec.split('.') + if len(parts) > 3 and parts[3] == '10': + hdr = 'HDR10' + vcodec = '.'.join(parts[:4]) elif codec in ('mp4a', 'opus', 'vorbis', 'mp3', 'aac', 'ac-3', 'ec-3', 'eac3', 'dtsc', 'dtse', 'dtsh', 'dtsl'): if not acodec: acodec = full_codec @@ -4639,6 +4648,7 @@ def parse_codecs(codecs_str): return { 'vcodec': vcodec or 'none', 'acodec': acodec or 'none', + 'dynamic_range': hdr, } return {} |