Graillon 1.0, VST effect fully made with D

Ola Fosheim Grøstad via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Sun Nov 29 05:21:52 PST 2015


On Sunday, 29 November 2015 at 12:40:30 UTC, Guillaume Piolat 
wrote:
> On Sunday, 29 November 2015 at 12:28:49 UTC, Ola Fosheim 
> Grøstad wrote:
>> The sound samples sound quite a bit like the classic vocal 
>> sound of Infected Mushroom to my ears, which is cool.
>
> Infected Mushroom released another plugin recently: 
> http://www.musicradar.com/news/tech/infected-mushroom-present-the-i-wish-granular-note-freezing-plugin-631043

Hmm, yes, that looks like a simple loop algorithm. One can do 
interesting things with simple effects, like zero-crossing 
slicing. Btw, I recently found out that an ex-colleague of me has 
created a song with them called "Nerds on Mushrooms", IIRC he is 
quite fond of the vintage game music soundscape.

>> I assume you are using a peak detector to get the consonants 
>> through and granular synthesis to do the frequency shifting in 
>> the time domain?
>
> It's a pitch-tracking poly-Bode-shifter. The pitch tracking 
> part is secret(tm).

I remember the electro acoustic people here in Oslo (NoTAM) doing 
live pitchtracking 20 years ago, I believe they used an envelope 
follower of some sort. Just measuring the distance between the 
tops? That was to have the "electronic accompaniment" follow the 
lead of the vocalist I believe.

>> Maybe something like this for transients, or perhaps something 
>> less involved?
>>
>> http://recherche.ircam.fr/anasyn/roebel/paper/icmc2003.pdf
>
> The phase vocoders of IRCAM are very impressive at work, they 
> have.

IRCAM has done a lot of interesting things. In the 90s they had 
the IRCAM workstation which was a NeXT cube with lots of DSP card 
so that you could run Max real time.

> But it has different latency characteristics, overlapped FFT 
> easily goes into the 20/30 ms.

It depends on how low down in frequency you need to go, a female 
voice is at 160 hz and up, and a child is at 250hz and up. In 
that frequency range one could do better. And at the cost of 
complexity you could use two FFTs, one for the lower range and 
another for the higher range.

Or maybe one can use wavelets, but I don't know much about 
wavelet transforms (they don't map to cosine, so imagine it will 
be much harder to do well).



More information about the Digitalmars-d-announce mailing list