Trait hound::Sample [] [src]

pub trait Sample: Sized {
    fn write<W: Write>(self, writer: &mut W, bits: u16) -> Result<()>;
fn read<R: Read>(
        reader: &mut R,
        _: SampleFormat,
        bytes: u16,
        bits: u16
    ) -> Result<Self>;
fn as_i16(self) -> i16; }

A type that can be used to represent audio samples.

Via this trait, decoding can be generic over i8, i16, i32 and f32.

All integer formats with bit depths up to 32 bits per sample can be decoded into i32, but it takes up more memory. If you know beforehand that you will be reading a file with 16 bits per sample, then decoding into an i16 will be sufficient.

Required Methods

Writes the audio sample to the WAVE data chunk.

Reads the audio sample from the WAVE data chunk.

Cast the sample to a 16-bit sample.

This does not change the value of the sample, it only casts it. The value is assumed to fit within the range. This is not verified, truncation may occur.

Implementations on Foreign Types

impl Sample for i8
[src]

[src]

[src]

[src]

impl Sample for i16
[src]

[src]

[src]

[src]

impl Sample for i32
[src]

[src]

[src]

[src]

impl Sample for f32
[src]

[src]

[src]

[src]

Implementors