Beispiel #1
0
 def __init__(self, sequence, amp=1, pan=0.5):
     BaseSynth.__init__(self, sequence, amp, pan)
     self.env = pyo.CosTable([(0,0.0000),(335,0.9948),(6920,0.6218),(8192,0.0000)])
     self.env_reader = pyo.TrigEnv(self.trig, self.env, dur=self.dur)
     self.index_env = pyo.CosTable([(0,0.0000),(158,0.7668),(7662,0.0933),(8000,0.0000)])
     self.index_env_reader = pyo.TrigEnv(self.trig, self.index_env, dur=self.dur, mul=7)
     self.trans_env = pyo.CosTable([(0,0.0000),(317,1.0000),(1430,0.1347),(8000,0.0000)])
     self.trans_env_reader = pyo.TrigEnv(self.trig, self.trans_env, dur=0.25)
     self.trans = pyo.Lorenz(mul=self.trans_env_reader, chaos=1, pitch=0.265)
     self.source = pyo.FM(mul=self.env_reader,index=self.index_env_reader,ratio=2, carrier=self.freq)
     self.panner = pyo.Pan((self.source + self.trans).mix(0), mul=self.master_amp, pan=self.master_pan)
     self.last_audio_object = self.panner
Beispiel #2
0
 def __init__(self, sequence, amp=1, pan=0.5):
     BaseSynth.__init__(self, sequence, amp, pan)
     self.env = pyo.CosTable([(0,0.0000),(953,1.0000),(5737,0.7254),(8192,0.0000)])
     self.env_reader = pyo.TrigEnv(self.trig, self.env, dur=pyo.Max(self.dur, comp=0.3125))
     self.osc = pyo.LFO(type=2, freq=pyo.Noise(add=1, mul=0.3*self.freq), mul=0.5*self.env_reader)
     self.pre_filter = pyo.Biquad(self.osc, freq=191)
     self.disto_env = pyo.CosTable([(0,0.0000),(2118,0.2694),(8192,0.0000)])
     self.disto_env_reader = pyo.TrigEnv(self.trig, self.disto_env, dur=self.dur, add=0.7)
     self.disto = pyo.Disto(self.pre_filter, drive=self.disto_env_reader, mul=0.3)
     self.freq_env = pyo.CosTable([(0,0.0000),(1553,0.4767),(8192,0.0000)])
     self.freq_env_reader = pyo.TrigEnv(self.trig, self.freq_env, dur=self.dur, add=1000, mul=200)
     self.res_filter = pyo.Biquad(pyo.BrownNoise(mul=self.env_reader), q=6, freq=self.freq_env_reader, mul=0.9, type=2)
     self.panner = pyo.Pan(self.disto+self.res_filter, mul=self.master_amp, pan=self.master_pan)
     self.last_audio_object = self.panner
Beispiel #3
0
 def __init__(self, sequence, amp=1, pan=0.5):
     BaseSynth.__init__(self, sequence, amp, pan)
     self.formant = [235,459,1105,2735,4115]
     self.env = pyo.CosTable([(0,0.0000),(1200,0.9793),(7062,0.7772),(8000,0.0000)])
     self.env_reader = pyo.TrigEnv(self.trig, self.env, dur=self.dur)
     self.source = pyo.LFO(freq=self.freq,mul=self.env_reader)
     self.eq = pyo.EQ(self.source ,freq=[self.freq], boost=20)
     self.ffilter = pyo.SVF(self.eq, type=0.5, freq=self.formant, q=10, mul=0.1)
     self.trans_env = pyo.CosTable([(0,0.0000),(388,0.3731),(2630,0.0518),(7821,0.0000),(8000,0.0000)])
     self.trans_env_reader = pyo.TrigEnv(self.trig, self.trans_env, dur=0.25)
     self.trans = pyo.Noise(mul=self.trans_env_reader)
     self.trans_filter = pyo.Biquad(self.trans, freq=400)
     self.trans_resonator = pyo.Biquad(self.trans_filter, q=31, freq=self.freq*2, mul=0.2)
     self.panner = pyo.Pan(pyo.Compress((self.ffilter+self.trans_resonator).mix(0), mul=self.master_amp,), pan=self.master_pan)
     self.last_audio_object = self.panner
Beispiel #4
0
    def __init__(self, sequence, amp=1, pan=0.5):
        BaseSynth.__init__(self, sequence, amp, pan)
        self.env = pyo.CosTable([(0,0.0000),(353,1.0000),(4166,0.6528),(8000,0.0000)])
        self.env_reader = pyo.TrigEnv(self.trig, self.env, dur=pyo.Max(self.dur, comp=0.3125))
        self.sine_freqs = []
        for i in range(-1,1):
            self.sine_freqs.extend([self.freq*(1+0.001*i), self.freq*2*(1+0.002*i), self.freq*3*(1+0.002*i),self.freq*5*(1+0.002*i)])

        self.osc = pyo.Sine(freq=self.sine_freqs, mul=[self.env_reader, self.env_reader*0.2, self.env_reader*0.2, self.env_reader*0.1]*3)

        self.trans_env = pyo.CosTable([(0,0.0000),(123,0.0777),(812,0.0570),(2083,0.0052),(8000,0.0000)])
        self.trans_env_reader = pyo.TrigEnv(self.trig, self.trans_env, dur=0.25)
        self.trans = pyo.Noise(mul=self.trans_env_reader)
        self.trans_filter = pyo.Biquad(self.trans, freq=1690)
        self.trans_resonator = pyo.Biquad(self.trans_filter, q=31, freq=self.freq*4)
        self.panner = pyo.Pan((self.trans_resonator+self.osc).mix(0), mul=(0.1)*self.master_amp, pan=self.master_pan)
        self.last_audio_object = self.panner
Beispiel #5
0
    def __init__(self):
        super().__init__()

        self.sine = pyo.CosTable([(0, 0), (100, 1), (1000, .25), (8191, 0)])
        self.square = pyo.SquareTable()
        self.saw = pyo.SawTable()
        self.synth = pyo.NewTable(8192 / 44100)

        self.pointer = pyo.Sig(0)
        self.morph = pyo.TableMorph(self.pointer, self.synth,
                                    [self.sine, self.square, self.saw])
        self.osc = pyo.Osc(self.synth, 440)
        self.filter = pyo.Biquad(self.osc)
        self.verb = pyo.WGVerb(self.filter).mix(2)
Beispiel #6
0
    def __init__(self, sequence, amp=1, pan=0.5):
        BaseSynth.__init__(self, sequence, amp, pan)
        self.env = pyo.CosTable([(0,0.0000),(123,0.9896),(2701,0.4870),(6479,0.2746),(8192,0.0000)])
        self.env_reader = pyo.TrigEnv(self.trig, self.env, dur=pyo.Max(self.dur, comp=0.3125))
        sine_freqs = []
        for i in range(-1,1):
            freqs = [self.freq*j*(1+0.008*i) for j in range(1,8)]
            sine_freqs.extend(freqs)
        harm_amps = [1,0.3,0.4,0.2,0.1,0.04,0.04,0.03,0.02]
        self.osc = pyo.Sine(freq=sine_freqs, mul=[self.env_reader*harm_amps[i] for i in range(8)])

        self.trans_env = pyo.ExpTable([(0,0.3938),(8192,0.0000)])
        self.trans_env_reader = pyo.TrigEnv(self.trig, self.trans_env, dur=0.25)
        self.trans = pyo.Noise(mul=self.trans_env_reader)
        self.trans_filter = pyo.Biquad(self.trans, freq=1690)
        self.trans_resonator = pyo.Delay(pyo.Denorm(self.trans_filter), feedback=0.90, delay=(self.freq**-1))
        self.chorus = pyo.Chorus(self.trans_resonator, depth=0.13, feedback=0.84)
        self.master_filter = pyo.Biquad((self.chorus+self.osc).mix(0), freq=3900)
        self.panner = pyo.Pan(self.master_filter, mul=(0.1)*self.master_amp, pan=self.master_pan)
        self.last_audio_object = self.panner
Beispiel #7
0
    def __init__(self):
        super().__init__()

        self.wv1 = pyo.CosTable([(0, 0), (4060, 1), (8191, 0)])
        self.wv2 = pyo.CosTable([(0, 0.00), (2074, 0.59), (4060, 1.00),
                                 (8191, 0.00)])
        self.wv3 = pyo.CosTable([(0, 0.00), (2074, 0.59), (4060, 1.00),
                                 (6117, 0.60), (8191, 0.00)])
        self.wv4 = pyo.CosTable([(0, 0.00), (2039, 0.29), (2039, 0.60),
                                 (4060, 1.00), (6117, 0.60), (6117, 0.30),
                                 (8191, 0.00)])
        self.wv5 = pyo.CosTable([(0, 0.00), (2039, 0.29), (2039, 0.60),
                                 (3255, 0.29), (4060, 1.00), (4900, 0.30),
                                 (6117, 0.60), (6117, 0.30), (8191, 0.00)])
        self.wv6 = pyo.CosTable([(0, 0.00), (769, 1.00), (2039, 0.29),
                                 (2039, 0.60), (3255, 0.29), (4060, 1.00),
                                 (4900, 0.30), (6117, 0.60), (6117, 0.30),
                                 (7333, 1.00), (8191, 0.00)])
        self.wv7 = pyo.CosTable([(0, 0.00), (769, 0.00), (769, 1.00),
                                 (2039, 0.29), (2039, 0.60), (3255, 0.29),
                                 (4060, 1.00), (4900, 0.30), (6117, 0.60),
                                 (6117, 0.30), (7333, 1.00), (7333, 0.00),
                                 (8191, 0.00)])
        self.wv8 = pyo.CosTable([(0, 0.00), (769, 0.00), (769, 1.00),
                                 (2039, 0.29), (2039, 0.60), (3255, 0.29),
                                 (3255, 1.00), (4900, 1.00), (4900, 0.30),
                                 (6117, 0.60), (6117, 0.30), (7333, 1.00),
                                 (7333, 0.00), (8191, 0.00)])
        self.synth = pyo.NewTable(8192 / 44100)

        self.pointer = pyo.Sig(0)
        self.morph = pyo.TableMorph(self.pointer, self.synth, [
            self.wv1, self.wv2, self.wv3, self.wv4, self.wv5, self.wv6,
            self.wv7, self.wv8
        ])
        self.osc = pyo.Osc(self.synth, 440)
        self.filter = pyo.Biquad(self.osc)
        self.verb = pyo.WGVerb(self.filter).mix(2)