7

我想从 Windows 上使用 youtube-dl 下载的视频中提取音频。我让 youtube-dl 工作,但无法提取音频。此问题是由于未安装正确的音频代码引起的。

当我尝试提取音频时,它会告诉我以下信息:

WARNING: unable to obtain file audio codes with ffprobe

youtube-dl 手册说:

-x -extract-audio    convert video files to audio-only files (requires ffmpeg or avconv and ffprobe or avprobe)

如何安装 ffprobe 或 ffmpeg?我是在 Windows 上安装它,还是将它安装为 Python 扩展?

我的操作系统是 Windows 7。

4

4 回答 4

12

ffmpeg不是 Python 模块。看一下类中的youtube-dl代码FFmpegExtractAudioPP

它使用此调用来确定可执行文件是否存在。它检查您当前的路径:

subprocess.Popen([exe, '-version'], stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()

您需要下载Windows 版本ffmpeg并将它们放在当前路径中,可能要确保它们.exe的名称末尾没有。

于 2013-01-06T19:38:04.167 回答
7

适用于 Windows 用户的快速修复:

  1. 从http://ffmpeg.zeranoe.com/builds/下载 ffmpeg 包,解压,将 Bin 目录的所有内容复制到 youtube-dl.exe 所在目录。
  2. 使用 DOS 导航到 youtube-dl 所在的目录并使用以下命令运行:

    youtube-dl --extract-audio --audio-format mp3
    
于 2017-03-12T07:45:32.890 回答
5

编辑

未来的用户可能希望从ffmpeg.org下载最新版本


我的代表不允许我添加评论,所以我会放在这里。

根据 2020 年 9 月 18 日, http: //ffmpeg.zeranoe.com/builds/已关闭,但仍可通过 Web Archive 访问。完整的下载仍然可以从这里获得:

http://web.archive.org/web/20200918193047/https://ffmpeg.zeranoe.com/builds/

我已从我的 Google 云端硬盘为 Windows 用户提供以下文件/版本,但请不要认为这些是理所当然的,并一如既往地扫描恶意软件或病毒:

ffmpeg-4.2.2-win32-static.zip
ffmpeg-4.2.2-win64-static.zip
ffmpeg-4.2.3-win32-static.zip
ffmpeg-4.2.3-win64-static.zip
ffmpeg-4.3-win32-static.zip
ffmpeg-4.3-win64-static.zip
ffmpeg-4.3.1-win32-static.zip
ffmpeg-4.3.1-win64-static.zip
    

https://drive.google.com/drive/folders/1oj3VndOC-bGhfpNcHW3otIR--V2wxdG-?usp=sharing

下载后,我在 Windows 10 上提取了最新版本 (4.3.1) 并将所有 .exe ( ffmpeg, ffplay, ffprobe) 复制到与 相同的目录中youtube-dl,然后运行:

youtube-dl -x --audio-format mp3 https://www.youtube.com/watch?v=...
于 2020-12-31T04:39:34.710 回答
0

您可以使用Chocolatey轻松获得 win-ffmpeg

如果你仍然不能让 youtube-dl 和 ffmpeg 一起工作,

也许您可以分两步完成:

  1. 获取 mp4 或 avi:youtube-dl url

  2. 提取音频

    ffmpeg -i input.mp4 -vn -codec 复制输出.mp3

于 2021-01-29T10:11:49.347 回答