[英]Converting a .wav file to .mp3
我有一个 .wav 文件,我想将其转换为 .mp3 文件。 我编写了一个 python 程序来执行此操作,它编译、运行并创建一个 .mp3 文件,但是当我尝试播放该文件时,我收到一条错误消息。 由于我创建它的方式,我认为该文件不可读,但我不知道为什么。
这是我的程序:
with open('pcm-test-1.wav', 'rb') as f:
data = f.read()
a = [255,254,0,192]
b = []
for i in range (223,len(data),2):
a.append(ord(data[i]))
a.append(ord('T'))
a.append(ord('A'))
a.append(ord('G'))
for i in range(0,124):
a.append(0)
for i in a:
b.append(chr(a[i]))
string = ''.join(b)
new = open('newFile.mp3','wb')
new.write(string)
我在 python 中做到了这一点,但任何语言的实现都可以。 谢谢!
你最好的选择是用 LAME 来做到这一点。 安装完成后,请执行以下操作:
LAMEOPTS="-b 192"
for DIRECTORY in /music/*/*; do
if [ -d "$DIRECTORY" ]; then
echo "$DIRECTORY";
for FILE in "$DIRECTORY"/*.wav ; do
OUTNAME=`basename "$FILE" .wav`.mp3;
echo "$FILE" "$DIRECTORY"/"$OUTNAME";
lame $LAMEOPTS "$FILE" "$DIRECTORY"/"$OUTNAME";
rm "$FILE";
done
fi
done
如果你对外部库开放, pydub可以用最少的代码很容易地做到这一点。
from pydub import AudioSegment
from pydub.playback import play
#read wav file to an audio-segment
song = AudioSegment.from_wav("your_wave_file.wav")
#export audio segment to mp3
song.export("your_wave_file.mp3", format="mp3")
#play audio-segment
play(song)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.