Celtic Tune : The Ash Grove

Hi to all, this is a Sonic-Pi’s interpretation of a traditional Celtic tune named “The Ash Grove”. Hope you enjoy it!

    # Title: The Ash Grove
    # Artist: Mattia Giovanetti
    # Date: 2017
    #
    # Sonic Pi v3.1


    a = [72,76,79,77,76,72,72,74,77,76,74,72,71,67,67,72,76,74,72,71,69,65,69,67,72,71,72]
    b = [1,1,0.5,0.5,1,1,1,1,0.5,0.5,0.5,0.5,1,1,1,1,0.5,0.5,0.5,0.5,1,1,1,1,1,1,2,1]
    c = [60,67,64,60,67,67,65,69,69,55,62,53,52,67,67,53,57,60,55,62,65,64,60]
    d = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2]
    e = [79,76,77,79,81,79,77,76,77,74,76,77,79,77,76,74,76,72,74,76,77,76,74,72,71,79,81,79,67]
    f = [1,0.5,0.5,0.5,0.5,1,1,1,1,0.5,0.5,0.5,0.5,1,1,1,1,0.5,0.5,0.5,0.5,1,1,1,1,1,1,2,1]
    g = [60,67,67,64,62,60,59,67,67,62,60,59,57,69,69,60,59,57,55,67,66,67,55,65]
    h = [1]
    voceA = :pluck
    voceB = :pluck

    #use_bpm 112 #3/4
    use_bpm 168 #6/8

    define :rit_A do
      in_thread do
    use_synth voceA
    play_pattern_timed a,b, release: 105
      end
      in_thread do
    use_synth voceB
    play_pattern_timed c,d, release: 10
      end
      in_thread do
    8.times do
      sample :drum_bass_hard, rate: 0.75
      sleep 2
      sample :drum_bass_soft, rate: 1.25
      sleep 1
    end
      end
      in_thread do
    8.times do
      sample :drum_cymbal_soft, amp: 0.25, rate: 0.75
      sleep 1
      sample :drum_cymbal_soft, amp: 0.125, rate: 0.75
      sleep 0.75
      sample :drum_cymbal_soft, amp: 0.125, rate: 0.75
      sleep 0.25
      sample :drum_cymbal_soft, amp: 0.125, rate: 0.75
      sleep 1
    end
      end
      in_thread do
    with_fx :flanger, phase: 3.75 do
      use_synth :fm
      play_chord [48,55], attack: 0.25, decay: 1, sustain: 21, release: 0.75, amp: 0.25
      sleep 23
    end
      end
      sleep 23
    end

    define :rit_B do
      in_thread do
    use_synth voceA
    play_pattern_timed e,f, release: 10
      end
      in_thread do
    use_synth voceB
    play_pattern_timed g,h, release: 10
      end
      in_thread do
    8.times do
      sample :drum_bass_hard, rate: 0.75
      sleep 2
      sample :drum_bass_soft, rate: 1.25
      sleep 1
    end
      end
      in_thread do
    8.times do
      sample :drum_cymbal_soft, amp: 0.25, rate: 0.75
      sleep 1
      sample :drum_cymbal_soft, amp: 0.125, rate: 0.75
      sleep 0.75
      sample :drum_cymbal_soft, amp: 0.125, rate: 0.75
      sleep 0.25
      sample :drum_cymbal_soft, amp: 0.125, rate: 0.75
      sleep 1
    end
      end
      in_thread do
    with_fx :flanger, phase: 3.75 do
      use_synth :fm
      play_chord [48,55], attack: 0.25, decay: 1, sustain: 22, release: 0.75, amp: 0.25
      sleep 23
    end
      end
      sleep 24
    end

    with_fx :reverb, mix: 0.75, damp: 1 do
      with_fx :echo, mix: 0.06, phase: 0.66, decay: 4 do
    2.times do
      use_synth voceA
      play 67, release: 10
      sleep 1
      rit_A
    end
    1.times do
      use_synth voceA
      play 76, release: 10
      sleep 0.5
      play 77, release: 10
      sleep 0.5
      rit_B
      rit_A
    end
    sleep 1
    sample :drum_bass_hard, rate: 0.75
    sleep 1
      end
    end

www.mattiagiovanetti.com

3 Likes

Certanly did,

Eli…

1 Like

Very nice. Loved it!

1 Like

Thank you Robin! Glad you enjoy that!