Playing sound samples
LuaSDL can play many sound samples at the same time by using mixing channels. This allows you to not only play more sounds simultaneously but also apply basic mixing functions to sound channels, such as volume control, panning, fade-in, and fade-out.
Getting ready
There are eight mixing channels by default, which is usually fine for simple games. You can increase the number of mixing channels by using the SDL.Mix_AllocateChannels
function with one argument. The maximum number of channels is limited only by your memory.
Tip
Be extra careful when using a large number of mixing channels as you can easily slip into a segmentation fault and crash your application!
This can be used in three ways. If you submit a positive number of channels in the argument, it will allocate channels to match the desired channel count. If the submitted number is lower than a number of currently allocated channels, it'll free up the unnecessary channels. A negative number will only return a number...