Esempio n. 1
0
def controller_riff(tempo=1):
    psonic.sample(psonic.DRUM_BASS_SOFT)
    psonic.sleep(tempo)
Esempio n. 2
0
def riff_7(tempo=1):
    for i in range(4):
        psonic.sample(psonic.DRUM_CYMBAL_PEDAL)
        psonic.sleep(tempo * 0.25)
Esempio n. 3
0
def riff_3(tempo=1):
    for i in range(3):
        psonic.sample(psonic.DRUM_SNARE_SOFT)
        psonic.sleep(tempo * .25)
    psonic.sample(psonic.DRUM_SNARE_SOFT)
Esempio n. 4
0
def riff_5(tempo=2):
    psonic.sample(psonic.AMBI_LUNAR_LAND)
    #psonic.sample(psonic.AMBI_DRONE)
    psonic.sleep(3.99 * tempo)  # make the last sleep a little shorter
Esempio n. 5
0
import psonic
import random

e = psonic.chord(psonic.E3, psonic.MINOR)
print(e)

# Challenge: Write a while loop that randomly plays a note from the
# e minor cord, for either 0.25, or 0.5 length of time
# after it plays 30 notes it should stop
while True:
    psonic.use_synth(psonic.PROPHET)
    psonic.play(random.choice(e), release=0.6)
    psonic.sleep(random.choice([0.25, 0.5]))
Esempio n. 6
0
def riff_2(tempo=1):
    psonic.sample(psonic.DRUM_CYMBAL_OPEN)
    psonic.sleep(tempo * 0.99)
Esempio n. 7
0
def play_notes(notes, s=0.15):
    for n in notes:
        d = 0.3 + random.random()
        ps.play(70 + n, release=d)
        t = ps.random.choice([0.125, 0.25, 0, 0.2])
        ps.sleep(t)
Esempio n. 8
0
import random
import psonic

# Challenge: write a loop that plays 128 beats, using the
# psonic.DRUM_BASS_HARD sample, that are each at a different
# pitch (from 1 to 10). Note that pitch is controlled by the "rate" keyword argument.
psonic.sample(psonic.DRUM_BASS_HARD, rate=1)
psonic.sleep(0.125)
psonic.sample(psonic.DRUM_BASS_HARD, rate=5)
psonic.sleep(0.125)
psonic.sample(psonic.DRUM_BASS_HARD, rate=8)
psonic.sleep(0.125)
def fourth_cycle(speed):
    print('fourth cycle...')
    for i in range(8):
        psonic.sample(psonic.DRUM_TOM_HI_HARD, rate=(i*0.5+1))  # rate raises the pitch
        psonic.sleep(0.125 * speed)
Esempio n. 10
0
# turns on the Blinkt LEDs with relevant colour


def show_led(led_num, led_colour, delay):
    r, g, b = led_colour
    blinkt.clear()
    blinkt.set_brightness(0.1)
    blinkt.set_pixel(led_num, r, g, b)
    blinkt.show()
    time.sleep(d)


# order of synth notes being played in the sequence
notes = [psonic.G4, psonic.A4, psonic.F4, psonic.F3, psonic.C4]

# limited by the 8 pixels so mapping synth notes to index
# FXCDEFGA
# 01234567

order = [6, 7, 5, 0, 2]

# overall loop
for d in delays:
    # iterate through notes in synth sequence
    for i, note in enumerate(notes):
        psonic.use_synth(psonic.SAW)
        psonic.play(note)
        psonic.sleep(d)
        show_led(led_num=order[i], led_colour=colours[i], delay=d)
def last_beat_default(speed):
    print('last beat default...')
    psonic.sample(psonic.DRUM_SNARE_HARD)
    psonic.sleep(0.25 * speed)
Esempio n. 12
0
import psonic

speed = 1.5
counter = 0
while counter < 8:
    # fourth cycle
    if counter == 3:
        for i in range(8):
            psonic.sample(psonic.DRUM_TOM_HI_HARD,
                          rate=(i * 0.5 + 1))  # rate raises the pitch
            psonic.sleep(0.125 * speed)
        counter += 1
        continue

    # default:
    psonic.sample(psonic.DRUM_BASS_HARD, rate=1)
    psonic.sleep(.25 * speed)
    psonic.sample(psonic.DRUM_SNARE_HARD)
    psonic.sleep(.125 * speed)
    psonic.sample(psonic.DRUM_BASS_HARD, rate=1)
    psonic.sleep(.25 * speed)
    psonic.sample(psonic.DRUM_BASS_HARD, rate=1)
    psonic.sleep(.125 * speed)

    if counter == 7:
        # last beat:
        psonic.sample(psonic.DRUM_CYMBAL_OPEN)
    elif counter % 2 == 1:
        # alternate second cycle ending
        psonic.sample(psonic.DRUM_TOM_LO_HARD)
        psonic.sleep(0.125 * speed)
 def tick_sleep(self):
     beats_per_sec = float(self.bpm / 60)
     tick_len = 1 / (self.ticks_per_beat * beats_per_sec)
     sleep(tick_len)
Esempio n. 14
0
def play_song(notes, speed):
    psonic.use_synth(psonic.PIANO)
    for note in notes:
        psonic.play(note)
        psonic.sleep(speed)
Esempio n. 15
0
def riff_2(tempo: float = 60):
    speed = 60 / tempo
    for i in range(3):
        psonic.sample(psonic.DRUM_HEAVY_KICK, rate=0.8)
        psonic.sleep(speed * 0.5)
    psonic.sample(psonic.DRUM_HEAVY_KICK, rate=0.8)
Esempio n. 16
0
SUPER_MARIO_NOTES = [
    76, 76, 76, 72, 76, 79, 67, 72, 67, 64, 69, 71,
    70, 69, 67, 76, 79, 81, 77, 79, 76, 72, 74, 71,
    79, 78, 77, 75, 76, 68, 69, 72, 69, 72, 74, 79,
    78, 77, 75, 76, 84, 79, 78, 77, 75, 76, 68, 69,
    72, 69, 72, 74, 75, 74, 72, 72, 74, 76, 72, 69,
    67, 72, 74, 76, 72, 74, 76, 72, 69, 67, 76, 72,
    76, 79, 67, 76, 72, 67, 68, 69, 77, 69, 71, 81,
    79, 77, 76, 72, 69, 67, 76, 72, 67, 68, 69, 77,
    69, 71, 77, 76, 74, 72
]

psonic.use_synth(psonic.PIANO)
psonic.play(HAPPY_BIRTHDAY[0])
psonic.sleep(0.25)
psonic.play(HAPPY_BIRTHDAY[1])
psonic.sleep(0.25)
psonic.play(HAPPY_BIRTHDAY[2])
psonic.sleep(0.25)
psonic.play(HAPPY_BIRTHDAY[3])
psonic.sleep(0.25)
psonic.play(HAPPY_BIRTHDAY[4])
psonic.sleep(0.25)
psonic.play(HAPPY_BIRTHDAY[5])
psonic.sleep(0.25)
psonic.play(HAPPY_BIRTHDAY[6])
psonic.sleep(0.25)
psonic.play(HAPPY_BIRTHDAY[7])
psonic.sleep(0.25)
psonic.play(HAPPY_BIRTHDAY[8])
Esempio n. 17
0
def play_base_beat(tempo: float = 60, sample=psonic.DRUM_BASS_SOFT):
    speed = 60 / tempo
    for i in range(2):
        if sample:
            psonic.sample(sample)
        psonic.sleep(speed)
Esempio n. 18
0
import psonic

c_arpeggio = psonic.scale(psonic.C2, psonic.MAJOR, num_octaves=4)
print(c_arpeggio)
psonic.use_synth(psonic.PIANO)

# play ascending arpeggio:
counter = 0
for note in c_arpeggio:
    if counter % 8 in [0, 2, 4]:
        psonic.play(note)
        psonic.sleep(0.2)
    counter += 1

# play top note:
psonic.play(c_arpeggio[-1])
psonic.sleep(0.2)


Esempio n. 19
0
# To get this program to work, you must do three things:
# 1. Install the Python psonic module using PIP:
#    pip install python-sonic
# 2. Install the Sonic Pi music program, downloadable at:
#    https://sonic-pi.net/
# 3. Make sure that Sonic Pi (the music program) is running

import psonic
# Note: psonic allows us to pass commands into Sonic Pi programmatically

psonic.use_synth(psonic.PIANO)
psonic.play(76)
psonic.sleep(0.25)
psonic.play(76)
psonic.sleep(0.5)
psonic.play(76)
psonic.sleep(0.5)
psonic.play(72)
psonic.sleep(0.25)
psonic.play(76)
psonic.sleep(0.5)
psonic.play(79)
psonic.sleep(1)
psonic.play(67)
psonic.sleep(1)