[][src]Struct tetra::audio::Sound

pub struct Sound { /* fields omitted */ }

Sound data that can be played back.

Supports WAV, Ogg Vorbis, MP3 and FLAC (in other words, everything that Rodio provides support for).

All of the playback methods on this type return a SoundInstance that can be used to control the sound after it has started. If you just want to 'fire and forget' a sound, you can discard it - the sound will continue playing regardless.

This type acts as a lightweight handle to the associated audio data, and so can be cloned with little overhead.

Methods

impl Sound[src]

pub fn new<P>(path: P) -> Result<Sound> where
    P: AsRef<Path>, 
[src]

Creates a new sound from the given file.

Errors

If the file path is invalid, a TetraError::Io will be returned. Note that the data is not decoded until playback begins, so this function will not validate that the data being read is formatted correctly.

pub fn from_file_data(data: &[u8]) -> Sound[src]

Creates a new sound from a slice of binary data, encoded in one of Tetra's supported file formats.

This is useful in combination with include_bytes, as it allows you to include your audio data directly in the binary.

Note that the data is not decoded until playback begins, so this function will not validate that the data being read is formatted correctly.

pub fn from_data(data: &[u8]) -> Sound[src]

Deprecated since 0.2.13:

Renamed to from_file_data to disambiguate from other sound data formats (e.g. PCM).

pub fn play(&self, ctx: &Context) -> Result<SoundInstance>[src]

Plays the sound.

Errors

If there is no active audio device, a TetraError::NoAudioDevice will be returned.

If the sound data could not be decoded, a TetraError::FailedToDecodeAudio will be returned.

pub fn repeat(&self, ctx: &Context) -> Result<SoundInstance>[src]

Plays the sound repeatedly.

Errors

If there is no active audio device, a TetraError::NoAudioDevice will be returned.

If the sound data could not be decoded, a TetraError::FailedToDecodeAudio will be returned.

pub fn spawn(&self, ctx: &Context) -> Result<SoundInstance>[src]

Spawns a new instance of the sound that is not playing yet.

Errors

If there is no active audio device, a TetraError::NoAudioDevice will be returned.

If the sound data could not be decoded, a TetraError::FailedToDecodeAudio will be returned.

pub fn play_with(
    &self,
    ctx: &Context,
    volume: f32,
    speed: f32
) -> Result<SoundInstance>
[src]

Plays the sound, with the provided settings.

Errors

If there is no active audio device, a TetraError::NoAudioDevice will be returned.

If the sound data could not be decoded, a TetraError::FailedToDecodeAudio will be returned.

pub fn repeat_with(
    &self,
    ctx: &Context,
    volume: f32,
    speed: f32
) -> Result<SoundInstance>
[src]

Plays the sound repeatedly, with the provided settings.

Errors

If there is no active audio device, a TetraError::NoAudioDevice will be returned.

If the sound data could not be decoded, a TetraError::FailedToDecodeAudio will be returned.

pub fn spawn_with(
    &self,
    ctx: &Context,
    volume: f32,
    speed: f32
) -> Result<SoundInstance>
[src]

Spawns a new instance of the sound that is not playing yet, with the provided settings.

Errors

If there is no active audio device, a TetraError::NoAudioDevice will be returned.

If the sound data could not be decoded, a TetraError::FailedToDecodeAudio will be returned.

Trait Implementations

impl PartialEq<Sound> for Sound[src]

impl Clone for Sound[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Sound[src]

Auto Trait Implementations

impl Send for Sound

impl Sync for Sound

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<T> SetParameter for T

fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
    T: Parameter<Self>, 

Sets value as a parameter of self.