我有一个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())
1条答案
按热度按时间irtuqstp1#
您可以依赖
audiosegment
(pydub.AudioSegment
的 Package 器)及其audiosegment.from_numpy_array
方法,或者从https://github.com/MaxStrange/AudioSegment/blob/master/docs/api/audiosegment.py#L1145借用其底层方法实现