Skip to main content

Notice

Please be aware that much of the software linked to or mentioned on this forum is niche and therefore infrequently downloaded. Lots of anti-virus scanners and so-called malware detectors like to flag infrequently downloaded software as bad until it is either downloaded enough times, or its developer actually bothers with getting each individual release allow listed by every single AV vendor. You can do many people a great favor when encountering such a "problem" example by submitting them to your AV vendor for examination. For almost everything on this forum, it is a false positive.
Topic: DSP Manager - Assigning channels to DSP chain items (Read 1782 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

DSP Manager - Assigning channels to DSP chain items

Hi, some of you know already where this is going. Let's try to make it simple.

Let's say I want to play a multichannel audio file.
But I also want to PEQ it via the DSP manager.
And I don't want to PEQ all channels in the same way. I want a different PEQ preset for channels 1-2, channels 3-4, etc.

I could use a PEQ component such as this one.
But such component is only intended for stereo use, so it can't properly PEQ a multichannel file.
And I don't know of any multichannel PEQ component for foobar.

I have talked to the component developer, and honestly he doesn't seem to understand the problem (I could get into details and copy/paste our emails if required). We reached a point where he was saying A and foobar developers were saying B, so one of the two had to be wrong... and I trust foobar developers.

There would be another approach : what if foobar's DSP Manager would allow, for each element of the DSP chain, to select the channels where it shall operate ? That way, with multichannel audio, we could add a first instance of a stereo DSP to the DSP chain, assign it to channels 1-2, then add a second instance, assign it to channels 3-4, and so on. What do you think ? Does that suggestion make sense ?

We could imagine it differently : what if foobar's DSP Manager would allow to create a DSP chain for channels 1-2, and then a DSP chain for channels 3-4, and so on ? That would work too. It remembers me of the Dynamic DSP component, which allows to create different DSP chains according to a titleformat script (e.g. %samplerate%, and then one DSP chain for 44100, one DSP chain for 48000, and so on). But only one chain is active at a time. Here we would need several chains active at a time (one DSP chain for channels 1-2, one DSP chain for channels 3-4, and so on).

Any ideas welcome, and if foobar devs happen to take an interest in this, all the better. :)

(a 3rd approach would be to find a multichannel PEQ VST and add it to foobar via a VST wrapper. Sadly VST wrappers for foobar have proven unstable to this day. Not to mention that there are very few multichannel PEQ, and they are pro stuff and very expensive. So this approach is unlikely to succeed.)

 

Re: DSP Manager - Assigning channels to DSP chain items

Reply #1
Then you want a DSP graph, not a DSP chain.

Re: DSP Manager - Assigning channels to DSP chain items

Reply #2
Then you want a DSP graph, not a DSP chain.
If you want to phrase it that way, then yes :) Well, only for my second suggestion. My first one is about a DSP chain.
But beyond semantics, could one of my suggestions be achieved eventually ?

I'm not a dev, but what happens when we put a stereo DSP such as the previous one in the DSP chain and feed it with multichannel audio ? I guess it should be the DSP Manager that decides on which two channels the stereo DSP should operate. Doesn't that make sense ?

And if the DSP Manager decides on channels 1-2 by default, then it could as well decide on channels 3-4 or anything else. Would that be difficult ? I'm thinking of a right-click on an element of the DSP chain, and in the pop-up where you have "Configure", "Delete", etc., maybe add a "Select channels" option ?

Re: DSP Manager - Assigning channels to DSP chain items

Reply #3
It would require implementing the DSP configuration similar to a JACK2 client like Carla: A large graph, add a DSP, it drops a box in the graph, you connect its inputs to something else's outputs manually.

Re: DSP Manager - Assigning channels to DSP chain items

Reply #4
Maybe the GUI could be simpler: a popup window for each DSP with a matrix grid representing input and output channels. Similar how it is in Reaper.

Re: DSP Manager - Assigning channels to DSP chain items

Reply #5
Yes, I was thinking of something simple too. No fancy graphs, just a basic pop-up as simple as possible.
Would it be OK to add this to foobar's to-do list so it could be implemented within a reasonable timeframe ?

Please note that it's not really a new functionality, since I guess all DSPs are already assigned to channels by default. This would only be about selecting the channels for each DSP instead of assigning them by default.

Re: DSP Manager - Assigning channels to DSP chain items

Reply #6
Hello ? Anybody ?...  :o

I love foobar devs, I really do... but it's so hard to suggest even a minor improvement and have your request be taken seriously...  ::)

Re: DSP Manager - Assigning channels to DSP chain items

Reply #7
... somebody ?... anybody ?... hello ?...  O:)


Re: DSP Manager - Assigning channels to DSP chain items

Reply #8
Then you want a DSP graph, not a DSP chain.
If you want to phrase it that way, then yes :) Well, only for my second suggestion. My first one is about a DSP chain.
But beyond semantics, could one of my suggestions be achieved eventually ?

I'm not a dev, but what happens when we put a stereo DSP such as the previous one in the DSP chain and feed it with multichannel audio ? I guess it should be the DSP Manager that decides on which two channels the stereo DSP should operate. Doesn't that make sense ?

And if the DSP Manager decides on channels 1-2 by default, then it could as well decide on channels 3-4 or anything else. Would that be difficult ? I'm thinking of a right-click on an element of the DSP chain, and in the pop-up where you have "Configure", "Delete", etc., maybe add a "Select channels" option ?

DDMF METAPLUGIN - VST HOST WITH 4 SELECTIVE OUTPUTS. https://ddmf.eu/metaplugin-chainer-vst-au-rtas-aax-wrapper/
IT COST 49 $ And worth it.

https://www.youtube.com/watch?v=ytxjRIuffyg

Re: DSP Manager - Assigning channels to DSP chain items

Reply #9
Thank you @Priest_1 . I know about Metaplugin and similar solutions  (Nanohost, Cantabile...). They are VST hosts, so I could add VST EQs and achieve my purpose.

- I could achieve similar function within foobar using one of the available VST host components. Granted there seem to be stability issues.
- I am already achieving similar function within foobar using the Convolver component on a 4-ch wav impulse response. It works, but it's complicated : every time I want to tweak EQ parameters, I need to create a new wav impulse response.
- I can also achieve it with Equalizer APO. It becomes easier to tweak EQ, but then it's not within foobar anymore.

The purpose of this topic is rather about foobar's DSP Manager. I don't find logical that when playing multichannel audio, all stereo DSPs default to channels 1&2. There's no reason for that, so we should at least be able to select the two channels where they would be applied. The DSP Manager should allow for that IMHO, in a very basic/easy way. No need for fancy graphs, just "add stereo DSP, select the two operating channels, done".

Re: DSP Manager - Assigning channels to DSP chain items

Reply #10
Audio isn't passed between DSPs in a planar format, so all you get is a single interleaved stream, and a bitmask that tells you which speakers are present.

Re: DSP Manager - Assigning channels to DSP chain items

Reply #11
Audio isn't passed between DSPs in a planar format, so all you get is a single interleaved stream, and a bitmask that tells you which speakers are present.
Good news ! So you know precisely what needs to be changed then.  :D

OK, more seriously, saying "current audio format between DSPs is not the proper one" doesn't look like the best argument to me.
I would prefer something like "Maybe it would be possible to improve audio format between DSPs so channels could be properly identified by the DSPs ?"  O:)

I mean, if current internal DSP Manager architecture is preventing you/us from achieving a logical purpose, then maybe current architecture is not that good and can be improved ? Just wondering, I'm no expert.  :-[

Re: DSP Manager - Assigning channels to DSP chain items

Reply #12
No, I do not.

I could make a single DSP that pretends to be a host to your special DSP tree. But I don't feel like it. And since I'm apparently all you've got, you're in a bind.

Re: DSP Manager - Assigning channels to DSP chain items

Reply #13
OK, more seriously, saying "current audio format between DSPs is not the proper one" doesn't look like the best argument to me.
I would prefer something like "Maybe it would be possible to improve audio format between DSPs so channels could be properly identified by the DSPs ?"  O:)

I mean, if current internal DSP Manager architecture is preventing you/us from achieving a logical purpose, then maybe current architecture is not that good and can be improved ? Just wondering, I'm no expert.  :-[

Can't you achieve something similar with the matrix mixer?
Admittedly it's not a simple click and set thing, but you can move channels around with it. I assume you'd need an instance of matrix mixer between each DSP capable of stereo processing only, then another at the end to put the channels back in the correct order, but at least when you're done you can save it as a preset.

It works fine in my head, but I haven't tested it.
https://skipyrich.com/wiki/Main_Page#Matrix_Mixer_.28foo_dsp_mm.29

 
SimplePortal 1.0.0 RC1 © 2008-2021