Add application volume mixer
This commit is contained in:
@@ -9,11 +9,55 @@ import qs.services
|
||||
import qs.modules.settings
|
||||
|
||||
ShellRoot {
|
||||
id: root
|
||||
|
||||
QtObject {
|
||||
id: fixtureAudio
|
||||
property real volume: 0.42
|
||||
property bool muted: false
|
||||
}
|
||||
|
||||
QtObject {
|
||||
id: fixtureNode
|
||||
property QtObject audio: fixtureAudio
|
||||
}
|
||||
|
||||
readonly property var fixtureApplication: ({
|
||||
key: "fixture.player",
|
||||
label: "Fixture Player",
|
||||
icon: "audio-x-generic-symbolic",
|
||||
nodes: [fixtureNode]
|
||||
})
|
||||
|
||||
SoundPage {
|
||||
width: 760
|
||||
height: 900
|
||||
}
|
||||
|
||||
ApplicationMixer {
|
||||
id: populatedMixer
|
||||
width: 620
|
||||
visible: false
|
||||
applications: [root.fixtureApplication]
|
||||
pipewireReady: true
|
||||
}
|
||||
|
||||
ApplicationMixer {
|
||||
id: emptyMixer
|
||||
width: 620
|
||||
visible: false
|
||||
applications: []
|
||||
pipewireReady: true
|
||||
}
|
||||
|
||||
ApplicationMixer {
|
||||
id: unavailableMixer
|
||||
width: 620
|
||||
visible: false
|
||||
applications: []
|
||||
pipewireReady: false
|
||||
}
|
||||
|
||||
PwObjectTracker {
|
||||
objects: AudioDevices.outputs.concat(AudioDevices.inputs)
|
||||
}
|
||||
@@ -26,8 +70,15 @@ ShellRoot {
|
||||
ready: Pipewire.ready,
|
||||
outputs: AudioDevices.outputs.length,
|
||||
inputs: AudioDevices.inputs.length,
|
||||
applications: AudioDevices.applications.length,
|
||||
defaultOutput: AudioDevices.label(AudioDevices.current(true)),
|
||||
defaultInput: AudioDevices.label(AudioDevices.current(false))
|
||||
defaultInput: AudioDevices.label(AudioDevices.current(false)),
|
||||
populatedRows: populatedMixer.rowCount,
|
||||
populatedStatus: populatedMixer.statusText,
|
||||
emptyRows: emptyMixer.rowCount,
|
||||
emptyStatus: emptyMixer.statusText,
|
||||
unavailableRows: unavailableMixer.rowCount,
|
||||
unavailableStatus: unavailableMixer.statusText
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user