Struct servo_media_audio::listener::AudioListenerNode
source · pub(crate) struct AudioListenerNode {
channel_info: ChannelInfo,
position_x: Param,
position_y: Param,
position_z: Param,
forward_x: Param,
forward_y: Param,
forward_z: Param,
up_x: Param,
up_y: Param,
up_z: Param,
}
Expand description
AudioListeners are fake nodes; from the user’s point of view they’re a non-node entity with zero inputs and outputs, but with AudioParams that can be manipulated.
Internally, PannerNodes all have an implicit PortIndex::Listener connection from a hidden output port on AudioListeners that contains all the position data.
This encodes the otherwise implicit dependency between AudioListeners and PannerNodes so that if there is a cycle involving panner nodes and the audio params on the listener, the cycle breaking algorithm can deal with it.
Fields§
§channel_info: ChannelInfo
§position_x: Param
§position_y: Param
§position_z: Param
§forward_x: Param
§forward_y: Param
§forward_z: Param
§up_x: Param
§up_y: Param
§up_z: Param
Implementations§
Trait Implementations§
source§impl AudioNodeCommon for AudioListenerNode
impl AudioNodeCommon for AudioListenerNode
fn channel_info(&self) -> &ChannelInfo
fn channel_info_mut(&mut self) -> &mut ChannelInfo
source§impl AudioNodeEngine for AudioListenerNode
impl AudioNodeEngine for AudioListenerNode
fn node_type(&self) -> AudioNodeType
fn process(&mut self, inputs: Chunk, info: &BlockInfo) -> Chunk
fn input_count(&self) -> u32
fn get_param(&mut self, id: ParamType) -> &mut Param
fn message(&mut self, msg: AudioNodeMessage, sample_rate: f32)
source§fn message_specific(&mut self, _: AudioNodeMessage, _sample_rate: f32)
fn message_specific(&mut self, _: AudioNodeMessage, _sample_rate: f32)
Messages specific to this node
fn output_count(&self) -> u32
source§fn channel_count(&self) -> u8
fn channel_count(&self) -> u8
Number of input channels for each input port
fn channel_count_mode(&self) -> ChannelCountMode
fn channel_interpretation(&self) -> ChannelInterpretation
fn set_channel_interpretation(&mut self, i: ChannelInterpretation)
fn set_channel_count(&mut self, c: u8)
fn set_channel_count_mode(&mut self, m: ChannelCountMode)
source§fn destination_data(&mut self) -> Option<Chunk>
fn destination_data(&mut self) -> Option<Chunk>
If we’re the destination node, extract the contained data
fn set_listenerdata(&mut self, _: Block)
Auto Trait Implementations§
impl Freeze for AudioListenerNode
impl RefUnwindSafe for AudioListenerNode
impl Send for AudioListenerNode
impl Sync for AudioListenerNode
impl Unpin for AudioListenerNode
impl UnwindSafe for AudioListenerNode
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more