ValhallaShimmer Tips and Tricks: Bloom

The Alesis Midiverb II featured a unique reverb algorithm, which Keith Barr labeled “Bloom.” From the Midiverb II manual:

Programs 45 and 49 are extraordinary variations on the reverse reverb theme. They are exclusive Alesis programs that are unobtainable in any affordable signal processors other than MV II. They are named Bloom and have an envelope that rises (blooms) to a rich and highly diffuse reverb with a smooth decay. These are the ultimate for ethereal effects and long, slow introspective musical passages.

The architecture of ValhallaShimmer lends itself nicely towards emulating the Bloom algorithms of the Midiverb II. A screenshot of the settings:

The key to the emulation is to combine Diffusion of 0.5 with a fairly high feedback setting, and use the reverb mode and size control to tune the attack time of the reverb.

  • In the above example, the mediumStereo mode is being used, as it has a fairly lengthy attack with this diffusion setting. This will sound the closest to the original Midiverb II Bloom algorithms.
  • The bigStereo mode can give you super long attacks, as will the mono mode.
  • The smallStereo mode doesn’t have enough density to get this effect – it will sound like a diffuse echo with a Diffusion setting of 0.5.

The Midiverb II Bloom algorithms didn’t use modulated delays, probably due to cost restrictions of the hardware. Adding modulation to the above settings results in a beautiful, washy soundscape, that works well for ambient synthesizer and guitar.

Keith Barr talked about using allpass coefficients of 0.5 in the original Midiverb (due to this being an easy value to get with bit shifts), and that people complained about the reverb taking too long to build. My guess is that Barr created the Bloom algorithms for the Midiverb II in order to take advantage of this “flaw.” Apparently My Bloody Valentine used the Bloom patches a lot – recent photos of Kevin Shields’ rig show two Midiverb IIs in there.

RIP Keith Barr

I just read on Matrixsynth that Keith Barr passed away. He was 61 years old.

Keith Barr was one of the co-founders of MXR, back in 1973. After MXR, he founded Alesis. Most recently, he designed the FV-1 chip for Spin Semiconductor, as well as many of the excellent quality reverb algorithms featured on that chip’s ROM and the Spin Semiconductor website. Barr was both a hardware and software developer, and made the transition from designing such classic analog pedals as the MXR Distortion+ and Phase 90 to the digital hardware used in such low cost yet high quality boxes as the Microverbs, Midiverbs, and Quadraverbs.

I was lucky enough to enter into an email exchange with Mr. Barr back in late 2008. In one of the emails, he gave a detailed description of the development process of the Midiverb:

You seem to be collecting stories about reverb development, so I have one for you. If its boring just skip over it. There’s about 6 things I’ve done in my life that I thought were really clever, but as it is with technology, either folks don’t understand or if they do they don’t care, and as technology marches on something better is surely to emerge. This is one of them that I always look back upon fondly:

MIDIVERB:

After playing with a monster machine I built with a bank of commercial SRAM and a 16 X 16 multiplier chip ($100 !), I found that there didn’t seem to be a secret to reverb, just the need for a few simple operations. I put the monster aside, along with my dreams of standing at the side of Lexicon, and returned home to the down and dirty music store… I decided instead of making the world’s coolest reverb, I’d make the world’s cheapest one. I never felt comfortable with the swells in the first place. The $100 multiplier offended me! Although I never really liked beer, I didn’t like Champaign either… As a poor kid, I had learned to make much from sticks and string.

At the time (early 80s) we had 32K EEPROMS and 64K DRAMs that were organized as 16K x 4. Also, HC logic was exploding, and I could get octal registers and both inverting and non-inverting octal tri-state buffers. I immediately put tape to Mylar on my rigged up light table, a discarded old window propped up by a single tube fluorescent light at the back, C-clamped to my white drafting table. God I loved that way of doing things. It was with your hands, earthy, soulful, it was art.

The DRAM required 2 addressing cycles, ROW and COLUMN, each 7 bits wide. I developed a system that fetched 2 bytes from the EEPROM and used the lower 7 bits of each as row and column addresses, after passing them through an 8 bit adder which summed the last values of ROW and COL with the new ones. –This eliminated an address counter, as the code simply expressed the next address relative to the previous address. Of course I had to allow for this in the code assembler (written on an 8 bit CPM machine), because the total of all address offsets needed to be just one more than the total address space, so that every time ‘around’ it would appear as though an address counter was actually present! As I recall, it was 2×4 Bit adders, 2 octal registers (w/ tri state outputs) and ½ a dual flip flop to store the carry in the math operations.

Then I had two left over bits to actually control the thing, and I decided to make one to control write operations and the other to control reads, so I had a DRAM write signal immediately! The final control bit was the magic: The write ops were to 1) write the accumulator (16b) to DRAM and add this value times 0.5 to the accumulator, or 2) write the accumulator to DRAM and add this value times -0.5 plus the result of the last read op to the accumulator. The read ops were to 1) read DRAM times 0.5 and load to the accumulator or read DRAM times 0.5 and add to the accumulator. That was it, just 4 instructions. As I recall, the hardware was 2x octal inverting buffers, 2x octal non-inverting buffers, 4x octal registers, 4x 4 bit adders, 4x 4 bit muxes and 4x 4 bit XOR gates to handle any overflow (saturation limiting).

It was a 128 op machine, which required 256 EEPROM accesses per sample cycle, right on the edge of what the EEPROM and adders could handle.

A 2 tick AP was possible, but I don’t have one here and I can’t remember all of the details, especially about the exact wiring of the second write op. Most coefficients would be 0.5 of course, and we had a few comments about how the reverbs had a ‘building’ effect as a result of APs with K=0.5. Oh well… They bought about 5,000 every month for about a year though, which gave a good start to my new company! –You could build a box for $100 and sell it to a dealer for $240 back then, and I don’t know from where, but $400 would leap out of pockets at guitar stores!

I wrote the assembler in assembly on the Z80 microcomputer (2 8” floppies, no HD) with a Soroc terminal, a wonderful old combination that had earlier produced commercial drum machine code and stored and edited the drum sounds from analog tapes with a home built ADC/DAC plug-in board. Actually that system produced a lot of stuff that never was built…

A later version of the engine was produced in a gate array, as I recall it was 2K gates! Still later versions of the product allowed the 8051 controller to generate LFOs that would update the code (SRAM replaces EEPROM) on a sample by sample basis to sweep delays, generate chorus and so forth. –Even did 4 point interpolation in the process!

END OF STORY

Thought you might want to add that to your collection,

Thanks,

Keith

In another email, Keith gave a brief description of the basic reverb topology he preferred to use in his later reverb designs:

I really like 2AP, delay, 2AP, delay, in a loop. I try to set the delay to somewhere a bit less than the sum of the 2 preceding AP delays, which are of course much longer than the initial APs (before the loop).

Yeah, the big loop is great; you inject input everywhere, but take it out in only two places… It just keeps comin’ new and fresh as the thing decays away. –If you’ve got the memory and processing!

Keith also went into a great deal of detail about his reverb designs on the Spin Semiconductor forum. I’d highly recommend reading all of his posts on that forum. In addition, Keith wrote a series of “Informal Notes” about the FV-1, that are invaluable for anyone interested in audio DSP design. One of my favorite parts of those notes is a drawing of the basic reverb topology that Keith arrived at after years of research:

In the drawing, you can see the 2 allpass, 1 delay “unit” that Keith used as his basic building block. The resulting sound would be quite “open,” with somewhat less initial echo density than the various Lexicon algorithms, but with a wonderful build over time. Combine such a structure with the modulated allpass delays that Keith often used, and you have a reverb that is ideal for ambient music. Artists such as Autechre, Aphex Twin, Labradford, and Roy Montgomery made heavy use of Alesis reverbs in constructing their ambient soundscapes.

Keith Barr’s pioneering work in reverb software and hardware design is one small aspect of the hugely productive life he led. He was a pioneer of audio effects, digital recording, affordable drum machines…the list can go on and on. An overview of Keith Barr’s life and accomplishments can be found at Mix Online. He will be missed. Rest in peace.

Early examples of modulated reverbs

I have been trying to track down good sonic examples of a modulated reverb in action. Here’s a few that come to mind:


Vangelis, “Creation du Monde,” 1973. This is an interesting example of a home-brewed modulated reverb. Vangelis used 3 Roland Space Echos in series, processing a Hammond organ and Clavinet, to get the huge spacey sounds in this track. The old Space Echos (and other tape echos) tended to have a fair amount of wow and flutter, due to imperfections in the tape, slipping and sticking of the capstan, and so on. By applying feedback in a single tape echo, the result is a modulated echo sound, where the amount of modulation increases with each passthrough of the system. Run three of these in series, and the result is a LOT of pitch modulation.


Harold Budd and Brian Eno. “First Light,” 1980. The modulation of the EMT250 can be clearly heard on this track from “The Plateaux of Mirror.”


Jeff Buckley, “Hallelujah,” 1994. Buckley’s guitar is being run through an Alesis Quadraverb, which has several really nice modulated reverb options available (and a lot of noise, at least on my Quadraverb). The vocals sound like a modulated reverb, but I am unsure of which unit – a high end Lexicon seems likely.

I know that there are a lot more, but I am kind of forgetful today. Any suggestions welcome.