如何将numpy数组转换为pydub.AudioSegment

hvvq6cgz  于 2023-10-19  发布在  iOS
关注(0)|答案(1)|浏览(130)

我有一个TTS模型,我想结合合并音频。
我需要一种方法来转换pydub.AudioSegment的模型输出(numpy数组),以便能够合并音频
这是模型的输出

audio[0].data.cpu().numpy() = array([ 1.90522405e-04,  3.96589050e-04,  4.41852462e-04, ...,
        1.13033675e-05, -1.63643017e-05, -2.01268449e-05], dtype=float32)

这是我的功能,合并的音频

from pydub import AudioSegment
from os.path import exists
def creating_one_audio_file(audio):
  if exists("/content/audio_file.wav"):
    sound2 = AudioSegment.from_wav("/content/audio_file.wav")
    combined_sounds = audio + sound2
    combined_sounds.export("/content/audio_file.wav", format="wav")
  else:
    combined_sounds = audio
    combined_sounds.export("/content/audio_file.wav", format="wav")

creating_one_audio_file(audio[0].data.cpu().numpy())
irtuqstp

irtuqstp1#

您可以依赖audiosegmentpydub.AudioSegment的 Package 器)及其audiosegment.from_numpy_array方法,或者从https://github.com/MaxStrange/AudioSegment/blob/master/docs/api/audiosegment.py#L1145借用其底层方法实现

相关问题