Anybody have an idea of how to make an effect in Pd that would work like an analogue tape loop with a record head and play head and adjustable speed? I know there are delay effects possible that are very similar to this but they don't achieve a specific thing I am looking for which is the way the sound changes according to the speed of both the recording and playing - i.e. if the tape speeds up the loop goes faster (and higher in pitch) but the overdubbed recording continues and plays 'normally' at the adjusted speed (although with a shortened loop length). When the tape is then slowed back to normal what has just been added to the loop will drop in pitch and play slow. And an inverse effect would come about if the tape ran slowly or came to a stop (hence the squeak at the beginning of old recordings, as the tape goes from 0 up to it's speed across the record head)
Is this a matter of creatively manipulating delay lines? Or sampling rates? I can't perform the mental gymnastics to see how this could be achieved without a variable write speed.
-
Tape loop effect
-
@beem No time to check right now...... but...... I remember this will do that..... bucket_brigade_delay.pd
It needs a later vanilla but that can probably be changed.
And it needs [ipoke~]
This is all I have for [ipoke~].... 32/64bit system dependant with a makefile.......... but you might be able to do something with it....... or maybe it has had a recent update....... ipoke~.zip
David. -
@beem The thing that's throwing me is your requirement to be able to stop and start the tape. It's been a while since I played with a Space Echo or Echoplex, but I don't remember being able to stop the tape--just adjust its speed from some min to max. Am I wrong?
-
@whale-av thanks for that. i don't know how to use a makefile but i'll look into it. if anyone has a readymade mac version of ipoke~ that would be handy
@jameslo actually the stop start thing is not so essential as all that - i just mentioned the effect you get when you slow the tape right down while recording and get the squeak as it plays so people know what i'm talking about regarding the effect of speed changes. Also I'm just thinking of tape loops on old reel-to-reels (which you could just slow or bring to a stop by hand) rather than the echoplex etc
-
@beem I didn't look at David's contribution, but to me it sounds like you want a delay line with adjustable feedback from a variable tap (delread4~). The delay amount simulates the tape speed. I never did this with a real reel-to-reel, but the erase head would have been engaged in record, so the fact that the tape is in a loop is irrelevant, no?
-
@beem I think it should be as easy to compile for a mac as it is for Linux.
From a terminal...... cd into the src folder..... and then type make and press return.
You can look inside the file "makefile" first..... but I don't see anything extra that you would have to do for "make" to work on osx.
You should then have a ipoke~.pd_darwin binary made for your system.
Put it in a startup path and [ipoke~] should create.If you want to see if it is worthwhile and you have a copy of 32-bit vanilla (0.47) you can test the patch using the .pd_darwin already compiled in the zip.
David. -
@jameslo it's not quite that effect - with a delread the loop is resampled and degrades as it speeds up and is slowed down again and the variable write speed isn't achieved either. It's been a long time since I used the reel-to-reel but I have a vague memory of putting a bit of card or tape over the erase head.
@whale-av thanks! i'll try that
-
@beem Ok..... it does what you want apart from the squeak at the beginning...,... but I don't remember the Echoplex or the Roland space echo doing that..... (If you don't like it I still have some tape loops for the Roland). It could have been tape hiss rapidly changing pitch I suppose.
Somewhere I should have a recording on reel-2-reel of John Martin doing the whole Pink Floyd thing on his own through an Echoplex...... 1971 I think..... but I no longer have a tape machine....
I have modded it to be able to change the tape loop length........ space_echo.pd
You can erase the whole loop if required........ [const 0(
You can reduce the speed to zero.
You can run the tape backwards........ a new feature....
Credit to @mjhbrowne for the original......... https://forum.pdpatchrepo.info/topic/10972/distorted-sound-trying-to-simulate-a-bucket-brigade-delay/3
Credit to @katjav for [ipoke~]
David. -
@whale-av this is FAR OUT! thanks a lot!