无法使用YouTube-dl下载指定的比特率

时间:2016-01-21 17:43:03

标签: youtube-dl

在需要简单而强大的功能后,我可以下载YouTube播放列表并找到更好的选择,我最近开始在命令行中使用youtube-dl(使用ffmpeg)。我目前正在处理和测试下载的播放列表的质量,但我遇到了将播放列表转换为192kbps的M4A音频的问题。这是我正在使用的:

youtube-dl --extract-audio --audio-format m4a --audio-quality 192 --playlist-items 1-26 https://www.youtube.com/playlist?list=PLR3nWwHlZ9WBpi3uWsjSe6r1PiA8MTbnE

--audio-quality 192似乎没有注册,即使语法似乎正如我所知,并且当下载和提取音频文件时,它们包含一系列不同的比特率,从189到254.任何人都可以告诉我为什么我可能会遇到这个问题?

1 个答案:

答案 0 :(得分:3)

根据youtube-dl帮助文件,对于比特率,您需要在K之后指定192。否则,它将其视为可变比特率:

  

-audio-quality QUALITY指定ffmpeg / avconv音频质量,   插入                                    介于0(更好)和9(更差)之间的值                                    对于VBR或特定比特率,如128K                                    (默认5)

请参阅:Post Processing Options in helpfile

基于评论的更新:存在未解决的问题,表明ffmpeg不会报告处理时遇到的所有错误,尤其是mp4(m4a)编解码器。见Issue 8230。替代格式可以是变通方法。另一个解决方法可能是更改系统的mp4编解码器,以便ffmpeg对它们更满意。

如果这些解决方法都不适合您,请使用--verbose选项发布运行命令的输出,以便我们可以看到调试信息。

由于不影响MP3,因此更新:

由于已知ffmpeg有一些mp4编解码器问题,您可以尝试的另一件事是使用avconvavprobe代替ffmpegffprobe youtube-dl的后处理器。您可以在此处下载最新的Windows二进制文件:LibAV Windows binaries。不要忘记将可执行文件添加到PATH系统环境变量中,以便youtube-dl可以找到它们。

然后在--prefer-avconv命令中添加youtube-dl选项,看看它是否表现得更好。

使用已知BUG详细信息进行编辑:

看起来你可能已经错过了以前错过的这个bug版本M4a Audio file post-processing skipped - 虽然开发人员已经解决了bug描述中略有不同的情况,但它似乎也出现在你的情况中。可能值得将详细信息发布到youtube-dl Github Issue Tracker

此时切换到其他格式(如mp3)可能是唯一的解决方法。