22 May '13 - 19:51 *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
 
   Home   Help Search Login Register  
Pages: [1]
  Reply  |  Print  
Author Topic: Equalization and sample rate  (Read 1026 times)
Cristian1980
Posts: 36


« on: 22 Jul '10 - 14:25 »
Reply with quoteQuote

Hi,

After doing some tests I concluded that BASS_FX_DX8_PARAMEQ equalizer is not affected by sample rate changes. For example if I apply a gain at 10 kHz and then half the sample rate,
the equalizer will apply the gain at 10kHz(output) as if the equalizer is bound to the output.

I would be interested if it possible to have a equalizer that is bound to the input. For example it would be affected by BASS_ATTRIB_FREQ (whether setting or sliding) and if I have gain at 10kHz and half the sample rate the new gain will be applied at 5kHz(output), also the equalizer bandwidth should be halved.

Basically I'm looking if I can do something like this with bass:

input  --> equalizer filter --> sample rate change filter --> equalizer filter --> output

Regards,
Cristian
Logged
(: JOBnik! :)
Posts: 984


« Reply #1 on: 22 Jul '10 - 15:20 »
Reply with quoteQuote

Hi Grin

Use 'oldcenter*freq/oldfreq' to update the fCenter after changing the Samplerate.
Logged
Cristian1980
Posts: 36


« Reply #2 on: 22 Jul '10 - 16:04 »
Reply with quoteQuote

Hello,

Thank you for the reply. My problem is that I expect to have many frequency changes (for example slide frequency attribute, eg half the frequency in 200 ms ) this means I will have to change a lot of equalizer parameters many times. Won't this affect performance?

Thanks again,
Cristian
Logged
Cristian1980
Posts: 36


« Reply #3 on: 23 Jul '10 - 16:19 »
Reply with quoteQuote

Hi,

I am monitoring the pitch and updating the equalizer bands according to current pitch.
Unfortunately I am getting some clicking sound artifacts now.
Any idea how can I work around this?

Regards,
Cristian
Logged
Ian @ un4seen
Administrator
Posts: 15269


« Reply #4 on: 23 Jul '10 - 16:52 »
Reply with quoteQuote

After doing some tests I concluded that BASS_FX_DX8_PARAMEQ equalizer is not affected by sample rate changes. For example if I apply a gain at 10 kHz and then half the sample rate,
the equalizer will apply the gain at 10kHz(output) as if the equalizer is bound to the output.

I would be interested if it possible to have a equalizer that is bound to the input. For example it would be affected by BASS_ATTRIB_FREQ (whether setting or sliding) and if I have gain at 10kHz and half the sample rate the new gain will be applied at 5kHz(output), also the equalizer bandwidth should be halved.

That should already be the case, ie. halving the playback rate (BASS_ATTRIB_FREQ) will effectively halve the EQ's centre frequency. What tests are you doing to conclude otherwise? If you haven't already done so, you could use white noise, which makes it quite easy to see the effect of the EQ on it.
Logged
Cristian1980
Posts: 36


« Reply #5 on: 26 Jul '10 - 09:12 »
Reply with quoteQuote

Hi,

I did my initial tests using the spectrum sample from bass and white noise. I expected to see the band in the graph move as slide the frequency. But probably I didn't see it move because the graph scale was also changing.(Does this mean the bandwidth is also affected?)

This is good, however I also need to somehow simulate somehow the other behavior in which the equalizer is not affected by sample rate. I need all this to simulate RIAA equalization.

input  --> equalizer filter(affected by sample rate, this is a inverse RIAA equalizer filter in order to simulate original vinyl sound) --> sample rate change filter --> equalizer filter(not affected by sample rate, this is a output RIAA equalizer filter) --> output

I've noticed in the Bass FX "tempo" sample that when BASS_ATTRIB_TEMPO_FREQ was changed, a manual correction of the bands center was applied. This is not the case for BASS_ATTRIB_FREQ?

Thank you again,
Cristian
Logged
Ian @ un4seen
Administrator
Posts: 15269


« Reply #6 on: 26 Jul '10 - 14:16 »
Reply with quoteQuote

I did my initial tests using the spectrum sample from bass and white noise. I expected to see the band in the graph move as slide the frequency. But probably I didn't see it move because the graph scale was also changing.

Yes, just like the EQ centre frequency is affected by the sample rate, so is the FFT. You could use the LIVESPEC example to capture and display the sound, as that will have a fixed sample rate, so its display frequency range won't change.

This is good, however I also need to somehow simulate somehow the other behavior in which the equalizer is not affected by sample rate.

input  --> equalizer filter(affected by sample rate, this is a inverse RIAA equalizer filter in order to simulate original vinyl sound) --> sample rate change filter --> equalizer filter(not affected by sample rate, this is a output RIAA equalizer filter) --> output

I've noticed in the Bass FX "tempo" sample that when BASS_ATTRIB_TEMPO_FREQ was changed, a manual correction of the bands center was applied. This is not the case for BASS_ATTRIB_FREQ?

The difference when changing the rate via BASS_FX's tempo processing (BASS_ATTRIB_TEMPO_FREQ) is that the output sample rate doesn't change (BASS_FX resamples the source to sound like the requested rate), so EQ/FFT frequencies are unchanged.
Logged
Cristian1980
Posts: 36


« Reply #7 on: 26 Jul '10 - 15:49 »
Reply with quoteQuote

Great,

So, is it possible to have those 2 behaviors on the same stream?

Bellow is a step by step example of the processing I want to do:

1) input stream: at 44100Hz for example

2) equalizer: applied on 0-44100Hz on the initial source

3) sample rate change: when this re-sampling is done it will affect the equalizer at 1) just as BASS_ATTRIB_FREQ does.
The output of 3) should still be 44100 but re-sampled to sound like a different rate just as BASS_FX's BASS_ATTRIB_TEMPO_FREQ does. See:
Quote
BASS_FX re-samples the source to sound like the requested rate

4) equalizer: applied on the output of 3) which should still be at 44100

5) output

Thank you,
Cristian
Logged
Pages: [1]
  Reply  |  Print  
 
Jump to:  

Powered by SMF 1.1.18 | SMF © 2013, Simple Machines