gpt4 book ai didi

python - 如何在python中将音频文件(wav格式)拼接成1秒拼接?

转载 作者:太空狗 更新时间:2023-10-30 00:29:20 28 4
gpt4 key购买 nike

我正在寻找一个 python 函数来将音频文件(wav 格式)拼接成持续时间为 1 秒的拼接并将每个新拼接(持续时间为 1 秒)存储到一个新的 .wav 文件中。

最佳答案

使用pydub模块真正简单易行,详情在herehere

pydub 有一个名为 make_chunks 的方法,您可以在 毫秒 中指定 block 长度

make_chunks(your_audio_file_object, chunk_length_ms)

这是一个工作代码,可以将 wav 文件分成一秒钟的 block 。我有一个 8.5 秒的文件,所以程序创建了 9 个 可播放 的一秒 block 。根据音频持续时间,最后一个 block 将更小。

from pydub import AudioSegment
from pydub.utils import make_chunks

myaudio = AudioSegment.from_file("myAudio.wav" , "wav")
chunk_length_ms = 1000 # pydub calculates in millisec
chunks = make_chunks(myaudio, chunk_length_ms) #Make chunks of one sec

#Export all of the individual chunks as wav files

for i, chunk in enumerate(chunks):
chunk_name = "chunk{0}.wav".format(i)
print "exporting", chunk_name
chunk.export(chunk_name, format="wav")

输出

Python 2.7.9 (default, Dec 10 2014, 12:24:55) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>>
exporting chunk0.wav
exporting chunk1.wav
exporting chunk2.wav
exporting chunk3.wav
exporting chunk4.wav
exporting chunk5.wav
exporting chunk6.wav
exporting chunk7.wav
exporting chunk8.wav
>>>

关于python - 如何在python中将音频文件(wav格式)拼接成1秒拼接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36799902/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com