This kind of follows on from the envelope issues I originally reported here:
… but I decided to open a new topic for it.
My experiments with IEnvelope are progressing well, but there are still some problems which make it difficult to write a ‘universal’ script for envelope handling.
My ‘test’ PC for mAirList is my ‘old’ PC, which has a Terratec EWX 24/96 card in it. This card has both a WDM driver (Terratec call this the ‘WavePlay Analog’ output) and an ASIO driver.
My test script is setting a envelope which starts the track (i.e. at position zero) ‘faded down’ by -24, which is -11dB down on each stereo channel. I have a second point set 500mS before Ramp1 (also at -24 = -11dB), and a third point set at Ramp1, with a level of zero (i.e. at ‘full volume’).
If I route all mAirList Players to use the WDM driver (my normal settings), I have two problems:
- I still have a ~2s delay in processing each envelope point. My BASS.DLL settings in Config use a 2000mS Buffer—and I don’t think this is a coincidence (see below).
- The ‘faded down’ track starts with a digital ‘screech’ which lasts ~2s. Again, I don’t think this is a coincidence. I think what I’m hearing is a corrupted buffer. Note that I am changing mAirList from ASSIST to AUTO mode before playing any tracks, so that isn’t the cause.
If I instead route all mAirList Players to use the ASIO driver:
- There is no delay in processing the envelope points: they all work perfectly at the correct positions.
- There is no digital ‘screech’ when the ‘faded down’ track starts.
It therefore seems that the problems (delay of processing envelope points, and the ugly ‘screech’ at the start of the track) only happen when BASS is ‘talking’ to a WDM driver and not when BASS is ‘talking to’ an ASIO driver.
I don’t really want to use the ASIO driver; I only tried it to see if it made any difference. And I didn’t change the BASS buffer length either: it’s 2000mS in both cases (WDM and ASIO).
As I said above, it’s somewhat frustrating not to be able to do fades in and out (using envelopes) which will work on any possible audio device. My script code does include a ‘processing delay’ constant, but that doesn’t cure the ‘screech’ problem wiht the WDM driver; and the ‘delay’ constant doesn’t seem to be needed at all if I use my ASIO driver instead of the WDM driver.
So, Torben: does this information give you any clues as to what might be causing these problems?
Thanks in advance.