Fri Feb 08, 2013 1:39 am
I'm not well versed with qdbus so excuse my ignorance. I'm trying to create a script and bind a key that will change what "Master Channel" is selected in kmix. Thus when i use my keyboard wheel it goes to the right Channel. This is come about because I use pulseaudio and multiple cards that I switch between.
So i'm looking at qdbus
And I think
Is what I need to use to set it. But the problem is I don't really know what it's looking for for "interface_name" "property_name" and "value". I can't get passed figuring out what the "interface_name" would be. Whatever I try I just get the following error :
(obviously know all 3 options aren't 1 was just an example to show I have no idea lol)
Anyone have any clues or can point me in the right direction?
Fri Feb 08, 2013 3:12 am
If you wanted to create a convenient script to trigger the showing of the "Select Master Channel" window, then you would have it run:
You can find out the current master channel by executing the following:
To change the master channel, you need two things: a mixer and a controller. From what I can tell, both are one and the same.
Unfortunately, the hard part is getting a list of valid mixers/controllers. The only way I saw was to grep the output of "qdbus" for the particular mixer I was interested in.
To determine the current master mixer, one needs to compare the output of this command:
With the output of the following:
Where <mixer path> is one of the values from the list returned by the following command:
Once you have determined the currently active master mixer, you can look beneath it for devices. In this example, the currently active mixer was "/Mixer/0" so I needed to run:
This yielded a list of two entries:
These are the device names which can be passed to "setCurrentMixer" (after removing the /Mixers/0/ part).
System Settings and Device Actions KCM maintainer