feat: built-in volume management
- Volume slider on every node (green bar, draggable)
- Mute toggle button (M/m) on every node
- Backend: read volume/mute from PipeWire node props
- Backend: POST /api/volume {node_id, volume} to set volume
- Backend: POST /api/mute {node_id, mute} to toggle mute
- Graph JSON includes volume and mute fields per node
- Slider supports drag-to-adjust with mouse
This commit is contained in:
@@ -44,6 +44,10 @@ public:
|
||||
bool connectPorts(uint32_t output_port_id, uint32_t input_port_id);
|
||||
bool disconnectPorts(uint32_t output_port_id, uint32_t input_port_id);
|
||||
|
||||
// Volume control
|
||||
bool setNodeVolume(uint32_t node_id, float volume);
|
||||
bool setNodeMute(uint32_t node_id, bool mute);
|
||||
|
||||
// PipeWire internal data (exposed for C callbacks)
|
||||
struct PwData {
|
||||
pw_thread_loop *loop;
|
||||
|
||||
Reference in New Issue
Block a user