my $num_decoders = SDL::Mixer::Samples::get_num_chunk_decoders();
Returns the number of available decoders.
my $decoder = SDL::Mixer::Samples::get_chunk_decoder( $num_decoder );
Returns the decoder for the given id.
my $mix_chunk = SDL::Mixer::Samples::load_WAV( $file );
"load_WAV" reads a file and passes it to SDL::Mixer::Samples::load_WAV_RW. SO this is a quick way to load a file into a chunk.
Example:
my $chunk = SDL::Mixer::Samples::load_WAV('sample.wav'); SDL::Mixer::Channels::play_channel(-1, $chunk, -1); SDL::delay(2000);
my $mix_chunk = SDL::Mixer::Samples::load_WAV_RW( $rwops, $free );
"load_WAV_RW" is a macro that loads a sound sample from a a block of memory. It supports WAVE-, MOD-, MIDI-, OGG- and MP3 files (sometimes depends on compilation options). It accepts two arguments, the first being a RWops object from which to read and the second being a flag to free the source memory after loading is complete or not.
Returns a Mix_Chunk containing the whole sample on success, or "undef" on error.
Note: Do not reuse the RWops-object for another call to this function!
Example:
my $rwops = SDL::RWOps->new_file('sample.wav', 'r'); my $chunk = SDL::Mixer::Samples::load_WAV_RW($rwops, 0); SDL::Mixer::Channels::play_channel(-1, $chunk, -1); SDL::delay(2000);
SDL::Mixer::Samples::quick_load_WAV( $buf );
SDL::Mixer::Samples::quick_load_RAW( $buf, $len );
my $volume_before = SDL::Mixer::Samples::volume_chunk( $chunk, $new_volume );
"volume_chunk" let you set and get the volume of a chunk. When a chunk is created is volume is "MIX_MAX_VOLUME" (128).
If you pass "-1" as $new_volume you just get its volume without changing it.