monocasual / giada

Your Hardcore Loop Machine.
https://www.giadamusic.com
GNU General Public License v3.0
1.67k stars 98 forks source link

[JACK] Add multi-input / multi-output ability / easier jack connections #247

Open moonshaadow opened 5 years ago

moonshaadow commented 5 years ago

[LINUX] Is there any plan to add multi-connection ability ? Could choose connection in/out for each channel would be a great feature ! More generally, I think that devices connections are a bit restrictive because they need a giada restart. JACK's power is to be plug & play, to can use each application in a modular way, via Catia or Patchage. Giada shows input or output only when there are chosen ones in the giada.conf. This way prohibits a session manager usage. (and it's the same problem for MIDI connections)

Possible directions could be :

tomek-szczesny commented 5 years ago

Personally I'd love to see Giada jack-centric but for the sake of compatibility with Windows my guess is that this won't happen too soon. The first idea seems to be doable, this is kind of what Ardour does, creates JACK ports for each channel in each track. This also fits my idea that each MIDI channel should be represented as a separate set of input and output MIDI ports.

moonshaadow commented 5 years ago

Is Windows compatibility prohibiting multi-input or multi-output ? I don't think so, and now JACK is available on Windows, providing compatibility between JACK ports and ASIO drivers.

http://jackaudio.org/faq/jack_on_windows.html

[...] Native Jack applications can make use of the full power of the JACK audio and MIDI connection system (for instance, they can open or close Jack connections from within the application, rather than having to set an ASIO driver to use use JackRouter), also, the use of natively provided Jack ports provides the ability to sync audio streams between applications [...] .

I 'm not able to understand how difficult this improvement could be, but I'm pretty sure that it could brings more flexibility on Linux/MacOS systems, and Windows needs more good native Jack applications in order to democratize and improve the JACK usage on Windows.

Anyways, for now the way Giada connects is very restrictive.

monocasual commented 5 years ago

We do have plans to make Giada get along with JACK in a more natural way in the future. I'll schedule this one for the 1.x milestone.

EDIT: We should also find a way to get rid of our hacked version of RtAudio, the library that provides real-time audio API, JACK included.

moonshaadow commented 5 years ago

Nice ! Is there a plan for multi-channel too?

tomek-szczesny commented 5 years ago

I think this is implied by the Jack-friendly approach. :)

moonshaadow commented 4 years ago

@hugoaboud was working on multi-channel in #175 two years ago. Is there any progress in this direction ?