Recreating the THX Deep Note (2009)
earslap.com
earslap.com
DEEPNOTE from NYSTHI for VCV Rack does this in a virtual modular environment. https://github.com/nysthi/nysthi#deepnote You could create this with other modules too, like E-Series E340.
There is a very good 20 000 Hz podcast on the creation of the THX Deepnote:
I have deepnote as an AC3 audio file, along with a lot of other sound clips such as the original Dolby Digital trailers (the steam train is my favourite), and when ever I'm tweaking the audio in my Home Cinema I always fire them all up and give the house a good shake :)
It's linked from this page, which has some other fun sounds: https://www.uspto.gov/trademark/soundmarks/trademark-sound-m...
https://hn.algolia.com/?query=Recreating%20the%20THX%20Deep%...
A few years ago I tried to implement what is shown on that page but without using something like SC, i.e. I was generating list of samples directly. I recall I was stuck trying to find how the 2nd order resonant Low Pass Filter (BLowPass [1]) was working.
Any good pointer to help me write it would be appreciated. I didn't spent much time reading SC source but I think it was not very clear for me without much sound synthesis knowledge.
Deriving the coefficients and the design is not simple. There is math.
https://ccrma.stanford.edu/~jos/filters/Two_Pole.html
A characteristic equation called the Transfer Function defines what a filter (actually any circuit) does using polar complex numbers to represent the frequency and phase of an arbitrary input signal.
Basically the TF says "If you put a sine wave in, the circuit will change its amplitude and phase like this" - across all possible frequencies.
Filters are usually designed with a combination of poles and zeroes.
Poles are low-pass building blocks. Zeroes are high-pass building blocks.
Poles are a polynomial on the denominator of the Transfer Function, zeroes a polynomial on the numerator.
When you have your continuous Transfer Function you apply something called a z-transform, which gives you a form you can turn into a difference equation, which is basically the core equation for the filter, and another set of equations for calculating the coefficients.
Instead of deriving this from scratch you use standard forms which you can find on sites like the JOS tutorial I linked to, and dspguru.com.
But you do need to have some idea how all of this works - and also when this nice simple model stops working. (E.g. digital filters have issues close to the sampling rate, so good designs compensate for this and don't just use the difference equation blindly.)
https://github.com/kbob/deep-synth
Specifically, look at experiments/deep-svf.c. If SVF is not defined, it uses a C translation of the Supercollider BLowpass2 algorithm. If SVF is defined, it uses a Chamberlin state variable filter (SVF).
https://www.youtube.com/watch?v=Rz1uNLHorEs
The little GUI allows you to change all the parameters, like the partials of the final chord and the range of the glissando for each voice.
But I think the sound would only "lock in" by recording an actual cello and using that for the source of the oscillator. (A friend of mine suggested a cello harmonic which seems right given the timbre of the opening texture.)
It sure sounds to me like the original algorithm sought to choose initial frequencies that would be farthest from the goal frequencies. In other words, a lot of voices traveling several octaves from low to high while others go low to high. But I haven't tested that.