Пример #1
0
 def playback5(self, file_path=icq_uh_oh):
     print('pb5')
     count = self.count
     fade = pyo.Fader(fadein=.1, fadeout=0.1, dur=3).play()
     select = random.random()
     snd = pyo.SndTable(file_path)
     env = pyo.HannTable()
     pos = pyo.Phasor(snd.getRate() * .25, random.random(), snd.getSize())
     dur = pyo.Noise(.05, .1)
     g = pyo.Granulator(
         snd,
         env, [self.granulated_pitch, self.granulated_pitch + .001],
         pos,
         dur,
         24,
         mul=fade)
     panner = pyo.Pan(g,
                      outs=2,
                      pan=random.random(),
                      spread=random.random()).out()
     self.granulated_pitch -= .05
     if self.granulated_pitch < .049:
         self.granulated_pitch = .05
     time.sleep(fade.dur + .05)
     g.stop()
Пример #2
0
 def playback3(self, file_path=imsend_sound_path):
     snd = pyo.SndTable(file_path)
     env = pyo.HannTable()
     pos = pyo.Phasor(snd.getRate() * .25, 0, snd.getSize())
     dur = pyo.Noise(.001, .1)
     g = pyo.Granulator(snd, env, [1, 1.001], pos, dur, 24, mul=self.env)
     panner = pyo.Pan(g,
                      outs=2,
                      pan=random.random(),
                      spread=random.random()).out()
     time.sleep(self.env + 0.05)
     g.stop()
Пример #3
0
def SpecToGranulator(X_mu_np, idx):
    Nfft = 4096
    S = X_mu_np[idx, :]
    S = np.append(S[np.newaxis].T,
                  np.zeros((Nfft / 2 - S.shape[0] + 1, 1)),
                  axis=0)
    x = np.fft.irfft(S, n=Nfft)
    s = pyo.Server(sr=44100, duplex=0)
    s.boot()
    s.start()
    tab = pyo.DataTable(size=1024, init=x.tolist())
    tab.view()
    env = pyo.HannTable()
    pos = pyo.Phasor(1024 / 44100, 0, 1024)
    dur = pyo.Noise(.001, .1)
    g = pyo.Granulator(tab, env, 1, pos, dur, 24, mul=1).out()
    s.gui(locals(), exit=True)
Пример #4
0
    def __init__(self, chain, extractor):
        self.chain = chain
        self.extractor = extractor

        self.table = pyo.NewTable(self.extractor.table.length)
        self.window = pyo.HannTable(self.table.size)
        self.samples = np.asarray(self.table.getBuffer())
        self.pitch = pyo.Sig(0)
        self.vol = pyo.Sig(0)
        self.env = pyo.Adsr()

        self.osc = pyo.Granule(self.table, self.window, dens=100)
        self.osc.setSync(False)

        self.sin = pyo.Blit(self.pitch, mul=self.vol)
        self.vocoder = pyo.Vocoder(self.sin, self.osc, self.pitch)
        self.compressor = pyo.Compress(self.vocoder)
Пример #5
0
 def out(self, file_path=imsend_sound_path):
     if self.choice <= 0.33:
         self.section_one = Section_One(self.count)
         self.section_one.out()
     elif self.choice > .33 and self.choice <= .67:
         self.section_two = Section_Two(self.message, self.count)
         self.section_two.out()
     else:
         snd = pyo.SndTable(file_path)
         env = pyo.HannTable()
         pos = pyo.Phasor(snd.getRate() * .25, 0, snd.getSize())
         dur = pyo.Noise(.001, .1)
         g = pyo.Granulator(snd, env, [1, 1.001], pos, dur, 24, mul=1)
         panner = pyo.Pan(g,
                          outs=2,
                          pan=random.random(),
                          spread=random.random()).out()
         time.sleep(2)
         g.stop()