pub struct SoundAsset {
pub sample_rate: u32,
pub channels: u16,
pub samples: Vec<f32>,
pub loop_start: Option<usize>,
pub loop_end: Option<usize>,
}Expand description
A loaded audio clip stored as normalised float samples.
Fields§
§sample_rate: u32Samples per second (e.g. 44100).
channels: u16Number of audio channels (1 = mono, 2 = stereo).
samples: Vec<f32>Interleaved normalised samples in [-1.0, 1.0].
loop_start: Option<usize>Optional loop start sample index.
loop_end: Option<usize>Optional loop end sample index.
Implementations§
Source§impl SoundAsset
impl SoundAsset
Sourcepub fn duration_secs(&self) -> f32
pub fn duration_secs(&self) -> f32
Duration of the clip in seconds.
Sourcepub fn frame_count(&self) -> usize
pub fn frame_count(&self) -> usize
Total number of frames (one frame = one sample per channel).
Trait Implementations§
Source§impl AssetLoader<SoundAsset> for RawSoundLoader
impl AssetLoader<SoundAsset> for RawSoundLoader
Source§impl AssetProcessor<SoundAsset> for AudioNormalizer
impl AssetProcessor<SoundAsset> for AudioNormalizer
Source§impl Clone for SoundAsset
impl Clone for SoundAsset
Source§fn clone(&self) -> SoundAsset
fn clone(&self) -> SoundAsset
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SoundAsset
impl Debug for SoundAsset
impl Asset for SoundAsset
Auto Trait Implementations§
impl Freeze for SoundAsset
impl RefUnwindSafe for SoundAsset
impl Send for SoundAsset
impl Sync for SoundAsset
impl Unpin for SoundAsset
impl UnsafeUnpin for SoundAsset
impl UnwindSafe for SoundAsset
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.