class VirtualAudioComposite
Defined at line 18 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.h
Public Members
static basic_string_view kClassName
Public Methods
fuchsia_virtualaudio::Configuration GetDefaultConfig ()
Defined at line 21 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void VirtualAudioComposite (InstanceIdinstance_id,fuchsia_virtualaudio::Configurationconfig,async_dispatcher_t *dispatcher,fidl::ServerEnd<fuchsia_virtualaudio::Device>server,OnDeviceBindingClosedon_device_binding_closed)
Defined at line 36 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.h
zx::result<std::unique_ptr<VirtualAudioComposite>> Create (InstanceIdinstance_id,fuchsia_virtualaudio::Configurationconfig,async_dispatcher_t *dispatcher,fidl::ServerEnd<fuchsia_virtualaudio::Device>server,OnDeviceBindingClosedon_binding_closed,fidl::UnownedClientEnd<fuchsia_driver_framework::Node>parent)
Defined at line 170 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
zx::result<> Init (fidl::UnownedClientEnd<fuchsia_driver_framework::Node> parent)
Defined at line 184 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetFormat (GetFormatCompleter::Sync & completer)
virtualaudio.Device implementation.
Defined at line 221 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetGain (GetGainCompleter::Sync & completer)
Defined at line 1640 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetBuffer (GetBufferCompleter::Sync & completer)
Defined at line 246 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void SetNotificationFrequency (SetNotificationFrequencyRequest & request, SetNotificationFrequencyCompleter::Sync & completer)
Defined at line 1644 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetPosition (GetPositionCompleter::Sync & completer)
Defined at line 1649 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void ChangePlugState (ChangePlugStateRequest & request, ChangePlugStateCompleter::Sync & completer)
Defined at line 1653 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void AdjustClockRate (AdjustClockRateRequest & request, AdjustClockRateCompleter::Sync & completer)
Defined at line 1658 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void Reset (ResetCompleter::Sync & completer)
fuchsia.hardware.audio.Composite implementation.
Defined at line 276 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetProperties (fidl::Server<fuchsia_hardware_audio::Composite>::GetPropertiesCompleter::Sync & completer)
Defined at line 285 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetHealthState (GetHealthStateCompleter::Sync & completer)
Health implementation
Defined at line 270 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void SignalProcessingConnect (SignalProcessingConnectRequest & request, SignalProcessingConnectCompleter::Sync & completer)
signalprocessing
Defined at line 652 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetRingBufferFormats (GetRingBufferFormatsRequest & request, GetRingBufferFormatsCompleter::Sync & completer)
Defined at line 422 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void CreateRingBuffer (CreateRingBufferRequest & request, CreateRingBufferCompleter::Sync & completer)
Defined at line 487 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetDaiFormats (GetDaiFormatsRequest & request, GetDaiFormatsCompleter::Sync & completer)
Defined at line 296 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void SetDaiFormat (SetDaiFormatRequest & request, SetDaiFormatCompleter::Sync & completer)
Defined at line 323 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetPacketStreamFormats (GetPacketStreamFormatsRequest & request, GetPacketStreamFormatsCompleter::Sync & completer)
Defined at line 541 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void CreatePacketStream (CreatePacketStreamRequest & request, CreatePacketStreamCompleter::Sync & completer)
Defined at line 607 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void handle_unknown_method (fidl::UnknownMethodMetadata<fuchsia_hardware_audio::Composite> metadata, fidl::UnknownMethodCompleter::Sync & completer)
Driver doesn't support a new Composite method. Complain loudly but don't disconnect, since
this test fixture might be used with a client that is built with a newer SDK version.
Defined at line 1623 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetElements (GetElementsCompleter::Sync & completer)
fuchsia.hardware.audio.signalprocessing implementation (SignalProcessing and Reader).
Defined at line 818 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void GetTopologies (GetTopologiesCompleter::Sync & completer)
Defined at line 884 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void SetTopology (SetTopologyRequest & request, SetTopologyCompleter::Sync & completer)
Defined at line 888 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void WatchTopology (WatchTopologyCompleter::Sync & completer)
Defined at line 902 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void SetElementState (SetElementStateRequest & request, SetElementStateCompleter::Sync & completer)
Note that the range of type-specific state for an element is greater than the range of
type-specific state that can be changed by clients. This is why we define two distinct unions:
TypeSpecificElementState is used by the method WatchElementState.
This union defines variants for DAI, DYNAMICS, EQUALIZER, GAIN and VENDOR_SPECIFIC element types.
SettableTypeSpecificElementState is used by the method SetElementState.
This union defines variants for DYNAMICS, EQUALIZER, GAIN and VENDOR_SPECIFIC element types.
To verify these modes, the driver supports 1 ring buffer, 1 gain element and 1 DAI interconnect.
TODO(https://fxbug.dev/42075676): Add support for more elements specified in the Configuration,
enabling dynamic behavior and observability via the virtual_audio FIDL API.
Defined at line 1100 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void WatchElementState (WatchElementStateRequest & request, WatchElementStateCompleter::Sync & completer)
Immediately return the state of this element, if it has changed since last time this was called.
Otherwise, pend this call until the state DOES change.
Defined at line 1569 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc
void handle_unknown_method (fidl::UnknownMethodMetadata<fuchsia_hardware_audio_signalprocessing::SignalProcessing> metadata, fidl::UnknownMethodCompleter::Sync & completer)
Driver doesn't support a new SignalProcessing method. Complain loudly but don't disconnect, since
this test fixture might be used with a client that is built with a newer SDK version.
Defined at line 1614 of file ../../src/media/audio/drivers/virtual-audio/virtual-audio-composite.cc