SDL::Mixer(3)

NAME
SDL::Mixer - a SDL perl extension

SYNOPSIS
  $mixer = new SDL::Mixer       -frequency => MIX_DEFAULT_FREQUENCY,
                                -format => MIX_DEFAULT_FORMAT,
                                -channels => MIX_DEFAULT_CHANNELS,
                                -size => 4096;

EXPORTS
SDL::Mixer exports the following symbols by default:

        MIX_MAX_VOLUME
        MIX_DEFAULT_FREQUENCY
        MIX_DEFAULT_FORMAT
        MIX_DEFAULT_CHANNELS
        MIX_NO_FADING
        MIX_FADING_OUT
        MIX_FADING_IN
        AUDIO_U8
        AUDIO_S8
        AUDIO_U16
        AUDIO_S16
        AUDIO_U16MSB
        AUDIO_S16MSB

DESCRIPTION
SDL::Mixer allows you access to the SDL mixer library, enablig sound and music volume setting, playing, pausing and resuming, as well as fading the sound and music in and out.

METHODS

  new()
        $mixer = SDL::Mixer->new(       -frequency => MIX_DEFAULT_FREQUENCY,
                                        -format    => MIX_DEFAULT_FORMAT,
                                        -channels  => MIX_DEFAULT_CHANNELS,
                                        -size      => 4096);

Creates a new SDL::Mixer object. $size is the buffer size in bytes.

  query_spec()
        my $specs = SDL::Mixer::query_spec();

Returns a hash reference, containing the following keys and their respective values:

        -status
        -frequency
        -channels
        -format

  reserve_channels
        $mixer->reserve_channels(4);

Reserve so many channels.

  allocate_channels()
        $mixer->reserve_channels(2);

Allocate so many channels.

  group_channel(channel,group)
Group the channel number $channel into group $group.

  group_channels(from,to,group)
Groups a range of channels

  group_available(group)
Return true when the group is available.

  group_count(group)
Returns the number of channels in the group

  group_oldest()

  group_newer()

  play_channel()

  play_music()
Play $music $loop times.

  fade_in_channel(channel,chunk,loops,ms,ticks)
Fades a channel in

  fade_in_music(music,loops,ms)
Fades the music in over a number of ms, looping as it does

  channel_volume(channel,volume)
Sets the volume for a single channel

  mucis_volume(volume)
Set the volume for the music.

  halt_channel(channel)
Stops a specific channel

  halt_group(group)
Stops a group of channels

  halt_music()
Stops the music

  channel_expire(channel,ticks)
Ignores the channel after "ticks" has expired

  fade_out_channel(channel,ms)
Fade the channel number $channel in $ms ms out.

  fade_out_group(group,ms)
Fade the channel group $group in $ms ms out.

  fade_out_music(ms)
Fade the music in $ms ms out.

  fading_music()
Return true when the music is currently fading in or out.

  fading_channel()
Return true when the channel number $channel is currently fading in or out.

  pause( channel )
Pause the channel $channel.

  resume(channel)
Resume the channel $channel.

  paused()
Return true when the channel is currently paused.

  pause_music()
Pause the music play.

  resume_music()
Resume the music play.

  rewind_music()
Resets the music file to the beginning

  music_paused()
Return true when the music is currently paused.

  playing()
Return true when the channel is currently playing.

  playing_music ()
Return true when the music is currently playing.

AUTHORS
David J. Goehrig, basic doc added by Tels <http://bloodgate.com>.

SEE ALSO
perl(1), SDL::Music and SDL::Sound.