当我使用 ffmpeg 进行转换时,我可以将 3.5MB mp3 文件转换为 ~3.5MB wav 文件(使用
ffmpeg -i input.mp3 -acodec pcm_s16le -ac 1 -ar 8000 output.wav
)。
然而,当我使用 pydub 并使用以下代码时
s1 = AudioSegment.from_file("input.mp3", format="mp3")
o1 = s1.export("output.wav",format="wav", parameters=["-acodec","pcm_s16le","-ac","1","-ar","8000"])
导出的wav文件为34.5MB。 我怎样才能让 pydub 按预期运行?
s1.export("output.mp3", format='mp3', parameters=["-ac","2","-ar","8000"])
这行代码成功地将我的音频大小减少了之前大小的一半。希望这对某人有帮助
我使用了下面的 python 代码,它将 WAV 文件压缩了一半大小。而且也不影响音质。
import soundfile as sf
# Read the original WAV file
data, samplerate = sf.read("/home/ef/Music/3b760146-31db-4f37-b062-36226779f133.wav")
# Convert to mono (if stereo)
if len(data.shape) > 1:
data = data.mean(axis=1)
# Save with reduced bit depth
sf.write("/home/ef/Music/reducedsize.wav", data, samplerate, subtype='PCM_16')