音乐-多个同时音调,python

音乐-多个同时音调,python,python,math,frequency,sound-synthesis,Python,Math,Frequency,Sound Synthesis,我正在做一个有趣的项目,涉及解决数学问题和音乐。很容易生成特定的音符(或音调): 我在python中工作,并且有代码可以从中完成很多工作 当然,在真实音乐中,通常在同一时间段播放多个音调。我试图通过生成两个音调然后求和来实现这一点,即: 双音=音符(440,2)+音符(261.63,2) 但这只是胡说八道。如何对多个同时音调进行数学编码?使用两个音调时,应将单个振幅减半,否则总振幅可能加倍。如果使用两个以上,则应以反映其相对体积的比例混合,总振幅为一 ton = amplitude * sin(

我正在做一个有趣的项目,涉及解决数学问题和音乐。很容易生成特定的音符(或音调):

我在python中工作,并且有代码可以从中完成很多工作

当然,在真实音乐中,通常在同一时间段播放多个音调。我试图通过生成两个音调然后求和来实现这一点,即:

双音=音符(440,2)+音符(261.63,2)


但这只是胡说八道。如何对多个同时音调进行数学编码?

使用两个音调时,应将单个振幅减半,否则总振幅可能加倍。如果使用两个以上,则应以反映其相对体积的比例混合,总振幅为一

ton = amplitude * sin(2pi * frequency * time / samplerate)
def note(frequency, length, amplitude=1, sample_rate=44100):
    time_points = numpy.linspace(0, length, length * sample_rate)
    return numpy.sin(2 * numpy.pi * frequency * time_points) * amplitude