aboutsummaryrefslogtreecommitdiffstats
path: root/yt_dlp/utils.py
diff options
context:
space:
mode:
authorFelix S <felix.von.s@posteo.de>2021-12-31 20:06:45 +0000
committerGitHub <noreply@github.com>2022-01-01 01:36:45 +0530
commit4afa3ec4b6b693672d297ad615f3137763aaac81 (patch)
tree96f10801e52d7fe78ef3d53a0b1bdbef338fd8d6 /yt_dlp/utils.py
parent11aa91a12f95821500fa064402a3e2c046b072fb (diff)
downloadhypervideo-pre-4afa3ec4b6b693672d297ad615f3137763aaac81.tar.lz
hypervideo-pre-4afa3ec4b6b693672d297ad615f3137763aaac81.tar.xz
hypervideo-pre-4afa3ec4b6b693672d297ad615f3137763aaac81.zip
[extractor] Detect more subtitle codecs in MPD manifests (#2174)
Authored by: fstirlitz
Diffstat (limited to 'yt_dlp/utils.py')
-rw-r--r--yt_dlp/utils.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/yt_dlp/utils.py b/yt_dlp/utils.py
index c22aeb464..56b31bc41 100644
--- a/yt_dlp/utils.py
+++ b/yt_dlp/utils.py
@@ -3196,7 +3196,7 @@ def parse_codecs(codecs_str):
return {}
split_codecs = list(filter(None, map(
str.strip, codecs_str.strip().strip(',').split(','))))
- vcodec, acodec, hdr = None, None, None
+ vcodec, acodec, tcodec, hdr = None, None, None, None
for full_codec in split_codecs:
parts = full_codec.split('.')
codec = parts[0].replace('0', '')
@@ -3213,13 +3213,17 @@ def parse_codecs(codecs_str):
elif codec in ('flac', 'mp4a', 'opus', 'vorbis', 'mp3', 'aac', 'ac-3', 'ec-3', 'eac3', 'dtsc', 'dtse', 'dtsh', 'dtsl'):
if not acodec:
acodec = full_codec
+ elif codec in ('stpp', 'wvtt',):
+ if not tcodec:
+ tcodec = full_codec
else:
write_string('WARNING: Unknown codec %s\n' % full_codec, sys.stderr)
- if vcodec or acodec:
+ if vcodec or acodec or tcodec:
return {
'vcodec': vcodec or 'none',
'acodec': acodec or 'none',
'dynamic_range': hdr,
+ **({'tcodec': tcodec} if tcodec is not None else {}),
}
elif len(split_codecs) == 2:
return {