24 lines
		
	
	
		
			544 B
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			24 lines
		
	
	
		
			544 B
		
	
	
	
		
			Python
		
	
	
	
	
	
|  | from .common import FileDownloader | ||
|  | from .hls import HlsFD | ||
|  | from .http import HttpFD | ||
|  | from .mplayer import MplayerFD | ||
|  | from .rtmp import RtmpFD | ||
|  | 
 | ||
|  | from ..utils import ( | ||
|  |     determine_ext, | ||
|  | ) | ||
|  | 
 | ||
|  | def get_suitable_downloader(info_dict): | ||
|  |     """Get the downloader class that can handle the info dict.""" | ||
|  |     url = info_dict['url'] | ||
|  | 
 | ||
|  |     if url.startswith('rtmp'): | ||
|  |         return RtmpFD | ||
|  |     if determine_ext(url) == u'm3u8': | ||
|  |         return HlsFD | ||
|  |     if url.startswith('mms') or url.startswith('rtsp'): | ||
|  |         return MplayerFD | ||
|  |     else: | ||
|  |         return HttpFD | ||
|  | 
 |