mirror of
				https://gitlab.com/ytdl-org/youtube-dl.git
				synced 2025-11-03 23:27:06 -05:00 
			
		
		
		
	[YoutubeDL] Ensure ext exists for automatic captions
This commit is contained in:
		@@ -1482,23 +1482,28 @@ class YoutubeDL(object):
 | 
			
		||||
            if info_dict.get('%s_number' % field) is not None and not info_dict.get(field):
 | 
			
		||||
                info_dict[field] = '%s %d' % (field.capitalize(), info_dict['%s_number' % field])
 | 
			
		||||
 | 
			
		||||
        for cc_kind in ('subtitles', 'automatic_captions'):
 | 
			
		||||
            cc = info_dict.get(cc_kind)
 | 
			
		||||
            if cc:
 | 
			
		||||
                for _, subtitle in cc.items():
 | 
			
		||||
                    for subtitle_format in subtitle:
 | 
			
		||||
                        if subtitle_format.get('url'):
 | 
			
		||||
                            subtitle_format['url'] = sanitize_url(subtitle_format['url'])
 | 
			
		||||
                        if subtitle_format.get('ext') is None:
 | 
			
		||||
                            subtitle_format['ext'] = determine_ext(subtitle_format['url']).lower()
 | 
			
		||||
 | 
			
		||||
        automatic_captions = info_dict.get('automatic_captions')
 | 
			
		||||
        subtitles = info_dict.get('subtitles')
 | 
			
		||||
        if subtitles:
 | 
			
		||||
            for _, subtitle in subtitles.items():
 | 
			
		||||
                for subtitle_format in subtitle:
 | 
			
		||||
                    if subtitle_format.get('url'):
 | 
			
		||||
                        subtitle_format['url'] = sanitize_url(subtitle_format['url'])
 | 
			
		||||
                    if subtitle_format.get('ext') is None:
 | 
			
		||||
                        subtitle_format['ext'] = determine_ext(subtitle_format['url']).lower()
 | 
			
		||||
 | 
			
		||||
        if self.params.get('listsubtitles', False):
 | 
			
		||||
            if 'automatic_captions' in info_dict:
 | 
			
		||||
                self.list_subtitles(info_dict['id'], info_dict.get('automatic_captions'), 'automatic captions')
 | 
			
		||||
                self.list_subtitles(
 | 
			
		||||
                    info_dict['id'], automatic_captions, 'automatic captions')
 | 
			
		||||
            self.list_subtitles(info_dict['id'], subtitles, 'subtitles')
 | 
			
		||||
            return
 | 
			
		||||
 | 
			
		||||
        info_dict['requested_subtitles'] = self.process_subtitles(
 | 
			
		||||
            info_dict['id'], subtitles,
 | 
			
		||||
            info_dict.get('automatic_captions'))
 | 
			
		||||
            info_dict['id'], subtitles, automatic_captions)
 | 
			
		||||
 | 
			
		||||
        # We now pick which formats have to be downloaded
 | 
			
		||||
        if info_dict.get('formats') is None:
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user