-
Notifications
You must be signed in to change notification settings - Fork 80
Allow creation of multiple named Pulse Audio Sink/Sources #290
base: master
Are you sure you want to change the base?
Conversation
That looks quite awesome, really. Really makes me want to dedicate some time to Cadence. |
Thanks! I hope it's useful for people. |
Hi ! But there is something important we can't do with your PR now: Add/remove alive a group without removing the running ones. It is important because you can choose to add/remove a source to gain some DSP, but many programs will complain if we shut off them audio output (worse, sometime they won't complain but they will stay muted). TBH, I don't really see the interest of undo/save buttons, I don't think anyone will configure a very complex situation so long to write to really need this, I'd prefer an "update" button which could update all the PA bridges as I said in foregoing paragraph. Little notes:
Something's bothering me a little. PA jack ports can take different names, and cadence-pulse2jack still checks if pulseaudio is brigded with
So it's not correct if main group has a different name. Do you see any alternative to this ? Do you know if pulseaudio bridge writes some file somewhere, or maybe in dbus ? Best Regards |
Hi @Houston4444 - one of the things that drove me to finish this work was I'd seen your patch too! I did notice the bug in the bridge name and have it changed locally, but haven't pushed the change to my branch yet I've used this as a fix
However, there may be other applications that use it as a default. But that's no excuse not to make it changeable. Regarding your other comments:
I think @falkTX was talking of some big changes to Cadence to make it just an application for managing Jack and Bridges, so there's going to be some pretty major changes in hand, hopefully this PR will get in, or at least be a useful point to rebuild Cadence from. Also, I hadn't discovered NSM until the comment above, and have moved over to that from Ladish myself, including picking up raysession this weekend too - small world. |
… "PulseAudio JACK Sink"
@Houston4444 Also regarding your comment about adding a new group while running - this is an interesting point. I think it could be done with some clever handling of pa_ctl commands to insert just the new ones. It will probably require a rewrite of the bash script, as that's where all the logic occurs. I'll have a look at that too. |
Finally, "Undo" button can be useful, especially because Cadence goes to systray and the modifications wont be erased until a cadence restart, but I still think "Save" is useless and could be replaced by a direct "Update".
You can check the cadence-pulse2jack from my PR, it does this job. my PR also allows a dialog box to configure channels from systray, this could be easily doable moving all your verticalLayout_21 (cadence.ui) in a QFrame. We could also add this dialog to Catia menu, but I don't know if it takes sense if Catia will be separated from the Cadence suite. @falkTX ?
TBH, I've seen your PR the day you pushed it, telling me I had to look at it. Your face looked familiar on your yesterday message ;) . |
I've pushed a few changes:
I'm not removing the save button, as for me that is the key purpose. I only ever invoke Cadence to set the table values, and then save the data (which saves to ~/.pulse/jack-connections), and then use cadence-pulse2jack to load that data into pulse. I'll look at the "live update" button tomorrow to change the currently running pulseaudio. |
Really useful feedback @Houston4444, thankyou! I've just pushed a cosmetic change to the auto-connect checkboxes to be centred. I still need to work out why it has a scroll bar at the bottom and a weird box on the right side of the checkbox header. I was thinking about the save/apply, and think it's the same thing. So, I'll work on:
What do you mean by "bridge status label"? Do you mean the "Pulseaudio started and bridged to JACK"? If so, what do you need to change? A bit more space above? |
Yes, that's what I was thinking.
Exactly. I will make you a PR for icons on type, it's really nicer. |
I meant to comment on the icons; that sounds like a great idea too. |
…ges and 'save' if changes are correct. Purpose directly pertinent group add if no sink or no source exists
add icons to source/sink combo box
Secure pulse edit
Hi |
Just leaving a note here in case anyone is waiting on my feedback. There are big changes for cadence coming yes, but mostly it is about a split of catia and the tools into separate projects (so catia will be its own standalone thing, just like carla) |
@@ -79,7 +81,7 @@ def load_data_into_cells(self): | |||
# Name | |||
name_col = QLineEdit() | |||
name_col.setText(data.name) | |||
name_col.returnPressed.connect(self.enable_buttons) | |||
name_col.textChanged.connect(self.customChanged.emit) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please note this usage is incorrect.
you are connecting here to a function rather than the actual signal.
you should remove the "emit" at the end.
this still works anyway because pyqt allows to objects to connect to regular python functions, so when you call "emit()" you are triggering that function..
Is there any reason this hasn't been pulled that I could help with? This feature would be very useful for mixing streams from programs that are not JACK-native. |
@ipatrol : note that I have already done something similar here: https://github.com/Houston4444/Cadence/tree/lzk4 . |
I didn't follow up on Filipe's comment, and this lost priority for me, and my Python QT skills are pretty low so this was taking me more time than I'd have liked. |
This is to implement #234
I have changed the Jack Bridges UI configuration into a new tab, grouped the ALSA, and created a new table that allows creating/editing new Pulse Audio connections.
This also allows users to change the default names of the Pulse Audio source/sinks
For illustration:
I am by no means a QT UI developer, but have tried to make it as intuitive as possible.
The configuration for the table is stored in GlobalSettings.conf for the UI, and also into ~/.pulse/jack-connections for the script cadence-pulse2jack to read and use.
My apologies for not pushing this change previously, but I haven't had access to a linux laptop for over a year, so the work was left almost complete, and I decided to resurrect it and complete it.