Hi, im using this code to create a tempo stream
int h = Bass.BASS_StreamCreateFile(path, 0L, 0, BASSFlag.BASS_STREAM_DECODE);
h = BassFx.BASS_FX_TempoCreate(h, 0);
Bass.BASS_ChannelSetAttribute(h, BASSAttribute.BASS_ATTRIB_TEMPO_FREQ, 44100);
which is working fine, except for after using
Bass.BASS_ChannelSetAttribute(handle, BASSAttribute.BASS_ATTRIB_TEMPO, value);
to adjust the tempo. I have some other sounds playing at certain offsets, which i determine with
return Bass.BASS_ChannelBytes2Seconds(handle, Bass.BASS_ChannelGetPosition(handle));
and the sounds are perfectly in sync when at regular tempo or faster, but when slowing down, the more i slow down, the value returned with the above code (returning as double) would for example be 400, when the audio is actually at 420, so all of my extra sounds play late. The more i decrease the tempo, the larger the gap becomes. If I change the frequency, not the tempo, the position from ChannelGetPosition is accurate no matter what frequency I use, but for this I need the frequency to stay the same and the tempo to change.
Is there some flag i am missing that would make the value always be correct, or is there another way I need to be doing this in order to get the correct value at low tempo?
Thanks in advance