]>
Raphaƫl G. Git Repositories - youtubedl/blob - youtube_dl/downloader/__init__.py
dccc59212d3028bb9a96f0eb9ffff4acb0be681e
   1 from __future__ 
import unicode_literals
 
   3 from .common 
import FileDownloader
 
   4 from .external 
import get_external_downloader
 
   7 from .hls 
import NativeHlsFD
 
   8 from .http 
import HttpFD
 
   9 from .rtsp 
import RtspFD
 
  10 from .rtmp 
import RtmpFD
 
  11 from .dash 
import DashSegmentsFD
 
  19     'm3u8_native': NativeHlsFD
, 
  24     'http_dash_segments': DashSegmentsFD
, 
  28 def get_suitable_downloader(info_dict
, params
={}): 
  29     """Get the downloader class that can handle the info dict.""" 
  30     protocol 
= determine_protocol(info_dict
) 
  31     info_dict
['protocol'] = protocol
 
  33     external_downloader 
= params
.get('external_downloader') 
  34     if external_downloader 
is not None: 
  35         ed 
= get_external_downloader(external_downloader
) 
  36         if ed
.supports(info_dict
): 
  39     if protocol 
== 'm3u8' and params
.get('hls_prefer_native'): 
  42     return PROTOCOL_MAP
.get(protocol
, HttpFD
) 
  46     'get_suitable_downloader',