man SDL::Mixer () - a SDL perl extension

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. CW$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 CW$channel into group CW$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 CW$music CW$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 CWticks has expired

fade_out_channel(channel,ms)

Fade the channel number CW$channel in CW$ms ms out.

fade_out_group(group,ms)

Fade the channel group CW$group in CW$ms ms out.

fade_out_music(ms)

Fade the music in CW$ms ms out.

fading_music()

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

fading_channel()

Return true when the channel number CW$channel is currently fading in or out.

pause( channel )

Pause the channel CW$channel.

resume(channel)

Resume the channel CW$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.