Looks okay so far.
So the delay is due to the DSP implementation, since the StreamCopy DSP first reads the buffer from the original stream (ChannelHandle) and then writes them to the StreamCopy.
So to reduce the latency you might reduce the output buffer (BASS_ChannelSetConfig).
So the delay is due to the DSP implementation, since the StreamCopy DSP first reads the buffer from the original stream (ChannelHandle) and then writes them to the StreamCopy.
So to reduce the latency you might reduce the output buffer (BASS_ChannelSetConfig).
The delay is getting a bit better but not perfect. If the buffer is under 150 itīs getting bad and even the "normal" sound stagnates.
Quote
A better solution will come with BASS 2.4, since here BASS will support PUSH streams - and so the StreamCopy DSP will be changed to leverage this new feature.
So Iīm gonna wait for BASS 2.4. Any idea when the release is??
Quote
However, I don't fully get what is not working (beside the delay)?
Meaning, if you use both PFLs for Player 1 and 2 - are you using two instances of the StreamCopy DSP?
Meaning, if you use both PFLs for Player 1 and 2 - are you using two instances of the StreamCopy DSP?
My fault, it works with both channels...

Quote
The BufferStream DSP works only with decoding streams (and there you don't have any speaker flags, thats why the StreamFlag property is only a getter there.
But yes, you could BASSmix to achieve the same (that's actually what I am doing).
Each mixer channel will then represent the 'physical' output stream.
And your players just deal with decoding channels, which are added to the respective mixer as sources.
In this case you then must use the BufferStream DSP (as this one deals with decoding channels) - and this one will then also have no latency effect (as decoding channels don't have any extra buffers involved).
So your setup will the look like this:
Player1 (decoding) ----> Mixer1 ----> Soundcard (FRONT)
Player2 (decoding) ----> Mixer2 ----> Soundcard (FRONT)
BufferStream ----> Mixer3 ----> Soundcard (REAR)
When you want to PFL either Player1 or 2 you simply create a BufferStream DSP instead of the StreamCopy and then add the BufferStream to Mixer 3 as a source.
But yes, you could BASSmix to achieve the same (that's actually what I am doing).
Each mixer channel will then represent the 'physical' output stream.
And your players just deal with decoding channels, which are added to the respective mixer as sources.
In this case you then must use the BufferStream DSP (as this one deals with decoding channels) - and this one will then also have no latency effect (as decoding channels don't have any extra buffers involved).
So your setup will the look like this:
Player1 (decoding) ----> Mixer1 ----> Soundcard (FRONT)
Player2 (decoding) ----> Mixer2 ----> Soundcard (FRONT)
BufferStream ----> Mixer3 ----> Soundcard (REAR)
When you want to PFL either Player1 or 2 you simply create a BufferStream DSP instead of the StreamCopy and then add the BufferStream to Mixer 3 as a source.
There is only one problem: Iīm not able to insert the BassMix into my code. Is it possible that the BassMix V2.3.0.1 is not supported in BASS.NET 2.3.1.8? I get a MessageBox with: "Incorrect Bass.DLL version (2.3.0.3 is required)"
However, I think I will wait till 2.4 release because if I insert BassMix I have to change nearly everything in my Class...
All in all I say thank you very much, or in good old german Danke für die Hilfe, das könnte ich ja sowieso besser als das englische Zeugs...

Gruß MB

Reply
Quote


