pub trait AudioNode {
Show 17 methods // Required methods fn registration(&self) -> &AudioContextRegistration; fn channel_config(&self) -> &ChannelConfig; fn number_of_inputs(&self) -> usize; fn number_of_outputs(&self) -> usize; // Provided methods fn context(&self) -> &ConcreteBaseAudioContext { ... } fn connect<'a>(&self, dest: &'a dyn AudioNode) -> &'a dyn AudioNode { ... } fn connect_at<'a>( &self, dest: &'a dyn AudioNode, output: usize, input: usize ) -> &'a dyn AudioNode { ... } fn disconnect_from<'a>(&self, dest: &'a dyn AudioNode) -> &'a dyn AudioNode { ... } fn disconnect(&self) { ... } fn channel_count_mode(&self) -> ChannelCountMode { ... } fn set_channel_count_mode(&self, v: ChannelCountMode) { ... } fn channel_interpretation(&self) -> ChannelInterpretation { ... } fn set_channel_interpretation(&self, v: ChannelInterpretation) { ... } fn channel_count(&self) -> usize { ... } fn set_channel_count(&self, v: usize) { ... } fn set_onprocessorerror( &self, callback: Box<dyn FnOnce(ErrorEvent) + Send + 'static> ) { ... } fn clear_onprocessorerror(&self) { ... }
}
Expand description

This interface represents audio sources, the audio destination, and intermediate processing modules.

These modules can be connected together to form processing graphs for rendering audio to the audio hardware. Each node can have inputs and/or outputs.

Note that the AudioNode is typically constructed together with an AudioProcessor (the object that lives the render thread). See BaseAudioContext::register.

Required Methods§

source

fn registration(&self) -> &AudioContextRegistration

source

fn channel_config(&self) -> &ChannelConfig

source

fn number_of_inputs(&self) -> usize

The number of inputs feeding into the AudioNode. For source nodes, this will be 0.

source

fn number_of_outputs(&self) -> usize

The number of outputs coming out of the AudioNode.

Provided Methods§

source

fn context(&self) -> &ConcreteBaseAudioContext

The BaseAudioContext concrete type which owns this AudioNode.

source

fn connect<'a>(&self, dest: &'a dyn AudioNode) -> &'a dyn AudioNode

Connect the output of this AudioNode to the input of another node.

Panics

This function will panic when

  • the AudioContext of the source and destination does not match
source

fn connect_at<'a>( &self, dest: &'a dyn AudioNode, output: usize, input: usize ) -> &'a dyn AudioNode

Connect a specific output of this AudioNode to a specific input of another node.

Panics

This function will panic when

  • the AudioContext of the source and destination does not match
  • if the input port is out of bounds for the destination node
  • if the output port is out of bounds for the source node
source

fn disconnect_from<'a>(&self, dest: &'a dyn AudioNode) -> &'a dyn AudioNode

Disconnects all outputs of the AudioNode that go to a specific destination AudioNode.

source

fn disconnect(&self)

Disconnects all outgoing connections from the AudioNode.

source

fn channel_count_mode(&self) -> ChannelCountMode

Represents an enumerated value describing the way channels must be matched between the node’s inputs and outputs.

source

fn set_channel_count_mode(&self, v: ChannelCountMode)

Update the channel_count_mode attribute

source

fn channel_interpretation(&self) -> ChannelInterpretation

Represents an enumerated value describing the meaning of the channels. This interpretation will define how audio up-mixing and down-mixing will happen.

source

fn set_channel_interpretation(&self, v: ChannelInterpretation)

Update the channel_interpretation attribute

source

fn channel_count(&self) -> usize

Represents an integer used to determine how many channels are used when up-mixing and down-mixing connections to any inputs to the node.

source

fn set_channel_count(&self, v: usize)

Update the channel_count attribute

source

fn set_onprocessorerror( &self, callback: Box<dyn FnOnce(ErrorEvent) + Send + 'static> )

Register callback to run when an unhandled exception occurs in the audio processor.

Note that once a unhandled exception is thrown, the processor will output silence throughout its lifetime.

Only a single event handler is active at any time. Calling this method multiple times will override the previous event handler.

source

fn clear_onprocessorerror(&self)

Unset the callback to run when an unhandled exception occurs in the audio processor.

Implementors§