31 comments

[ 2.5 ms ] story [ 89.5 ms ] thread
Isn't the ability to back out of the stack context basically half the point of stack operations? Without the LIFO behavior, it's not really a "stack" in any computational sense.
You definitely can pop off the last layer in the loop stack, but my particular pedal seems to require another accessory in order to be able to do that (there's a separate pedal you attach to this one).
I've enjoyed my Boss RC-50 (a nice upgrade to the RC-20 I had prior) as a live-looping guitar + vocals pedal for years. It makes it easy to create and layer loops, even when only using the built-in foot controls. Highly recommended.
I loved the song video in this post and it’s inspired me to try a little of this. Is there a good software solution for this? (Bonus points for Linux support)
I like the suggestion of the analogy in general. But a metaphor I'd use is a feedback system with a very long delay and very low decay constant. So definitely cyclic from that perspective! The signal chain is often split by guitarists with a dedicated A/B box too. So a fuller analogy would be a more complex pipeline.
Yeah, my analogy is definitely hampered by my novice-level guitar chops.

I'm definitely intrigued by the idea of better understanding these complex signal pipelines. In fact, a usesthis.com style website that shows the pedal box arrangements and signal flow diagrams for various guitarists would be a website I'd quite enjoy visiting.

Not guitar-oriented, but modulargrid.net has some big people on it (often obscured for security purposes).

You can occasionally see guitarists' signal flows and stopbox arrays in interviews etc, but the truth is usually obscured by prestige, sponsorship concerns, and the logistics of touring.

Thank you for this.

I am currently bread-boarding two guitar pedals for myself, and there is great discussion on modulargrid.net on filtering.

> You can occasionally see guitarists' signal flows and stopbox arrays in interviews etc

It's amazing how much influence these interviews have. They have, in the past, directly led to surges in demand for, e.g. the Klon Centaur and variacs.

Trust me, people in the pedal-making industry know exactly how much influence those interviews have, and that's why they put so much effort into making those artists happy.
They don't make them "as happy" as you might imagine. Even a guitarist that is good enough to do European tours and get an endorsement deal will get discounts of 20% (on pretty expensive stuff for which they would have to fork out 2000 euros), maybe 30% on bespoke instruments that cost even more.
I'm not imagining, but a 20% endorsement deal and (in the cases I know about) a much more direct line to an artist rep for customer support in lieu of going through the customer support process isn't too bad.

Hell, I've gone to shows for the sole purpose of hand-delivering the artist a replacement product.

On the contrary, I personally think the suggestion is a useful thought exercise.

There are a lot of interviews in Guitar magazine on the total rig used by particular guitarists. For example: https://guitar.com/wp-content/uploads/2020/09/rig-diagram-Ma...

Of course, this includes the whole signal chain, including the pick!

I find this one fascinating:

https://www.youtube.com/watch?v=f4ECPsHpI_Q

Jon Gomm's pedal board - set up for his acoustic guitar which has 3 different pickups all sending seperate signals to his pedal board, and with different eq and effects applied to each pickup.

(And to see an amazing performance of that in use, see here: https://www.youtube.com/watch?v=5vCcZIARw9k )

Thanks for that! This is right up my alley. The signal separation makes sense, as the three pick-ups each provide a different sound, but none emulate the live experience quite so well.

The under-the-saddle piezo acts as an accelerometer right at the termination point of the string. So it gets every partial without any real damping, so they tend to sound far too bright. You're directly picking up vibrations that tend to be damped by the time they go through the impedance matching system that is a live guitar (i.e. acoustic radiation from a few feet or more in front of the soundboard). Fishman often roll their piezos off a lot to de-emphasize the upper partials, because it sounds so bright.

The humbucker is effectively a velocirometer, and is around a quarter of the scale length along, so it sounds a lot more mellow than the piezo, but picks up on different things. It also doesn't get the damping that the string-wood-air interface tends to bring, and also doesn't pick up on the neat interactions the instrument has with the internal and external air elements (for example, the Helmholtz and pipe modes of the air in the internal cavity).

The internal mic does sample the interaction the guitar has with the air. But it misses out on the higher radiation modes, which tend to be radiated out the front of the guitar. So it sounds very 'boomy'. It's convenient, for a mic, but doesn't sound great by itself.

In combination, these sound pretty good! But still doesn't emulate the 'real thing'. Hence Jon also mentions the use of external mics too. That, in addition to the separate channel for the octave pedal!

During one of my daily perusals of the YouTubes I came across KT Tunstall[0] going into detail on how she does live looping for her shows. Apparently, I'm not up on the pop scene, she's pretty well respected as one of the best 'loopers'.

[0] https://www.youtube.com/watch?v=liOOHp61nZE

I don't want to be dismissive of any musician's practices and work, but I couldn't really see much evidence in that video or a quick YT search for KT Tunstall as a really good looper.

If you want to get an idea of how far you can go with live looping, this is one of my favorite videos (Rico Loop wandering around Berlin with looper, a mic and not a whole lot more).

https://www.youtube.com/watch?v=CWc3W8WgFWw

I built a homemade multitrack looper using Ableton and a custom Max4Live plugin. It works similar to a looper pedal, but (1) it gives you random access to all loops instead of just the top of the stack; and (2) it keeps every audio stream on its own channel, so you can route drums to a PA system, guitars to an amp, etc, instead of having everything go to a single output.

Here's some riffing I did on the Stairway to Heaven solo that showcases it: https://freerobby.wistia.com/medias/vcajgqerla

http://essej.net/sooperlooper/

If it appears "dead", that's mostly because it's essentially finished. It has all the features you've mentioned above, and then a whole lot more. All open-source and GPL'ed. Also fully controllable from e.g. MIDI pedal boards or OSC applications.

I've used SooperLooper too! It reminds me a lot of (and seem to draw a great deal of inspiration from) the Gibson Echoplex.

I like working within Ableton for a few recording workflow-related reasons but agree SL is fantastic as a standalone tool.

The article doesn't describe a stack. The closest thing is progressive bitwise OR operations on a ring buffer, good until your whole ring buffer is filled with 1s.
This does seem like a better analogy. The visual display on this particular loop pedal is a ring, as well. I'm going to think more about this!

[edited: added word "pedal"]

Assuming a typical audio encoding, each time around the loop the new sample value is added (arithmetic add) to the previous value, not bitwise OR. The mean value of a sample is zero, so you can do this forever. (Idealized. In practice you actively normalize to avoid overflow/clipping).
I guess it's a stack in the sense that each additional loop is being pushed onto a stack of sorts. This is how the Ditto looper I use works, and you can even perform the "pop" operation and back out of an additional layer.

I'm working on a digital delay pedal at the moment, and the underlying data structure is really similar in principle to a looper in that it's a ring buffer that continually loops around (although a bit more complex since the delay time can change!)

In actual production loop pedals I'm sure there's optimizations that can be done, but a naive implementation of the layering would just mean creating additional buffers for each layer, and keeping the read/write pointers sync'd between all of them. The output then just becomes a mixed version of all of the loops.

When a phrase extends beyond the loop length and repeats over itself, the buffer for that given layer would read the existing value and write a mixed version of the two signals.

I worked on this for a while [1], it was quite satisfying to combine electronics, SW and music in single hobby project.

My looper had sort of git model with staging area and committed area. Both staging and committed loops were mixed down to output. You could re-record over staging area as many times as you wanted until you were satisfied, then you could mix it down to commited loop. It's like stack but only top-most loop is changeable. That model provided infinite loop overdubs, ability to undo mistake, and used only x2 memory.

Regarding your delay effect, I was quite fascinated by how analog delay pedals allowed live-changing of loop length and the resulting effect it would produce [2]. I researched into the bucket brigade IC, quite interesting stuff. I think in digital you'd have all kinds of nasty glitches if you tried to do it with simple pointer modifications.

[1] https://github.com/jmiskovic/DSPedal/ [2] https://www.youtube.com/watch?v=xJPde-C28iU

I love the idea of a "staging area"! That's a very smart and maps 1:1 with the behavior on most loopers I've used. Anything else would require nearly unbounded memory, and memory is easily the most expensive component of any looper.

The repitching effect happens because the output from the ring buffer is effectively being resampled. Implementing this is a little funky, but with some clever tricks in how the ring buffer is used and some form of interpolation, you can get essentially the same effect.

Here's my implementation, which uses Hermite interpolation: https://github.com/eric-wood/delay/blob/main/src/delay.rs