Struct bevy::audio::AudioSource
pub struct AudioSource {
pub bytes: Arc<[u8]>,
}
Expand description
A source of audio data
Fields§
§bytes: Arc<[u8]>
Raw data of the audio source.
The data must be one of the file formats supported by Bevy (wav
, ogg
, flac
, or mp3
).
It is decoded using rodio::decoder::Decoder
.
The decoder has conditionally compiled methods
depending on the features enabled.
If the format used is not enabled,
then this will panic with an UnrecognizedFormat
error.
Trait Implementations§
§impl AsRef<[u8]> for AudioSource
impl AsRef<[u8]> for AudioSource
§impl Clone for AudioSource
impl Clone for AudioSource
§fn clone(&self) -> AudioSource
fn clone(&self) -> AudioSource
Returns a copy 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 more§impl Debug for AudioSource
impl Debug for AudioSource
§impl Decodable for AudioSource
impl Decodable for AudioSource
§type Decoder = Decoder<Cursor<AudioSource>>
type Decoder = Decoder<Cursor<AudioSource>>
The type of the iterator of the audio samples,
which iterates over samples of type
Self::DecoderItem
.
Must be a rodio::Source
so that it can provide information on the audio it is iterating over.§type DecoderItem = <Decoder<Cursor<AudioSource>> as Iterator>::Item
type DecoderItem = <Decoder<Cursor<AudioSource>> as Iterator>::Item
The type of the audio samples.
Usually a
u16
, i16
or f32
, as those implement rodio::Sample
.
Other types can implement the rodio::Sample
trait as well.§fn decoder(&self) -> <AudioSource as Decodable>::Decoder
fn decoder(&self) -> <AudioSource as Decodable>::Decoder
Build and return a
Self::Decoder
of the implementing typeAuto Trait Implementations§
impl RefUnwindSafe for AudioSource
impl Send for AudioSource
impl Sync for AudioSource
impl Unpin for AudioSource
impl UnwindSafe for AudioSource
Blanket Implementations§
§impl<T, U> AsBindGroupShaderType<U> for Twhere
U: ShaderType,
&'a T: for<'a> Into<U>,
impl<T, U> AsBindGroupShaderType<U> for Twhere U: ShaderType, &'a T: for<'a> Into<U>,
§fn as_bind_group_shader_type(&self, _images: &RenderAssets<Image>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<Image>) -> U
Return the
T
ShaderType
for self
. When used in AsBindGroup
derives, it is safe to assume that all images in self
exist.§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§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.§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.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
§impl<S, T> ParallelSlice<T> for Swhere
T: Sync,
S: AsRef<[T]>,
impl<S, T> ParallelSlice<T> for Swhere T: Sync, S: AsRef<[T]>,
§fn par_chunk_map<F, R>(
&self,
task_pool: &TaskPool,
chunk_size: usize,
f: F
) -> Vec<R, Global> ⓘwhere
F: Fn(&[T]) -> R + Send + Sync,
R: Send + 'static,
fn par_chunk_map<F, R>( &self, task_pool: &TaskPool, chunk_size: usize, f: F ) -> Vec<R, Global> ⓘwhere F: Fn(&[T]) -> R + Send + Sync, R: Send + 'static,
Splits the slice in chunks of size
chunks_size
or less and maps the chunks
in parallel across the provided task_pool
. One task is spawned in the task pool
for every chunk. Read more§fn par_splat_map<F, R>(
&self,
task_pool: &TaskPool,
max_tasks: Option<usize>,
f: F
) -> Vec<R, Global> ⓘwhere
F: Fn(&[T]) -> R + Send + Sync,
R: Send + 'static,
fn par_splat_map<F, R>( &self, task_pool: &TaskPool, max_tasks: Option<usize>, f: F ) -> Vec<R, Global> ⓘwhere F: Fn(&[T]) -> R + Send + Sync, R: Send + 'static,
Splits the slice into a maximum of
max_tasks
chunks, and maps the chunks in parallel
across the provided task_pool
. One task is spawned in the task pool for every chunk. Read more