TapeHack
TL;DW: TapeHack is a new dimension in tape realism, abstracted to software.
TapeHack in Airwindows Consolidated under ‘Tape’ (CLAP, AU, VST3, LV2)
TapeHack.zip (491k) standalone(AU, VST2)
It started with a paper by Spencer Walters, on this subject: what’s the role of hysteresis in magnetic tape recording? We tend to assume that’s fine, we’re making it linear, apart from all the soft saturation of course. Even then, that’s not quite where it starts: it’s research on Dolby HX-Pro that got Spencer thinking. I’m not sure the Dolby people quite understood the implications of what they had, as that was an era of ‘remove all distortions’.
Gradually, Spencer started to figure out what he had, and Spencer wrote a paper, talking of magnetic flux and relative coercivity and hysteresis loops. I frankly don’t have the math he does, but I worked with analog tape growing up, and have a good idea of how it responds. And there was this set of diagrams, of a 1kHz wave magnetizing tape, and what you actually get out of it without and with tape bias…
It showed there was a dead spot, if you didn’t bias. Well, I knew that: I’d coded something like it into ToTape 7 and 8, letting you dial in a section of Type AB distortion if it was ‘underbiased’. But look again: that dead spot is still there, if you bias. The recording is sweeping back and forth across it at 100 kHz, but it doesn’t stop that dead spot, where magnetic tape’s coercivity hasn’t kicked in, from still existing. You’re just keeping it way busier than before, but a 100k wave still has to sweep through zero each cycle.
What if this dead spot was central to tape sound as we know it? What if there’s always a hint of it, a bit of antisaturation in there at the opposite dynamic extreme from TAEP PHAT, as shown in Spencer’s diagrams? More importantly, could I code something like that?
Sure could :)
TapeHack does a number of interesting things due to what I came up with. First, it’s very efficient: it’s a simpler, lower-CPU form of a sin() function, so it has the softclip nature. It’s made to have this ‘extra zone’ by manipulating how an approximation of sin() is made, so I can also do variations on it and asin() and combinations of them, for the purposes of future Console versions. Doing that tends to take away the saturation effects, so there would be additional layers of TapeHack for making ‘vintage consoles’ sound as we experienced them.
The differences in waveform can be described. Unlike sin(), TapeHack hits a soft saturation point and then takes the flat top and begins to extend it, while turning the ‘quiet part’ of the wave into more of a trapezoid shape that’s remarkably persistent in its slope. The steepening curve of the soft-clip gets sharper and sharper while these other factors stay relatively consistent.
As a result, TapeHack does ‘tape compression’ better than anything I’ve ever made, full stop. Turns out you can make sharp softclip corners, but we hear ‘brighter’ as a function of how much more steeply that center part of the waveform slopes. It’s heard as a shockingly believable ‘tape bark’ on things like drums, it’s heard plainly when you run a heavy guitar sound hot to ‘tape’ to make it sit more up-front, but just as importantly, it livens up a more quietly ‘recorded’ track by giving it that characteristic dynamism and optimal distribution of peak energy.
A side note: I’ve posted classic vinyl records and measured them, tracking peak vs. RMS energy, as that’s been my own parallel pursuit of what went on in those very sonic Seventies, when things just sounded better to me. A common factor is WAY more emphasis on peak energy and crest factor, with it persistently sitting much better dynamically than digital accuracy gives you. Well, this lines up with that observation exactly. Applying this hysteresis (or, like with TapeHack, just using the transfer function directly) produces both the peak distribution and the desired sound.
I’ll be using what I learned in TapeHack for many things. Hope you like it!
Airwindows Consolidated Download
Most recent VCV Rack Module
download 64 Bit Windows VSTs.zip
download Signed M1/Intel Mac AUs.dmg
download Signed M1/Intel Mac VSTs.dmg
download LinuxVSTs.zip
download LinuxARMVSTs.zip for the Pi
download Retro 32 Bit Windows VSTs.zip
download Retro PPC/32/64 Mac AUs.zip
download Retro PPC/32/64 Mac VSTs.zip
Mediafire Backup of all downloads
All this is free and open source under the MIT license, brought to you by my Patreon.
[‘”Hot for Teacher” outro voice] OHH my GOD
“… I think that speaks volumes.” I see what you did there!
I’m tempted to experiment using this on some old multitrack live rock recordings to recreate a raw straight-to-tape sound…
One of the most analog sounding plugins out there. Congrats Christ
Extremely interesting work as always Chris – a bit outside my engineering and technical understanding, but I think I get the concept and am very excited to try it out and hear. The many iterations of your Tape is likely under-heralded, relative to how many sessions throughout the world it has been used in over the years
I’m working on this project where the DI guitars are not clean but recorded through a pedal board. The guitar player wants his vintage preamp and boutique distortion and quick on/off delay accents imprinted to the tone before amplification. Clean amp and cabinet choice he does not care for. Two re-amp sessions with actual amps turned out crappy and then I tried every possible amp sim. There’s only one in my book that handles real pedals perfectly well: PointyGuitar. Followed by a tape sim. And now, here’s the best tape sim I’ve heard so far for my purpose of beefing up and smoothing down guitars in the most authentic fashion: TapeHack. Add a decent room on a send at low level, and oh my god, do these guitars come alive again! Be brave and think differently, re-amp guitars through PointyGuitar and TapeHack and thank Chris immediately! Thank you, Chris!
This is easily one of the best tape simulation plugins out there. I can tell you that this has added infinite flexibility and realism to my mixes in just the short time I’ve used it.
I do wonder, though. Will you eventually implement this into another version of Tape so that we can adjust the bias, tape speed, and whatnot? I don’t mean to rush because you clearly spend a lot of time and put a lot of effort into your work, but I find myself needing to mix this along with Tape or ToTape or what have you so that I can replicate a real tape machine more closely. This definitely works, but I’m unsure if this is how you intended us to use this.
Keep it up! You’ve really done the world a favor! Not everyone can afford a Struder or Otari!
Hello, Chris! Could you tell me, please, what should I do to have your plugins with GUI like in your videos, because I have just a raw GUI with values and nothing more?…
Would this perhaps be closer to cassette than the others? I beg for Airwindows cassette, O what a fun time that would be
Until then this satisfies😅