Csound Csound-dev Csound-tekno Search About

[Csnd] Exciters

Date2012-01-08 01:59
FromAlex Weiss
Subject[Csnd] Exciters
Hi list,

I was wondering if somebody here has ever created an exciter with csound. It's one of the few audio engineering things that I've never really understood and where only little literature exists. I know technically an exciter just distorts a signal, but it does it in a very specific way that I've never been able to recreate. Obviously, the standard distortion opcodes don't cut it. And if i sit down with a piece of paper and a pen and do some math, I can only come up with methods that create a significant amount of non-harmonic material as well, which, as I understand, an exciter doesn't. So, does anybody have experience with that?

Thanks,
Alex

Date2012-01-08 02:59
FromErik de Castro Lopo
SubjectRe: [Csnd] Exciters
Alex Weiss wrote:

> I was wondering if somebody here has ever created an exciter with csound.
> It's one of the few audio engineering things that I've never really
> understood and where only little literature exists. I know technically an
> exciter just distorts a signal, but it does it in a very specific way that
> I've never been able to recreate. Obviously, the standard distortion
> opcodes don't cut it. And if i sit down with a piece of paper and a pen and
> do some math, I can only come up with methods that create a significant
> amount of non-harmonic material as well, which, as I understand, an exciter
> doesn't. So, does anybody have experience with that?

I've never seen a instrument that does this, but an exciter should be relatively
easy to recreate. An exciter is takes the original signal, high pass filters 
it, distorts this high pass signal and then adds it back into the original
signal.

The above would be relatively trivial in analog electronics. When doing it
digitally, you need to be aware of aliasing. Whenever you introduce harmonic
distortion in the digital domain you need to make sure the the resultant
harmonics don't end up higher than half the sampling rate.

If I was wanting to emulate an exciter, I would do it by upsampling before
and downsampling after the distortion.

Erik

Date2012-01-08 08:06
FromAlex Weiss
SubjectRe: [Csnd] Exciters
Hi Erik

Hm. Maybe I'm doing it wrong, but I don't think I've ever heard a pleasant-sounding distortion algorithm (by "pleasant" I mean the way an exciter would sound). Everything just sounds... well, distorted, for lack of a better word. Like clipping. Even when I only add a tiny amount.

On Sat, Jan 7, 2012 at 6:59 PM, Erik de Castro Lopo <mle+la@mega-nerd.com> wrote:
Alex Weiss wrote:

> I was wondering if somebody here has ever created an exciter with csound.
> It's one of the few audio engineering things that I've never really
> understood and where only little literature exists. I know technically an
> exciter just distorts a signal, but it does it in a very specific way that
> I've never been able to recreate. Obviously, the standard distortion
> opcodes don't cut it. And if i sit down with a piece of paper and a pen and
> do some math, I can only come up with methods that create a significant
> amount of non-harmonic material as well, which, as I understand, an exciter
> doesn't. So, does anybody have experience with that?

I've never seen a instrument that does this, but an exciter should be relatively
easy to recreate. An exciter is takes the original signal, high pass filters
it, distorts this high pass signal and then adds it back into the original
signal.

The above would be relatively trivial in analog electronics. When doing it
digitally, you need to be aware of aliasing. Whenever you introduce harmonic
distortion in the digital domain you need to make sure the the resultant
harmonics don't end up higher than half the sampling rate.

If I was wanting to emulate an exciter, I would do it by upsampling before
and downsampling after the distortion.

Erik
--
----------------------------------------------------------------------
Erik de Castro Lopo
http://www.mega-nerd.com/


Send bugs reports to the Sourceforge bug tracker
           https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2012-01-08 08:36
FromErik de Castro Lopo
SubjectRe: [Csnd] Exciters
Alex Weiss wrote:

> Hm. Maybe I'm doing it wrong, but I don't think I've ever heard a
> pleasant-sounding distortion algorithm (by "pleasant" I mean the way an
> exciter would sound). Everything just sounds... well, distorted, for lack
> of a better word. Like clipping. Even when I only add a tiny amount.

I would suggest you try the mathematics function tanh() which gives a
relatively soft clipping.

Erik

Date2012-01-08 08:38
Frommenno
SubjectRe: [Csnd] Exciters
Hi Alex,

i built, long time ago, a hardware exciter. There is a knob that lets you choose the frequency - say 3 kHz - where the distortion should build upon. I guess that would mean in Csound, a variable banpass filter. The harmonics created (distortion) were only odd ones. This can be created with waveshaping (gen13? or the pdhalf opcode). Then this output is mixed with the original, in a small quantity, just enough to brighten the dull sound.
I must have the paper somewhere...

Menno

-------------My music-----------------
http://www.jamendo.com/de/album/6789/
http://www.jamendo.com/en/album/7428/
-------------My work-----------------
http://members.home.nl/mag.knevel/

--- On Sun, 1/8/12, Alex Weiss <alexweiss86@gmail.com> wrote:

From: Alex Weiss <alexweiss86@gmail.com>
Subject: Re: [Csnd] Exciters
To: csound@lists.bath.ac.uk
Date: Sunday, January 8, 2012, 9:06 AM

Hi Erik

Hm. Maybe I'm doing it wrong, but I don't think I've ever heard a pleasant-sounding distortion algorithm (by "pleasant" I mean the way an exciter would sound). Everything just sounds... well, distorted, for lack of a better word. Like clipping. Even when I only add a tiny amount.

On Sat, Jan 7, 2012 at 6:59 PM, Erik de Castro Lopo <mle+la@mega-nerd.com> wrote:
Alex Weiss wrote:

> I was wondering if somebody here has ever created an exciter with csound.
> It's one of the few audio engineering things that I've never really
> understood and where only little literature exists. I know technically an
> exciter just distorts a signal, but it does it in a very specific way that
> I've never been able to recreate. Obviously, the standard distortion
> opcodes don't cut it. And if i sit down with a piece of paper and a pen and
> do some math, I can only come up with methods that create a significant
> amount of non-harmonic material as well, which, as I understand, an exciter
> doesn't. So, does anybody have experience with that?

I've never seen a instrument that does this, but an exciter should be relatively
easy to recreate. An exciter is takes the original signal, high pass filters
it, distorts this high pass signal and then adds it back into the original
signal.

The above would be relatively trivial in analog electronics. When doing it
digitally, you need to be aware of aliasing. Whenever you introduce harmonic
distortion in the digital domain you need to make sure the the resultant
harmonics don't end up higher than half the sampling rate.

If I was wanting to emulate an exciter, I would do it by upsampling before
and downsampling after the distortion.

Erik
--
----------------------------------------------------------------------
Erik de Castro Lopo
http://www.mega-nerd.com/


Send bugs reports to the Sourceforge bug tracker
           https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2012-01-08 09:04
FromAlex Weiss
SubjectRe: [Csnd] Exciters
Thanks, Eric. You mentioned something I've always been curious about: What determines if a waveshaping function produces only odd (or only even, for that matter) harmonics? I.e., what properties does a waveshaping function have to have in order to only produce odd harmonics?

On Sun, Jan 8, 2012 at 12:38 AM, menno <nabob_cd@yahoo.com> wrote:
Hi Alex,

i built, long time ago, a hardware exciter. There is a knob that lets you choose the frequency - say 3 kHz - where the distortion should build upon. I guess that would mean in Csound, a variable banpass filter. The harmonics created (distortion) were only odd ones. This can be created with waveshaping (gen13? or the pdhalf opcode). Then this output is mixed with the original, in a small quantity, just enough to brighten the dull sound.
I must have the paper somewhere...

Menno

-------------My music-----------------
http://www.jamendo.com/de/album/6789/
http://www.jamendo.com/en/album/7428/
-------------My work-----------------
http://members.home.nl/mag.knevel/

--- On Sun, 1/8/12, Alex Weiss <alexweiss86@gmail.com> wrote:

From: Alex Weiss <alexweiss86@gmail.com>
Subject: Re: [Csnd] Exciters
To: csound@lists.bath.ac.uk
Date: Sunday, January 8, 2012, 9:06 AM


Hi Erik

Hm. Maybe I'm doing it wrong, but I don't think I've ever heard a pleasant-sounding distortion algorithm (by "pleasant" I mean the way an exciter would sound). Everything just sounds... well, distorted, for lack of a better word. Like clipping. Even when I only add a tiny amount.

On Sat, Jan 7, 2012 at 6:59 PM, Erik de Castro Lopo <mle+la@mega-nerd.com> wrote:
Alex Weiss wrote:

> I was wondering if somebody here has ever created an exciter with csound.
> It's one of the few audio engineering things that I've never really
> understood and where only little literature exists. I know technically an
> exciter just distorts a signal, but it does it in a very specific way that
> I've never been able to recreate. Obviously, the standard distortion
> opcodes don't cut it. And if i sit down with a piece of paper and a pen and
> do some math, I can only come up with methods that create a significant
> amount of non-harmonic material as well, which, as I understand, an exciter
> doesn't. So, does anybody have experience with that?

I've never seen a instrument that does this, but an exciter should be relatively
easy to recreate. An exciter is takes the original signal, high pass filters
it, distorts this high pass signal and then adds it back into the original
signal.

The above would be relatively trivial in analog electronics. When doing it
digitally, you need to be aware of aliasing. Whenever you introduce harmonic
distortion in the digital domain you need to make sure the the resultant
harmonics don't end up higher than half the sampling rate.

If I was wanting to emulate an exciter, I would do it by upsampling before
and downsampling after the distortion.

Erik
--
----------------------------------------------------------------------
Erik de Castro Lopo
http://www.mega-nerd.com/


Send bugs reports to the Sourceforge bug tracker
           https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"




Date2012-01-08 09:15
FromErik de Castro Lopo
SubjectRe: [Csnd] Exciters
Alex Weiss wrote:

> Thanks, Eric. You mentioned something I've always been curious about: What
> determines if a waveshaping function produces only odd (or only even, for
> that matter) harmonics? I.e., what properties does a waveshaping function
> have to have in order to only produce odd harmonics?

If you look at the tanh function here:

    http://www.mathworks.com.au/help/techdoc/ref/tanh.html

you will see that, for all x, f (x) == -1 * f (-x) which makes tanh an
'odd' function (see [0]) and will produce only odd harmonics. And even
function like f= x * x, will produce only even harmonics. 

There are also functions that have a mixture of odd and even features
and therefore produce a mixture of odd and even harmonics.

HTH,
Erik


[0] https://en.wikipedia.org/wiki/Even_and_odd_functions

Date2012-01-08 19:34
Fromthorin kerr
SubjectRe: [Csnd] Exciters
Might not be exactly what you're after, but the Josep M Comajuncosas collection on Csounds.com  contains something described as a psychoacoustic exciter - http://www.csounds.com/jmc/Processors/enhance.zip

Thorin



On Sun, Jan 8, 2012 at 11:59 AM, Alex Weiss <alexweiss86@gmail.com> wrote:
Hi list,

I was wondering if somebody here has ever created an exciter with csound. It's one of the few audio engineering things that I've never really understood and where only little literature exists. I know technically an exciter just distorts a signal, but it does it in a very specific way that I've never been able to recreate. Obviously, the standard distortion opcodes don't cut it. And if i sit down with a piece of paper and a pen and do some math, I can only come up with methods that create a significant amount of non-harmonic material as well, which, as I understand, an exciter doesn't. So, does anybody have experience with that?

Thanks,
Alex


Date2012-01-08 22:21
FromMatti Koskinen
SubjectRe: [Csnd] Exciters
On Jan 8, 2012, at 11:15 AM, Erik de Castro Lopo wrote:

> Alex Weiss wrote:
> 
>> Thanks, Eric. You mentioned something I've always been curious about: What
>> determines if a waveshaping function produces only odd (or only even, for
>> that matter) harmonics? I.e., what properties does a waveshaping function
>> have to have in order to only produce odd harmonics?
> 
> If you look at the tanh function here:
> 
>    http://www.mathworks.com.au/help/techdoc/ref/tanh.html
> 
> you will see that, for all x, f (x) == -1 * f (-x) which makes tanh an
> 'odd' function (see [0]) and will produce only odd harmonics. And even
> function like f= x * x, will produce only even harmonics. 
> 
> There are also functions that have a mixture of odd and even features
> and therefore produce a mixture of odd and even harmonics.
> 
> HTH,
> Erik
> 
> 
> [0] https://en.wikipedia.org/wiki/Even_and_odd_functions
> 
> -- 
> ----------------------------------------------------------------------
> Erik de Castro Lopo
> http://www.mega-nerd.com/
> 
Very, very moons ago, I wrote a simple plugin for linux snd, which worked like described,  Hi-pass filter and clipping the signal and mixing with the original. I had some parameters to control the process, and used it for some old cassettes, still have Genesis' Harold the Barrel as mp3 in iTunes, and it sounds quite good.

Incidentally just started to write the thing with jVSTwRapper for Wavelab Elements 7 on OSX. Java is surprisingly fast to do audio processing, a wavelet denoiser works in real-time, even as stereo and 2048 sampleFrames.

best,

-matti




Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"


Date2012-01-10 07:33
FromAlex Weiss
SubjectRe: [Csnd] Exciters
Thanks for all the explanations. I'll experiment a little...

But since I'm already asking about these things: How do those sub bass plug-ins work? It seems to be a similar concept to an exciter with a reversed "direction" so to speak...

On Sun, Jan 8, 2012 at 2:21 PM, Matti Koskinen <mjkoskin@kolumbus.fi> wrote:

On Jan 8, 2012, at 11:15 AM, Erik de Castro Lopo wrote:

> Alex Weiss wrote:
>
>> Thanks, Eric. You mentioned something I've always been curious about: What
>> determines if a waveshaping function produces only odd (or only even, for
>> that matter) harmonics? I.e., what properties does a waveshaping function
>> have to have in order to only produce odd harmonics?
>
> If you look at the tanh function here:
>
>    http://www.mathworks.com.au/help/techdoc/ref/tanh.html
>
> you will see that, for all x, f (x) == -1 * f (-x) which makes tanh an
> 'odd' function (see [0]) and will produce only odd harmonics. And even
> function like f= x * x, will produce only even harmonics.
>
> There are also functions that have a mixture of odd and even features
> and therefore produce a mixture of odd and even harmonics.
>
> HTH,
> Erik
>
>
> [0] https://en.wikipedia.org/wiki/Even_and_odd_functions
>
> --
> ----------------------------------------------------------------------
> Erik de Castro Lopo
> http://www.mega-nerd.com/
>
Very, very moons ago, I wrote a simple plugin for linux snd, which worked like described,  Hi-pass filter and clipping the signal and mixing with the original. I had some parameters to control the process, and used it for some old cassettes, still have Genesis' Harold the Barrel as mp3 in iTunes, and it sounds quite good.

Incidentally just started to write the thing with jVSTwRapper for Wavelab Elements 7 on OSX. Java is surprisingly fast to do audio processing, a wavelet denoiser works in real-time, even as stereo and 2048 sampleFrames.

best,

-matti




Send bugs reports to the Sourceforge bug tracker
           https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"