Calling all brainy types

For a long time I’ve wanted a fairly realistic saxaphone in SP.

Although Robin (Newmans) methods of sample pitch-changing
do the job, they are fairly complex and resource consuming.

The best I’ve managed on my own is a fairly credible ‘clarinet’ (?)

So, I’m asking the more programatically inclined amongst us, is there
a way to get a saxaphone-type sound? without 100 lines of code. :slight_smile:

Here’s my clarinet, if it helps start you off… .

# Jazz Clarinet
# Eli...

use_bpm 90

clarinet_notes = (ring :d3, :e3, :d3,:a3, :d3, :g3, :a3, :e4)
clarinet_rhythm = (ring 0.25, 0.5, 0.25, 0.75, 0.25, 0.25, 0.5).shuffle



live_loop :clarinet do
  use_synth :fm
  if one_in(4)
    sleep 1
    next
  end
  
  if rand() > 0.75 then
    clarinet_notes = (ring :d3, :e4, :d4,:g4, :f4, :g3, :a3, :e4)
  else
    clarinet_notes = clarinet_notes.shuffle
  end
  deep = rrand(4,8)
  use_synth_defaults divisor: 0.5, depth: deep, attack: 0.05, sustain: 0.2, release: 0.2, amp: 0.2#*fade_through1.tick
  with_fx :reverb, room: 0.75, damp: 0.25 do
    play clarinet_notes.tick
    play clarinet_notes.look
    play clarinet_notes.look
  end
  sleep clarinet_rhythm.look
end

live_loop :double_bass do
  with_fx :lpf, cutoff: 60 do
    use_synth :chipbass
    use_synth_defaults release: 0.3, amp: 0.6
    if rand < 0.75 then
      play_pattern_timed chord(:c1, :M7), 0.5
    else
      play_pattern_timed chord(:a1, :m7), 0.5
    end
    if rand < 0.75 then
      play_pattern_timed chord(:d1, :m7), 0.5
    end
    play_pattern_timed chord(:g1, :dom7), 0.5
  end
end

Eli…

2 Likes

It would be cool to be able to make a realistic sax sound in Sonic Pi. It might be necessary to write a SuperCollider synthdef to get something good, but even then it might not be easy. I had a bit of a look but couldn’t find anything decent already existing. I did find a discussion about synthesising a sax here, but haven’t had time to read through and see if there’s enough useful info in there to get started.

I do like your clarinet, you’ve done a good job tweaking the fm synth to get a pretty realistic sound!