我收到以下错误信息youtube-dl
:
WARNING: Requested formats are incompatible for merge and will be merged into mkv.
答案1
这实际上并不是问题但实际上预期行为为了youtube-dl
。
默认情况下,当前版本youtube-dl
将下载可用的最高质量的音频和最高质量的视频流,然后将这些流合并到兼容的容器中。 当前容器选择是 mkv、mp4、ogg、webm、flv。(我注意到该选项也支持 avi --recode-video
。)
例如,如果这些“最佳”流是不适合 mp4 容器的编解码器,youtube-dl
则会将它们打包到 mkv 容器中并发出您看到的警告。请注意,vlc、SMPlayer 和朋友将在配置良好的 Ubuntu 系统上毫无问题地播放生成的 mkv 文件……
然而,如果你真的渴望获得最好的视频质量和最好的视频音频质量,但仅在 mp4 容器中(从而绕过 mkv 警告和随后的 Matrosk 容器输出youtube-dl
)您可以使用以下命令:
youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]' URL
显然,将“URL”值替换为要下载的 YouTube 视频的地址。这种相对复杂的命令行可以放在永久在配置文件中~/.config/youtube-dl/config
如下:
-f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]'
将上述行放入 youtube-dl 配置文件后,设置将成为默认和youtube-dl
不需要每次都在命令行上给出。(很容易绕过如果需要的话--ignore-config
通过在命令行上传递选项)。
很多很多此命令行的变体有可能……
参考: