pub struct AudioChannel<T> { /* private fields */ }
Expand description

Channel to play and control audio

Add your own channels via add_audio_channel. By default, there is only the AudioChannel<MainTrack> channel.

Trait Implementations§

source§

impl<T> AudioControl for AudioChannel<T>

source§

fn play(&self, audio_source: Handle<AudioSource>) -> PlayAudioCommand<'_>

Play audio


fn my_system(asset_server: Res<AssetServer>, audio: Res<Audio>) {
    audio.play(asset_server.load("audio.mp3"));
}
source§

fn stop(&self) -> TweenCommand<'_, FadeOut>

Stop all audio


fn my_system(audio: Res<Audio>) {
    audio.stop();
}
source§

fn pause(&self) -> TweenCommand<'_, FadeOut>

Pause all audio


fn my_system(audio: Res<Audio>) {
    audio.pause();
}
source§

fn resume(&self) -> TweenCommand<'_, FadeIn>

Resume all audio


fn my_system(audio: Res<Audio>) {
    audio.resume();
}
source§

fn set_volume(&self, volume: impl Into<Volume>) -> TweenCommand<'_, FadeIn>

Set the volume

The default value is 1.


fn my_system(audio: Res<Audio>) {
    audio.set_volume(0.5);
}
source§

fn set_panning(&self, panning: f64) -> TweenCommand<'_, FadeIn>

Set panning

The default value is 0.5 Values up to 1 pan to the right Values down to 0 pan to the left


fn my_system(audio: Res<Audio>) {
    audio.set_panning(0.9);
}
source§

fn set_playback_rate(&self, playback_rate: f64) -> TweenCommand<'_, FadeIn>

Set playback rate

The default value is 1


fn my_system(audio: Res<Audio>) {
    audio.set_playback_rate(2.0);
}
source§

fn state(&self, instance_handle: &Handle<AudioInstance>) -> PlaybackState

Get state for a playback instance.

source§

fn is_playing_sound(&self) -> bool

Returns true if there is any sound in this channel that is in the state Playing, Pausing, or Stopping

If there are only Stopped, Paused, or Queued sounds, the method will return false. The same result is returned if there are no sounds in the channel at all.

source§

impl<T> Default for AudioChannel<T>

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl<T> Resource for AudioChannel<T>
where Self: Send + Sync + 'static,

Auto Trait Implementations§

§

impl<T> !RefUnwindSafe for AudioChannel<T>

§

impl<T> Send for AudioChannel<T>
where T: Send,

§

impl<T> Sync for AudioChannel<T>
where T: Sync,

§

impl<T> Unpin for AudioChannel<T>
where T: Unpin,

§

impl<T> !UnwindSafe for AudioChannel<T>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast for T
where T: 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.
§

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.
§

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)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<S> FromSample<S> for S

§

fn from_sample_(s: S) -> S

§

impl<T> FromWorld for T
where T: Default,

§

fn from_world(_world: &mut World) -> T

Creates Self using data from the given [World].
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<F, T> IntoSample<T> for F
where T: FromSample<F>,

§

fn into_sample(self) -> T

§

impl<T, U> ToSample<U> for T
where U: FromSample<T>,

§

fn to_sample_(self) -> U

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<S, T> Duplex<S> for T
where T: FromSample<S> + ToSample<S>,

§

impl<T> Settings for T
where T: 'static + Send + Sync,