Как воспроизвести звук имея одномерный массив из байтовой строки?



@Maxim_Baturo

Занимаюсь проектом по обработке звука нейросетью, на поверхностном уровне понимая суть звука, почти вообще не умея с ним работать кодом. Нейросеть ест только массивы чисел, в который мне и надо перевести звук. Звук в массив я, вроде как, перевел, но на выходе нейросеть выдаст такой же массив, который в итоге нужно перевести назад в звук.

Я представил звук как массив sample, как теперь воспроизвести этот массив как звук?

на поверхностном уровне понимая суть звука, почти вообще не умея с ним работать кодом.


Желательно простыми словами.

import wavio as wv
import numpy as np
import wave
import matplotlib.pyplot as plt

# Convert mp3 to wav data type                                                                 
src_mp3 = "/content/drive/MyDrive/AudioExp/sound.mp3"
src_wav = "/content/drive/MyDrive/AudioExp/soundnew.wav"                                                 
sound = AudioSegment.from_mp3(src_mp3)
sound.export(src_wav, format="wav")


# Create array from file
wav = wave.open('/content/drive/MyDrive/AudioExp/soundnew.wav','r')
(nchannels, sampwidth, framerate, nframes, comptype, compname) = wav.getparams()
print(wav.getparams())
content = wav.readframes(nframes)
 
import numpy as np
types = {
    1: np.int8,
    2: np.int16,
    4: np.int32
}
 
samples = np.fromstring(content, dtype=types[sampwidth])

Спасибо.


Решения вопроса 0


Ответы на вопрос 0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *