|
MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
|
PipeWire implementation of the audio device interface. More...
#include <PipewireBackend.hpp>
Inheritance diagram for MayaFlux::Core::PipewireDevice:
Collaboration diagram for MayaFlux::Core::PipewireDevice:Classes | |
| struct | NodeEntry |
Public Member Functions | |
| uint32_t | find_input_node_id (std::string_view name) const |
| uint32_t | find_output_node_id (std::string_view name) const |
| unsigned int | get_default_input_device () const override |
| Gets the system's primary input device identifier. | |
| unsigned int | get_default_output_device () const override |
| Gets the system's primary output device identifier. | |
| std::vector< DeviceInfo > | get_input_devices () const override |
| Retrieves information about all available input devices. | |
| std::vector< DeviceInfo > | get_output_devices () const override |
| Retrieves information about all available output devices. | |
Public Member Functions inherited from MayaFlux::Core::AudioDevice | |
| virtual | ~AudioDevice ()=default |
| Virtual destructor for proper cleanup of derived classes. | |
Private Attributes | |
| uint32_t | m_default_input_id = 0 |
| uint32_t | m_default_output_id = 0 |
| std::vector< NodeEntry > | m_nodes |
PipeWire implementation of the audio device interface.
Enumerates Audio/Sink and Audio/Source nodes from the PipeWire registry by running a synchronous roundtrip on the main loop. Default device selection uses priority.session from node properties, matching WirePlumber's default sink/source selection.
Device IDs returned are PipeWire global object IDs (uint32_t). These are passed opaquely through the unsigned int interface and consumed by PipewireStream::open() via pw_stream_connect target object ID.
Definition at line 70 of file PipewireBackend.hpp.