pub(crate) struct AudioBufferSourceNode {Show 16 fields
channel_info: ChannelInfo,
buffer: Option<AudioBuffer>,
buffer_duration: f64,
buffer_pos: f64,
detune: Param,
initialized_pos: bool,
loop_enabled: bool,
loop_end: Option<f64>,
loop_start: Option<f64>,
playback_rate: Param,
start_at: Option<Tick>,
start_offset: Option<f64>,
start_duration: Option<f64>,
start_when: f64,
stop_at: Option<Tick>,
pub onended_callback: Option<OnEndedCallback>,
}
Expand description
AudioBufferSourceNode engine. https://webaudio.github.io/web-audio-api/#AudioBufferSourceNode
Fields§
§channel_info: ChannelInfo
§buffer: Option<AudioBuffer>
A data block holding the audio sample data to be played.
buffer_duration: f64
How many more buffer-frames to output. See buffer_pos for clarification.
buffer_pos: f64
“Index” of the next buffer frame to play. “Index” is in quotes because this variable maps to a playhead position (the offset in seconds can be obtained by dividing by self.buffer.sample_rate), and therefore has subsample accuracy; a fractional “index” means interpolation is needed.
detune: Param
AudioParam to modulate the speed at which is rendered the audio stream.
initialized_pos: bool
Whether we need to compute offsets from scratch.
loop_enabled: bool
Indicates if the region of audio data designated by loopStart and loopEnd should be played continuously in a loop.
loop_end: Option<f64>
An playhead position where looping should end if the loop_enabled attribute is true.
loop_start: Option<f64>
An playhead position where looping should begin if the loop_enabled attribute is true.
playback_rate: Param
The speed at which to render the audio stream. Can be negative if the audio is to be played backwards. With a negative playback_rate, looping jumps from loop_start to loop_end instead of the other way around.
start_at: Option<Tick>
Time at which the source should start playing.
start_offset: Option<f64>
Offset parameter passed to Start().
start_duration: Option<f64>
Duration parameter passed to Start().
start_when: f64
The same as start_at, but with subsample accuracy. FIXME: AudioScheduledSourceNode should use this as well.
stop_at: Option<Tick>
Time at which the source should stop playing.
onended_callback: Option<OnEndedCallback>
The ended event callback.