[cbs] extract smpte and vtt subtitles
This commit is contained in:
		
							parent
							
								
									972d2dd0bc
								
							
						
					
					
						commit
						180a9dff1f
					
				
					 1 changed files with 11 additions and 7 deletions
				
			
		| 
						 | 
				
			
			@ -13,13 +13,17 @@ from ..utils import (
 | 
			
		|||
 | 
			
		||||
class CBSBaseIE(ThePlatformFeedIE):
 | 
			
		||||
    def _parse_smil_subtitles(self, smil, namespace=None, subtitles_lang='en'):
 | 
			
		||||
        closed_caption_e = find_xpath_attr(smil, self._xpath_ns('.//param', namespace), 'name', 'ClosedCaptionURL')
 | 
			
		||||
        return {
 | 
			
		||||
            'en': [{
 | 
			
		||||
                'ext': 'ttml',
 | 
			
		||||
                'url': closed_caption_e.attrib['value'],
 | 
			
		||||
            }]
 | 
			
		||||
        } if closed_caption_e is not None and closed_caption_e.attrib.get('value') else []
 | 
			
		||||
        subtitles = {}
 | 
			
		||||
        for k, ext in [('sMPTE-TTCCURL', 'tt'), ('ClosedCaptionURL', 'ttml'), ('webVTTCaptionURL', 'vtt')]:
 | 
			
		||||
            cc_e = find_xpath_attr(smil, self._xpath_ns('.//param', namespace), 'name', k)
 | 
			
		||||
            if cc_e is not None:
 | 
			
		||||
                cc_url = cc_e.get('value')
 | 
			
		||||
                if cc_url:
 | 
			
		||||
                    subtitles.setdefault(subtitles_lang, []).append({
 | 
			
		||||
                        'ext': ext,
 | 
			
		||||
                        'url': cc_url,
 | 
			
		||||
                    })
 | 
			
		||||
        return subtitles
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class CBSIE(CBSBaseIE):
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue