0
0

Hi, I found veeeery strange behavior with multiple output connections:
1. I have to connect channel except default channel to 3 other DSP channels for processing, so I did.
2. I can connect/disconnect to first or second or third or any combination of this DSP channels and I can see in profiler appropriate network.
3. If I connect only 1 additional DSP channel (first or second or third) – everything is fine and I get appropriate sound data in DSP callback.
3. BUT If I connect MORE than 1 DSP channel (for example first and third) in addition to default sound channel, ONLY ONE DSP callback receives data, another one doesn’t.

Here is puctures:
0. Main channel & 0 DSP channel are connected – OK
[img:ocewymgk]http://tvsori.com/serg/main_and_0_dsp_channel.png[/img:ocewymgk]
1. Main channel & 1 DSP channel are connected – OK
[img:ocewymgk]http://tvsori.com/serg/main_and_1_dsp_channel.png[/img:ocewymgk]
2. Main channel & 2 DSP channel are connected – Bad
[img:ocewymgk]http://tvsori.com/serg/main_and_2_dsp_channel.png[/img:ocewymgk]
3. Main channel & 3 DSP channel are connected – Bad
[img:ocewymgk]http://tvsori.com/serg/main_and_3_dsp_channel.png[/img:ocewymgk]

I use addInput/disconnectFrom to connect/disconnect channels

What’s wrong with my network?

  • You must to post comments
0
0

Hi,
It looks like the issue is the resampler unit. It is ticking the units below it multiple times making the wavetable be executed more times than it should be.

I would suggest dropping usage of playDSP to add sendstream/senddirect/send020, and instead just use ChannelGroup::getDSPHead, then DSP::addinput to add those 3 units.

This will remove the resamplers and it should then be fine.

  • You must to post comments
0
0

just to let you know i’ve made a change which will stop the badness, but because the resampler pulls in more data than the channelgroup would, there is phasing, so its still a good idea to remove those resamplers.

  • You must to post comments
0
0

Thank you, Brett.

addInput works fine in my case.
I wonder where I could read in details about some technical details, like "active"/"passive" objects, who is really pulling and in which tread ?

Sergei

  • You must to post comments
Showing 3 results
Your Answer

Please first to submit.