Jonatan Liljedahl: >> >> >> Thanks for clearing up. But I'm pretty sure your idea is too >> simple. We also need a way to create ports which are not >> autoconnected. >> >> The ideal way, if we follow this thread of thinking, would >> be to add another type of jack_port_register function, which >> does not autoconnect: >> >> jack_port_register_no_autoconnect(client,...); >> >> However, this new API will break a lot of current programs >> which are using the old jack_port_register function instead. >> Infact I don't think there is any (sane) way to make your >> proposal work without creating lots of mess with ports >> in old programs who are autoconnecting when it shouldn't. > > I think my proposal with a JackPortAutoConnect bit in JackPortFlags is > sane, it would not break old applications; they would continue to > function exactly as they are now. but updated code can get rid of their > own autoconnection and use this autoconnect bit in the flags to > jack_port_register() instead. >
Yes, as long as JackPortAutoConnect is false by default, that's definietely a sane solution. Its basically the same kind of proposal I made, just using a flag to jack_port_register instead of a new function. But there is one problem with it: jack_client_t *client=... jack_port_t *out_port[0]=jack_port_register(client,...JackPortAutoConnect); jack_port_t *out_port[1]=jack_port_register(client,...JackPortAutoConnect); <something happens> jack_port_t *new_out_port[0]=jack_port_register(client,...JackPortAutoConnect); jack_port_t *new_out_port[1]=jack_port_register(client,...JackPortAutoConnect); The problem is that new_out_port[0] and new_out_port[1] will connect to physical port number 2 and 3 instead of 0 and 1. How do you fix this problem without adding a new function to jacklib? _______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
