mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 14:45:14 +00:00 
			
		
		
		
	Add --hls-prefer-ffmpeg
This commit is contained in:
		| @@ -260,7 +260,9 @@ class YoutubeDL(object): | |||||||
|     The following options determine which downloader is picked: |     The following options determine which downloader is picked: | ||||||
|     external_downloader: Executable of the external downloader to call. |     external_downloader: Executable of the external downloader to call. | ||||||
|                        None or unset for standard (built-in) downloader. |                        None or unset for standard (built-in) downloader. | ||||||
|     hls_prefer_native: Use the native HLS downloader instead of ffmpeg/avconv. |     hls_prefer_native: Use the native HLS downloader instead of ffmpeg/avconv | ||||||
|  |                        if True, otherwise use ffmpeg/avconv if False, otherwise | ||||||
|  |                        use downloader suggested by extractor if None. | ||||||
|  |  | ||||||
|     The following parameters are not used by YoutubeDL itself, they are used by |     The following parameters are not used by YoutubeDL itself, they are used by | ||||||
|     the downloader (see youtube_dl/downloader/common.py): |     the downloader (see youtube_dl/downloader/common.py): | ||||||
|   | |||||||
| @@ -41,9 +41,12 @@ def get_suitable_downloader(info_dict, params={}): | |||||||
|         if ed.can_download(info_dict): |         if ed.can_download(info_dict): | ||||||
|             return ed |             return ed | ||||||
|  |  | ||||||
|     if protocol == 'm3u8' and params.get('hls_prefer_native'): |     if protocol == 'm3u8' and params.get('hls_prefer_native') is True: | ||||||
|         return HlsFD |         return HlsFD | ||||||
|  |  | ||||||
|  |     if protocol == 'm3u8_native' and params.get('hls_prefer_native') is False: | ||||||
|  |         return FFmpegFD | ||||||
|  |  | ||||||
|     return PROTOCOL_MAP.get(protocol, HttpFD) |     return PROTOCOL_MAP.get(protocol, HttpFD) | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -425,8 +425,12 @@ def parseOpts(overrideArguments=None): | |||||||
|         help='Set file xattribute ytdl.filesize with expected filesize (experimental)') |         help='Set file xattribute ytdl.filesize with expected filesize (experimental)') | ||||||
|     downloader.add_option( |     downloader.add_option( | ||||||
|         '--hls-prefer-native', |         '--hls-prefer-native', | ||||||
|         dest='hls_prefer_native', action='store_true', |         dest='hls_prefer_native', action='store_true', default=None, | ||||||
|         help='Use the native HLS downloader instead of ffmpeg') |         help='Use the native HLS downloader instead of ffmpeg') | ||||||
|  |     downloader.add_option( | ||||||
|  |         '--hls-prefer-ffmpeg', | ||||||
|  |         dest='hls_prefer_native', action='store_false', default=None, | ||||||
|  |         help='Use ffmpeg instead of the native HLS downloader') | ||||||
|     downloader.add_option( |     downloader.add_option( | ||||||
|         '--hls-use-mpegts', |         '--hls-use-mpegts', | ||||||
|         dest='hls_use_mpegts', action='store_true', |         dest='hls_use_mpegts', action='store_true', | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Sergey M․
					Sergey M․