Python 将MP3转换为WAV
我正在尝试将.mp3文件转换为.wav格式。当我在“命令提示符”中使用下面的命令时,我能够获得所需的输出。它提供了.wav格式的输出文件Python 将MP3转换为WAV,python,sox,Python,Sox,我正在尝试将.mp3文件转换为.wav格式。当我在“命令提示符”中使用下面的命令时,我能够获得所需的输出。它提供了.wav格式的输出文件 sox "C:\Users\Desktop\Audio File\Call.mp3" --rate 16k --bits 16 --channels 1 "C:\Users\Mayank\Desktop\Audio File\Call.wav" 我试图通过Python做同样的事情。以下是代码: import subprocess retcode = subp
sox "C:\Users\Desktop\Audio File\Call.mp3" --rate 16k --bits 16 --channels 1 "C:\Users\Mayank\Desktop\Audio File\Call.wav"
我试图通过Python做同样的事情。以下是代码:
import subprocess
retcode = subprocess.call(['sox', 'C:\Users\Desktop\Audio File\Call.mp3',
'--rate 16k', '--bits 16', '--channels 1',
'C:\Users\Desktop\Audio File\Call.wav'])
这样做时,我的错误率会降低。我是python新手,请告诉我如何实现这一点:
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
我尝试使用双“\”而不是“\”,然后我得到下面的错误
FileNotFoundError: [WinError 2] The system cannot find the file specified
我还尝试了以下所有选项。。它们都给出相同的错误“找不到指定的文件”
最后,它的工作原理如下
import subprocess
sox = 'C:/Program Files (x86)/sox-14-4-2/sox.exe'
infile = 'C:/Users/Desktop/Audio File/Call.mp3'
outfile = 'C:/Users/Desktop/Audio File/Call.wav'
extra = '--rate 16k --bits 16 --channels 1'
command = """{0} "{1}" {2} "{3}" """.format(sox,infile,extra,outfile)
subprocess.call(command)
sox不支持mp3到wav的转换。 要将mp3转换为wav,您可以使用下面提到的命令。它将完美地工作
pip install pydub
apt-get install ffmpeg
MP3到WAV转换
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")
如果它不起作用,请检查此选项。使用前斜杠或原始字符串
'C:/Users/Desktop/Audio File/Call.mp3'
,或避开反斜杠'C:\\Users\\Desktop\\Audio File\\Call.mp3'
或r'C:\Users\Desktop\Audio File\Call.mp3'
,'\U
是一个unicode标识符,请投票关闭,因为这是一个输入错误。注意,您还需要对输出路径执行相同的操作。关于第二个错误,文件是否存在?我编辑了我的问题。。我也尝试过所有这些选择。。它们都给出了相同的错误。仍然无法纠正此问题:(问题:你为什么要这样做?MP3是一种压缩格式,所以根据定义,你不会在音频质量上得到任何改善,只是一个更大的文件。我需要这个文件来将其提供给google speech-2-text api…原始格式..与.raw有同样的问题..看起来在子流程中它无法找到“可执行文件”hp,ht,pid,tid=_winapi.CreateProcess(可执行文件,args,#无特殊安全性None,None,int(不关闭_fds),creationflags,env,cwd,startupinfo)当然可以。你只需要安装合适的库。我一直都在这样做。sudo apt get install libsox-fmt-mp3 sox file.mp3 file.wav
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")