Author Topic: Problem with BASS_FX autowah effect  (Read 167 times)

QuentinC

  • Posts: 74
Problem with BASS_FX autowah effect
« on: 9 Oct '21 - 06:12 »
Hello,

I have a problem with BASS_FX autowah effect.
Maybe I haven't understood how it is supposed to  work, but I really think that something isn't working properly.

Given this very simple test:

Code: [Select]
DWORD stream = BASS_StreamCreateFile(...);
auto wahfx = BASS_ChannelSetFX(stream, BASS_FX_BFX_AUTOWAH, 0);
BASS_BFX_AUTOWAH wah;
wah.fDryMix = 0;
wah.fWetMix = 1;
wah.fFeedback = 0.8f;
wah.fRate = 9.9f;
wah.fRange = 4;
wah.fFreq = 350;
wah.lChannel = -1;
BASS_FXSetParameters(wahfx, &wah);
BASS_ChannelPlay(stream, false);

I hear that some filter is indeed applied, but I don't hear it sweeping. It sounds like the frequency of the filter stays constant.
After a while, about 25 seconds, I finally hear it start sweeping, but very very slowly, far from the desired 9.9 Hz set in fRange. It seems that it goes faster and faster up to some point, and then slows down again to stay constant for a while, and so on.
Also, the sweep isn't smooth, it seems to operate in kind of steps, making it a little weird.

I think the problem is in the LFO that controls sweeping; the filter itself seems to work correctly.

Do I have misunderstood something about this effect or its parameters, or is there really a problem ?

As far as I understand, the frequency of the filter should sweep from fFreq to fFreq * 2^fRange (probably logarithmically) and back within fRate seconds.

I think I have the latest versions: BASS 2.4.16.7, BASS_FX 2.4.12.1.

Thank you.

sveakul

  • Posts: 121
Re: Problem with BASS_FX autowah effect
« Reply #1 on: 9 Oct '21 - 16:33 »
I think I have the latest versions: BASS 2.4.16.7, BASS_FX 2.4.12.1.

BASS_FX 2.4.12.6 : https://www.un4seen.com/stuff/bass_fx.zip

QuentinC

  • Posts: 74
Re: Problem with BASS_FX autowah effect
« Reply #2 on: 9 Oct '21 - 20:39 »
Hello,

I took BASS_FX 2.4.12.6 at the link given, but it doesn't change anything to my problem.

Is there somewhere to download old versions ? Maybe I can find the last one that worked fine.

Thank you.

sveakul

  • Posts: 121
Re: Problem with BASS_FX autowah effect
« Reply #3 on: 10 Oct '21 - 19:51 »
Versions 2.4.12.2 and 2.4.12.3 are available at the link below, which is all the info I have:

https://www.jobnik.net/BASS_FX/beta/

Ian @ un4seen

  • Administrator
  • Posts: 23997
Re: Problem with BASS_FX autowah effect
« Reply #4 on: 11 Oct '21 - 15:56 »
From the autowah effect's source code, it looks like the sweep rate is also affected by the level of the input sample data. It looks like it will only sweep when the level is above -2.5dB (75% linear). I don't think that code has changed since the effect was introduced, so it's unlikely that an old BASS_FX version will give different results.

QuentinC

  • Posts: 74
Re: Problem with BASS_FX autowah effect
« Reply #5 on: 12 Oct '21 - 16:37 »
Hello,

Quote
From the autowah effect's source code, it looks like the sweep rate is also affected by the level of the input sample data. It looks like it will only sweep when the level is above -2.5dB (75% linear).

Following your saying, I just tried to add a volume effect before the autowah effect with the hope to raise the level.

Code: [Select]
DWORD volFX = BASS_ChannelSetFX(stream, BASS_FX_BFX_VOLUME, 100);
BASS_BFX_VOLUME vp;
vp.lChannel = -1;
vp.fVolume = 3.0f;
BASS_FXSetParameters(volFX, &vp);

Now I can confirm that the sweep rate indeed depends on the level.

However, is this behavior normal ?

It still sounds quite weird that the sweep rate isn't constant, and I don't control the recording level of the songs the effect is applied on...
 

Quote
I don't think that code has changed since the effect was introduced, so it's unlikely that an old BASS_FX version will give different results.

That's exact, it doesn't. I found a version as old as 2.4.7 (2011) and it it behaves the same.

However, I remember an old time where autowah was always working, regardless of input level.
Perhaps it was under windows XP ? Is it possible that something broke when switching from DirectSound to WASAPI ? Or from 16-bit to float output ?
I tried both by setting BASS_DEVICE_DSOUND, removing BASS_SAMPLE_FLOAT as well as turning off BASS_CONFIG_FLOATDSP, but it doesn't change the behavior either.


Thank you.

Ian @ un4seen

  • Administrator
  • Posts: 23997
Re: Problem with BASS_FX autowah effect
« Reply #6 on: 13 Oct '21 - 14:52 »
Now I can confirm that the sweep rate indeed depends on the level.

However, is this behavior normal ?

It still sounds quite weird that the sweep rate isn't constant, and I don't control the recording level of the songs the effect is applied on...

That seems to just be how this particular effect was implemented. There could perhaps have been an option to adjust/disable the level threshold included in the BASS_BFX_AUTOWAH parameters. It isn't possible to add that now for back-compatibility reasons, but perhaps a new BASS_FX_BFX_AUTOWAH2 effect with it could be added.

However, I remember an old time where autowah was always working, regardless of input level.
Perhaps it was under windows XP ? Is it possible that something broke when switching from DirectSound to WASAPI ? Or from 16-bit to float output ?
I tried both by setting BASS_DEVICE_DSOUND, removing BASS_SAMPLE_FLOAT as well as turning off BASS_CONFIG_FLOATDSP, but it doesn't change the behavior either.

Do you remember approximately what BASS_FX version you were using back then? As far as I recall, BASS_FX's processing has always been floating-point on Windows; if the data isn't already floating-point then it'll be converted to floating-point before processing and then converted back after. The output system used (WASAPI or DirectSound) won't make any difference to BASS_FX.

Perhaps in the past you just happened to try the effect with different sources that it worked better with, or perhaps you were combining it with other effects that influenced the result?

QuentinC

  • Posts: 74
Re: Problem with BASS_FX autowah effect
« Reply #7 on: 13 Oct '21 - 17:36 »
Quote
Do you remember approximately what BASS_FX version you were using back then?

No, not precisely. At that time, I were only using BASS indirectly, i.e. I were using a player program which itself used BASS.
That's by the way how I got to know BASS and started using it myself.

The program in question no longer work  today, even in XP compatibility mode. I Just tried again yesterday.
It was maybe in 2007 or 2008. BASS was already  in version 2.4.x, I have never used BASS 2.3.

Quote
Perhaps in the past you just happened to try the effect with different sources that it worked better with, or perhaps you were combining it with other effects that influenced the result?

That's very possible. Since I can't run the problem where it worked, I can't really answer.

So I assume it's dead.
Thank you anyway.