I've been getting progressively more frustrated trying to figure out a way to get Gizmod to control both my PCM and Master volume controls simultaneously.
In GizmoDeviceStrings.py I've tried several things in the DEFAULT_MIXERS = section such as this did not work and I assume gizmod reverted to the GizmoDeviceStrings.py in /etc/gizmod folder as it was then controlling only master.
I'm not much of a programmer (as I'm sure you can tell), but I can't believe there is no way to do this.
Is there something that can be added to 299-Powermate-Default.py to cause multiple outputs from the single event?
This is important to me as only pcm seems to get my volume down all the way and if I have master turned down I can still hear sound until I turn down pcm. If I then leave master all the way up and allow gizmod to just control pcm (seemed like a solution) then certain programs will still use the master channel and I'll be at full volume as the pcm slider won't affect them. i.e. system notifications, certain media players, etc.
So, the best solution for me would be to control both levels simultaneously… There's gotta be a way.
Please let me know and thank you in advance.
Erik
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Please let me know one way or the other so if this is not possible, I can attempt another solution.
Thank you.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2010-08-19
Here's what I did:
On my laptop, the headphone and master volume are two different channels … It would appear that gizmod is only programmed to control a default channel … so there's no way to do this from within gizmod without altering the source code.
However, you can always call an outside program from inside the scripts in /etc/gizmod/modules.d :
I just used the external program 'amixer' to change the volume on both channels at once. You can use amixer to find the names of the channels you want to alter.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I've been getting progressively more frustrated trying to figure out a way to get Gizmod to control both my PCM and Master volume controls simultaneously.
In GizmoDeviceStrings.py I've tried several things in the DEFAULT_MIXERS = section such as this did not work and I assume gizmod reverted to the GizmoDeviceStrings.py in /etc/gizmod folder as it was then controlling only master.
I'm not much of a programmer (as I'm sure you can tell), but I can't believe there is no way to do this.
Is there something that can be added to 299-Powermate-Default.py to cause multiple outputs from the single event?
This is important to me as only pcm seems to get my volume down all the way and if I have master turned down I can still hear sound until I turn down pcm. If I then leave master all the way up and allow gizmod to just control pcm (seemed like a solution) then certain programs will still use the master channel and I'll be at full volume as the pcm slider won't affect them. i.e. system notifications, certain media players, etc.
So, the best solution for me would be to control both levels simultaneously… There's gotta be a way.
Please let me know and thank you in advance.
Erik
Surely the developer is monitoring these posts.
Any ideas here?
Please let me know one way or the other so if this is not possible, I can attempt another solution.
Thank you.
Here's what I did:
On my laptop, the headphone and master volume are two different channels … It would appear that gizmod is only programmed to control a default channel … so there's no way to do this from within gizmod without altering the source code.
However, you can always call an outside program from inside the scripts in /etc/gizmod/modules.d :
~
elif Event.Code == GizmoKey.KEY_VOLUMEUP:
# Gizmod.DefaultMixerVolume.VolumePlayback = Gizmod.DefaultMixerVolume.VolumePlayback + 1
subprocess.Popen()
subprocess.Popen()
return True
elif Event.Code == GizmoKey.KEY_VOLUMEDOWN:
subprocess.Popen()
subprocess.Popen()
# Gizmod.DefaultMixerVolume.VolumePlayback = Gizmod.DefaultMixerVolume.VolumePlayback - 1
return True
~
I just used the external program 'amixer' to change the volume on both channels at once. You can use amixer to find the names of the channels you want to alter.