Você pode usar qdbus
para acessar o kmix gráfico a partir da linha de comando. Estes são os comandos para aumentar e diminuir o volume:
qdbus org.kde.kmix /kmix/KMixWindow/actions/increase_volume com.trolltech.Qt.QAction.trigger
qdbus org.kde.kmix /kmix/KMixWindow/actions/decrease_volume com.trolltech.Qt.QAction.trigger
para referência, man qdbus
mostra que a sintaxe é qdbus <service> <path> <method> <args>
e você pode ver uma lista de opções disponíveis em cada etapa executando um comando mais curto - por exemplo, executar qdbus org.kde.kmix
mostrará uma lista de caminhos disponíveis e qdbus org.kde.kmix /kmix/KMixWindow/actions/decrease_volume
mostrará uma lista de métodos disponíveis para esse caminho, etc. Observe que os métodos marcados como sendo read ou readwrite podem ser chamados sem argumento para obter seu valor atual - isso pode ser útil para você para automação.
Alternativamente, você pode acessar o controle de volume diretamente - ou seja, não através do kmixer gráfico - com a opção / Mixers.
Apenas chame qdbus org.kde.kmix /Mixers org.kde.KMix.MixSet.currentMasterControl
para descobrir o controle mestre atual (no meu caso, alsa_output.pci-0000_00_1b.0.analog-stereo). Em seguida, use o mixer correspondente a esse nome, ou seja, / Mixers / 0 / alsa_output_pci_0000_00_1b_0_analog_stereo, com o método org.kde.KMix.Control.increaseVolume ou org.kde.KMix.Control.decreaseVolume.
Assim, o acesso direto ao controle de volume será algo assim:
qdbus org.kde.kmix /Mixers/0/alsa_output_pci_0000_00_1b_0_analog_stereo org.kde.KMix.Control.increaseVolume
qdbus org.kde.kmix /Mixers/0/alsa_output_pci_0000_00_1b_0_analog_stereo org.kde.KMix.Control.decreaseVolume
Que mudará o volume sem fazer nada gráfico.