如何在Python中将MP3转换为WAV

问题描述 投票:0回答:6

如果我有 MP3 文件,如何将其转换为 WAV 文件? (最好使用纯Python方法)

python mp3
6个回答
106
投票

我维护一个开源库,pydub,它可以帮助你解决这个问题。

from pydub import AudioSegment
sound = AudioSegment.from_mp3("/path/to/file.mp3")
sound.export("/output/path/file.wav", format="wav")

需要注意的是:它使用 ffmpeg 来处理音频格式转换(除了 wav 文件,Python 本身可以处理这些文件)。

注意:您可能不应该在 GAE 上进行此转换:/即使它确实支持 ffmpeg。不过,EC2 非常适合这项工作


10
投票

这对我有用:

import subprocess
subprocess.call(['ffmpeg', '-i', 'audio.mp3',
                   'audio.wav'])

4
投票

我认为我是回答这个问题的合适人选,因为我是努力寻找这个问题答案的学生。我正在为 Windows 用户提供答案,但我认为这也适用于 MAC 操作系统。但适用于 Windows。

让我们分步骤讨论答案:

首先检查 pydub 和 ffmpeg 包。如果您的计算机没有这些软件包,请在命令提示符下安装 pydub

                    pip install pydub

接下来重要的是 ffmpeg 包,它将图像转换为不同的格式。为此,您应该手动安装此软件包。让我告诉你为什么我们可以使用 pip 来安装包。首先 pip 安装软件包,但它不会存储系统路径。所以计算机无法识别这个包路径。为此,我建议您手动安装,但是如何...不用担心会给您步骤。

第 1 步:

#呈现链接

您将其粘贴到谷歌的第一个链接

https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-essentials.zip

#供未来的学生使用

但是人们现在会质疑这个链接在未来是否有效。因为这个简单的答案是

https://www.gyan.dev/ffmpeg/builds/

在谷歌中输入此内容后,请转到版本并下载zip文件夹,始终不要下载7.zip。但只有当我的第一个链接将来不起作用时,任何学生才会搜索答案。

第 2 步:从第一步第一个链接下载 zip 文件后。现在在C盘创建一个文件夹。为此,只需单击我的电脑,然后单击操作系统(C:),创建一个新文件夹。将下载的 zip 文件复制粘贴到此文件夹中。将 zip 文件解压到这个新文件夹中。现在进入文件夹并从属性复制此文件夹中存在的“bin”路径。

第 3 步:这是最后一步,您将在其中设置路径。在笔记本电脑的搜索栏中搜索“编辑系统环境变量”。然后单击底部的“环境变量”获取路径。这里分为屏幕系统变量和用户变量两部分。现在您必须在系统变量中搜索您想要用于整个系统的路径“Path”。双击系统变量中的“路径”。出现一个窗口,您必须在其中选择“新建”。这里复制粘贴bin文件夹的路径。然后单击“全部确定”并关闭所有选项卡。

第四步:检查ffmpeg安装是否正确。现在,在命令提示符下输入 ffmpeg,您将获得路径列表及其功能。这表明您已完成安装。

第 5 步:下载 mp3 文件。如果您已经下载了 python,则打开 IDLE 提示符。将出现单击“文件记事本”中的“新建”。这里要记住的一点是复制粘贴存储 python 代码的 mp3 文件。示例 如果我想将 python 文件保存在桌面中,则 mp3 文件应存储在桌面中。我想你出个主意。现在复制粘贴我正在使用的代码

                import subprocess
                subprocess.call(['ffmpeg', '-i', 'ind.mp3','ind1.wav'])

然后点击运行模块

您将获得转换。

谢谢你

这个答案可能对你有帮助。如果您想要将语音转换为文本的代码和方法,可以给我发邮件。我希望这个 10 分钟的答案可以节省您的时间。

https://www.youtube.com/watch?v=vBb_eYThfRQ

使用此视频进行路径配置或步骤 3 进行参考,但将路径复制到系统变量而不是用户,因为整个系统都可以使用此包。如果我的语言不好请不要介意,我认为这是可以理解的。


3
投票

安装模块

pydub
。这是 Python 的音频操作模块。该模块可以打开多种多媒体音频和视频格式。您可以使用
pip
安装此模块。

pip install pydub

如果您尚未安装 ffmpeg,请安装它。您可以使用包管理器来执行此操作。

对于 Ubuntu / Debian Linux:

apt-get install ffmpeg

准备好后,执行以下代码:

from os import path
from pydub import AudioSegment

# files                                                                         
src = "transcript.mp3"
dst = "test.wav"

# convert wav to mp3                                                            
sound = AudioSegment.from_mp3(src)
sound.export(dst, format="wav")

查看此链接了解详情。


3
投票

对于使用 Windows 7 及以上版本的用户:

第 1 步:此链接将帮助您安装 ffmpeg: 如何在Windows上安装FFMPEG

第 2 步:此代码将帮助您将多个文件从一种格式转换为另一种格式(当然 ffmpeg 支持)

import os
import subprocess


input_dir = r'C:\\Path\\To\\Your\\Input\\Directory\\'
output_dir = r'C:\\Path\\To\\Your\\Output\\Directory\\'
path_to_ffmpeg_exe = r'C:\\Path\\To\\ffmpeg-2022-YY-MM-git-blabla-full_build\\bin\\ffmpeg.exe'

files_list = []

for path in os.listdir(input_dir):
    if os.path.isfile(os.path.join(input_dir, path)):
        files_list.append(path)

for file_nm in files_list:
    print(file_nm)
    subprocess.call([path_to_ffmpeg_exe, '-i', os.path.join(input_dir, file_nm), os.path.join(output_dir, str(file_nm.split(".")[0] + ".wav"))])

0
投票

对于 Windows,如果您还遇到 文件未找到错误:[WinError 2]

  1. 检查 ffmpeg 安装路径是否在您的 PATH 变量中,如果没有添加它(添加后检查新的终端/Shell)
  2. 我还必须将 ffmpeg-win64-v4.2.2.exe 重命名/复制为 ffmpeg.exe

然后就成功了。

© www.soinside.com 2019 - 2024. All rights reserved.