Me gustaría producir sonidos que se parezcan al audio de instrumentos reales. El problema es que tengo muy poca idea de cómo conseguirlo.¿Cómo sintetizar sonidos?
Lo que sé esta lejos de instrumentos reales es que suena que la salida son rara vez limpia. Pero, ¿cómo producir esos sonidos inmundos?
este momento he llegado a hacer esto, se produce un sonido bastante sencilla de la que no estoy seguro de que incluso utilizando el alsa correctamente.
import numpy
from numpy.fft import fft, ifft
from numpy.random import random_sample
from alsaaudio import PCM, PCM_NONBLOCK, PCM_FORMAT_FLOAT_LE
pcm = PCM()#mode=PCM_NONBLOCK)
pcm.setrate(44100)
pcm.setformat(PCM_FORMAT_FLOAT_LE)
pcm.setchannels(1)
pcm.setperiodsize(4096)
def sine_wave(x, freq=100):
sample = numpy.arange(x*4096, (x+1)*4096, dtype=numpy.float32)
sample *= numpy.pi * 2/44100
sample *= freq
return numpy.sin(sample)
for x in xrange(1000):
sample = sine_wave(x, 100)
pcm.write(sample.tostring())
No me gustaría usar bancos de muestra. Quiero algo que se parezca a los instrumentos, no a la vida en absoluto. – Cheery