Play_pattern_timed problems

Hi everyone

I want to use play_pattern_timed [“and put chords here”], [“sleep numbers”]
I couldn’t find a way to put chords there.
Can you guide me please

Hi @Ko-peInefable - you’re almost there! Just put chords instead of notes :slight_smile:

em = (chord :e, :minor)
c = (chord :c, :major)
gm = (chord :g, :minor)

play_pattern_timed [em, c, gm], [1, 0.5]

You can also do this inline:

play_pattern_timed [[70, 75, 82], [68, 73, 80], [70, 75, 82]], [1, 0.5]

thanks @samaaron

I’m trying to use knit to repeat a chord several times but it appears to me as a ring null

em = (chord :e, :minor)
c = (chord :c, :major)

play_pattern_timed [(knit em, 4,c,4)], [ (knit 1,4, 0.5,4)]

Hi @Ko-peInefable,

For me, removing the array brackets around the rings works. Try this:

em = (chord :e, :minor)
c = (chord :c, :major)

play_pattern_timed (knit em, 4,c,4), (knit 1,4, 0.5,4)
1 Like

If you want to add some bass and other stuff

em = (chord :e, :minor)

c = (chord :c, :major)


live_loop :chords do
  use_synth :chiplead
  use_synth_defaults delay: 0.25
  
  with_fx :lpf do
    play_pattern_timed (knit em,3,c,2), (knit 1,3, 0.5,2)
  end
end

live_loop :bass do
  use_synth :fm
  use_synth_defaults sustain: 0.1
  use_octave -1
  with_fx :compressor do
play_pattern_timed (knit em[0],2,em[4],1, [c[3], em[2]].tick,3), (knit 1,3, 0.333333,3)
  end
end

live_loop :wwwwwwwaaaaaaaaaa do
  use_synth :prophet
  use_synth_defaults delay: 0.25, amp: 0.5, cutoff: 80
  use_octave -1
  with_fx :echo do
    #    play_pattern_timed (knit em[0],2, knit c[5],2), (1)
    play_pattern_timed (knit em[0],2, c[5],1, em[7],1), (1)
  end
end

@samaaron
thank you very much, now it is much clearer how to use this function

@ethancrawford
Now yes, I was having a lot of trouble with array brackets

@nlb
I didn’t know that you could do that. Thanks a lot

1 Like

Thats pretty cool Nlb… nice to see you posting music again.

I went a different route…

em = (chord :e, :minor)
c = (chord :c, :major)
d = (chord :d, :minor)

notes=(knit em, 4,c,4,d, 4,c,4).ring
sleeps=(knit 1,4, 0.5,1,0.5,1,1,4, 0.5,1,0.5,1).ring



live_loop :blade do
  #sync :metro
  use_synth :blade
  play_pattern_timed notes, sleeps * 1.75, amp: 2
end

live_loop :guitar do
  # sync :metro
  use_synth :pluck
  play_pattern_timed notes, sleeps * 2, amp: 2
end

live_loop :background do
  #sync :metro
  use_synth [:dpulse, :pulse].choose
  play_pattern_timed notes, sleeps
 
  use_synth :subpulse
  play_pattern_timed notes, sleeps
  
end

Eli…

hello @Eli
I think i can help more with technic stuff than music which is more personal preferences. :slight_smile:
In my example with bass, the idea is to show how to pick one note of a chord with its index.

Using variables is a good point to get more readable code. So your notes is indeed chords so progression_chords would be more significant no ?
Cheers