Author Topic: BASS_FX effect strength  (Read 299 times)

3delite

  • Posts: 907
BASS_FX effect strength
« on: 8 May '17 - 20:08 »
Hi!

The question is how to set an effect's strength.
Would the following work?
Set a DSP on the channel with priority 1, apply the BASS_FX effect with priority 0, set a DSP with priority -1. In first DSP copy the buffer, in the -1 priority DSP mix together the received buffer with the copied buffer with a %.
If this is ok, then how to mix the samples together? What's not clear to me is if mix with 1:1 then the formula is dry + wet / 2? If one of the samples is silence this means the output volume will be halved. That's not cool. I always wondered what is the formula, for example in a mod music with eg. 16 channels, how it is achieved to have full volume without lowering the volume to 16th value...

Thank you!

Ian @ un4seen

  • Administrator
  • Posts: 20437
Re: BASS_FX effect strength
« Reply #1 on: 9 May '17 - 15:44 »
Something like that should work in some cases, but probably not in all cases, eg. not with effects that delay the sound. What effect(s) are you wanting to apply it to? Some of the effects include wet and dry level parameters, so it would be unnecessary to do what you propose with them.

Regarding MOD music mix levels, the level will generally be reduced as the number of channels in the MOD rises, but probably not simply 1.0/channels, based on the assumption that it's less likely that all of the channels will be used (and at full volume) at the same time when there are many of them.

3delite

  • Posts: 907
Re: BASS_FX effect strength
« Reply #2 on: 10 May '17 - 18:22 »
Dry/wet settings are already settable for effects that support it, I'd like to have this setting possible for all the effects. Right now the list: BASS_FX_BFX_PEAKEQ, BASS_FX_BFX_CHORUS, BASS_FX_BFX_REVERB, BASS_FX_BFX_FLANGER and BASS_FX_BFX_BQF the low and high pass effects. And the BASS_BFX_COMPRESSOR2 effect is planned.
Are these effects compatible with my solution?

It's interesting that there is no obvious solution for mixing 2 audio sources, searching for this on web didn't give any real answer.

So now I think to have 2 sliders one for wet and one for dry and both would go from 0% to 100% and simply + the 2 sample values in the DSP callback - with the notice to keep the sum of the 2 sliders at 100%. This seems as a reasonable solution right now. :)

Ian @ un4seen

  • Administrator
  • Posts: 20437
Re: BASS_FX effect strength
« Reply #3 on: 11 May '17 - 14:28 »
I don't think your idea would work well with the BASS_FX_BFX_PEAKEQ and BASS_FX_BFX_BQF effects. Actually, thinking about it a bit more, there are probably few effects where it would work well, and they will probably already have dry and wet level parameters :)

In the case of BASS_FX_BFX_PEAKEQ, you could adjust fGain and add a pre-amp (BASS_FX_BFX_VOLUME) to achieve the wanted result? In the case of BASS_FX_BFX_COMPRESSOR2, you could perhaps adjust fGain and fThreshold instead? The BASS_FX_BFX_CHORUS effect does have dry and wet level parameters, so you wouldn't need to do anything extra for that. The old BASS_FX_BFX_FLANGER effect is deprecated in favour of BASS_FX_BFX_CHORUS. The old BASS_FX_BFX_REVERB effect is deprecated in favour of the BASS_FX_BFX_FREEVERB effect, which also includes dry and wet level parameters.

3delite

  • Posts: 907
Re: BASS_FX effect strength
« Reply #4 on: 12 May '17 - 14:53 »
Ok, thank you very much! It was looking good to have a section for FXes' effect power, but then I just add the dry/wet where available. Also I see now I had a quite outdated BASS_FX.chm file, I see to implement the newer and recommended FXes then.

Thanks!