The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

SDL::Mixer::Groups - Audio channel group functions

CATEGORY

Mixer

METHODS

reserve_channels

 my $reserved = SDL::Mixer::Groups::reserve_channels( $num );

$num is the number of channels to reserve from default mixing. Zero removes all reservations.

Reserve $num channels from being used when playing samples when passing in -1 as a channel number to playback functions. The channels are reserved starting from channel 0 to $num-1. Passing in zero will unreserve all channels. Normally SDL_mixer starts without any channels reserved.

The following functions are affected by this setting:

Returns: The number of channels reserved. Never fails, but may return less channels than you ask for, depending on the number of channels previously allocated (see SDL::Mixer::Channels::allocate_channels).

group_channel

 my $grouped = SDL::Mixer::Groups::group_channel( $channel, $group );

Add a channel to group id (any positive integer), or reset it's group to the default group by passing (-1).

Returns: True(1) on success. False(0) is returned when the channel specified is invalid.

group_channels

 my $grouped = SDL::Mixer::Groups::group_channels( $from_channel, $to_channel, $group );

Add a range of channels to group id (any positive integer), or reset their group to the default group by passing (-1).

Returns: The number of affected channels.

group_available

 my $channel = SDL::Mixer::Groups::group_count( $group );

group_newer returns the first available channel of this group.

group_count

 my $channels = SDL::Mixer::Groups::group_count( $group );

group_newer returns the number of channels in this group.

group_oldest

 my $channel = SDL::Mixer::Groups::group_oldest( $group );

group_newer returns the channel number which started to play at first.

group_newer

 my $channel = SDL::Mixer::Groups::group_newer( $group );

group_newer returns the channel number which started to play at last.

fade_out_group

 SDL::Mixer::Groups::fade_out_group( $group, $ms );

Fades out the channels by the given group id. The fade-out-time is specified by $ms.

Returns the number of affected channels.

halt_group

 SDL::Mixer::Groups::hals_group( $group );

Halts the channels by the given group id.

Returns 0.

AUTHORS

See "AUTHORS" in SDL.