Looking for a lofi tape effect

Has anyone found a way to apply this kind of effect? I’ve been listening to a lot of lofi hiphop kind of stuff, and much of it has that “watery” tape sound. Not sure if I’m making this clear, but it’s a bit like a chorus pedal on the guitar.

I was also inspired by this plugin here. The difference being that the plugin costs US$129, and maybe there’s a way to approximate that same effect for free in SP!

1 Like

Hmm. Maybe not possible?

Hi,

well most of the differences on old tape audio was its not so well frequency resolution.
You could try setting a low-pass-filter and a high-pass-filter to simulate that (e.g. 30-15000Hz). Together with a bitcrusher effect and a bit of noise you should be able to create something similar. Haven’t tested it out :slight_smile:
But often a relatively high cutoff for a high-pass-filter already gives a quite good impression of lofi.

Cu.

A small example:

with_fx :hpf, cutoff: 40 do
  with_fx :bitcrusher, sample_rate: 15000, bits: 10, cutoff: 100 do
    sample :drum_heavy_kick
  end
end

You can play with the parameters and put a longer songpart into the effect (instead of the single sample).

Cu.

2 Likes

This gives me some relatively realistic lofi sound:

with_fx :hpf, cutoff: 30 do
  with_fx :bitcrusher, sample_rate: 30000, bits: 12, cutoff: 100 do
    sample :drum_heavy_kick
  end
end

Depending on how strong the “low quality” effect should be you can reduce the basses with a higher cutoff on hpf and distort the signal a bit more with lower sample_rates and bits.
Used some example song to set these parameters :smiley:

Cu.

4 Likes

Perhaps a flange/bandpass combo would get closer? Bitcrusher sounds a little “digital” to my ear—lo-fi in a different way.

# approximate tape with a combination of bandpass and flange...
with_fx :bpf, centre: 90 do
  with_fx :flanger, depth: 10, phase: 3,
  stereo_invert_wave: 1 do
    live_loop :guit do
      sync :dr
      sample [:guit_e_fifths, :guit_em9].choose,
        rate: [1/2.0, 2/3.0, 3/4.0, 4/5.0, 1].choose
      sleep 1
      
      # ... and a very quiet "tape hiss" synth
      n = synth :noise, amp: 0.03, sustain: 8.0, cutoff_slide: 8
      control n, cutoff: 90
      
      sleep 7
    end
  end
end

with_fx :reverb do
  live_loop :dr, delay: 0.01 do
    # delay makes the loop available for sync right away
    sample :bd_ada
    sleep 0.5
    
    sample :sn_generic, decay: 0.05, hpf: 70,
      amp: 0.1 if (spread 1, 7).tick(offset: 1)
    sleep 0.3
    sample :bd_ada, amp: 0.5 if (spread 1, 3).look(offset: 2)
    sleep 0.2
    sample :sn_generic, decay: 0.1, hpf: 70,
      amp: 0.3
    sleep 1.05 # a touch long, for that sleepy lo-fi sound
  end
end
3 Likes

Thanks! I had a feeling someone in this awesome community would have some ideas. Can’t wait to try them out. I was looking at the flange effect as a possibility, but I’m no expert on the params, so thanks again for the ideas!

1 Like

Played with the suggestions and thought, wait, why not the wobble effect? So I played with that and came up with something interesting. Not exactly what I was going for originally, but perhaps a happy accident:

live_loop :beats do
sample :bd_haus
sleep 0.5
end

live_loop :tune do
with_fx :wobble, mix: 0.8, phase: 0.25, cutoff_min: 40, cutoff_max: 110 do
 
  play 60
  sleep 0.25
  play 62
  sleep 0.5
  play 66
  sleep 0.5
  play 60
  sleep 1
end
end
1 Like

I like it - just jammed over it for a few minutes on guitar. Made for a nice work break and something to explore more later :slight_smile:

Throw in an ixi, mess with the synth, and it gets even more interesting. :slight_smile:

          use_synth :blade
  with_fx :wobble, mix: 0.8, phase: 0.25, cutoff_min: 40, cutoff_max: 110 do
    with_fx :ixi_techno, mix: 0.8, phase: [2,4,8].choose, cutoff_min: 40, cutoff_max: 110 do

Eli…

Here’s a full example, with a line of my own flair:

use_synth :blade

live_loop :beats do
  sample :bd_haus
  sleep 0.5
end

live_loop :tune do
  with_fx :wobble, mix: 0.8, phase: 0.25, cutoff_min: 40, cutoff_max: 110 do
    with_fx :ixi_techno, mix: 0.8, phase: [2,4,8].choose, cutoff_min: 40, cutoff_max: 110 do
      
      play 60
      sleep 0.25
      play 62
      sleep 0.5
      play ring(66, 66, 66, 66, 65, 65, 66, 66).tick
      sleep 0.5
      play 60
      sleep 1
    end
  end
end

EDIT: There’s also some fun to be had with the “detuning” synths (like dpulse) and the fm synths :wink:

3 Likes

Cool! I like the switching of the phase parameter, which gives a nice subtle effect!