Expand description
This module provides all needed types and methods to create/load sound buffers from different sources.
§Overview
Buffer is data source for sound sources in the engine. Each sound sound will fetch samples it needs
from a buffer, process them and send to output device. Buffer can be shared across multiple sources,
this is why each instance wrapped into Arc<Mutex<>>. Why not just load a buffer per source? This
is just inefficient memory-wise. Sound samples are very heavy: for example a mono sound that lasts
just 1 second will take ~172 Kb of memory (with 44100 Hz sampling rate and float sample representation).
Modules§
Structs§
- Sound
Buffer Resource - A shared sound buffer resource.
Enums§
- Data
Source - Data source enumeration. Provides unified way of selecting data source for sound buffers. It can be either a file or memory block.
- Sound
Buffer Resource Load Error - An error that can occur during loading of sound buffer.
- Sound
Buffer State - Sound buffer is a data source for sound sources. See module documentation for more info.
Traits§
- RawStreaming
Data Source - A samples generator.