[youtube] Pick up codecs info from DASH manifest when not set explicitly
authorSergey M․ <dstftw@gmail.com>
Fri, 26 Jun 2015 18:41:26 +0000 (00:41 +0600)
committerSergey M․ <dstftw@gmail.com>
Fri, 26 Jun 2015 18:41:26 +0000 (00:41 +0600)
youtube_dl/extractor/youtube.py

index a3da56c1413494ffd73d523a042959af16956ff0..c9d8e51256f4db9bd618d8a4d3e74c93a62e735b 100644 (file)
@@ -824,6 +824,12 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
                     except StopIteration:
                         full_info = self._formats.get(format_id, {}).copy()
                         full_info.update(f)
+                        codecs = r.attrib.get('codecs')
+                        if codecs:
+                            if full_info.get('acodec') == 'none' and 'vcodec' not in full_info:
+                                full_info['vcodec'] = codecs
+                            elif full_info.get('vcodec') == 'none' and 'acodec' not in full_info:
+                                full_info['acodec'] = codecs
                         formats.append(full_info)
                     else:
                         existing_format.update(f)