Menu

Can I get one event to perform two outputs?

Help
Erik Elsom
2010-01-05
2013-04-23
  • Erik Elsom

    Erik Elsom - 2010-01-05

    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

     
  • Erik Elsom

    Erik Elsom - 2010-01-09

    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.

     
  • Anonymous

    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 :

    ~
    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.

     

Log in to post a comment.