从音频流wav或mp3中切分出python块

4

我想编写一个Python程序,从音频文件中写入数据块。我可以使用以下代码从本地音频文件中写入数据块:

from pydub import AudioSegment
from pydub.utils import make_chunks

myaudio = AudioSegment.from_file("file1.wav" , "wav") 
chunk_length_ms = 10000 # 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")

上述代码将创建10000毫秒的音频文件“file1.wav”的块。但我想从音频流中写入块,该流可以是wav或mp3。有人可以帮我吗?

1个回答

3
将音频块转换为NumPy数组,并使用函数.get_array_of_samples()。
np.array(chunk[0].get_array_of_samples())

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接