More actions
(Created page with "{{Infobox homebrew | title = Advanced Sound Library | image = | type = Audio | version = 1.0 | licence = Mixed | author = Noda | website ...") |
No edit summary |
||
Line 14: | Line 14: | ||
==Features== | ==Features== | ||
*MP3 engine: | *MP3 engine | ||
*Audio engine | |||
==User guide== | |||
'''MP3 engine:''' | |||
:mp3 is decoded on the arm7, so use nearly no CPU time on the arm9 | :mp3 is decoded on the arm7, so use nearly no CPU time on the arm9 | ||
:stereo & surround modes available (surround works even for mono mp3s) | :stereo & surround modes available (surround works even for mono mp3s) | ||
Line 25: | Line 29: | ||
:you can disable the mp3 engine if you want, to get 2 more channels | :you can disable the mp3 engine if you want, to get 2 more channels | ||
'''Audio engine:''' | |||
:can use the whole 16 DS channel or only the first half (so you can use an external mod player, for example) | :can use the whole 16 DS channel or only the first half (so you can use an external mod player, for example) | ||
:support standard or surround/fx mode (16 channels in standard mode (-2 if mp3), 8 in surround/fx mode (-1 if mp3)) | :support standard or surround/fx mode (16 channels in standard mode (-2 if mp3), 8 in surround/fx mode (-1 if mp3)) | ||
Line 34: | Line 38: | ||
:support sound looping | :support sound looping | ||
The lib comes with a template and a example of what you can do with it. | The lib comes with a template and a example of what you can do with it. | ||
Revision as of 02:42, 15 October 2012
Advanced Sound Library | |
General | |
---|---|
Author(s) | Noda |
Type | Audio |
Version | 1.0 |
Licence | Mixed |
Links | |
[Media:Advancedsoundlibraryds.rar Download] | |
Website |
<htmlet>adsense</htmlet>
The Advanced Sound Library (ASlib) is a new sound library for the NDS.
Features
- MP3 engine
- Audio engine
User guide
MP3 engine:
- mp3 is decoded on the arm7, so use nearly no CPU time on the arm9
- stereo & surround modes available (surround works even for mono mp3s)
- up to 44Khz/stereo/96Kbps, though I recommend using 32Khz/stereo/80Kbps max, which is enough for the DS and works great with up to +25%/-100% pitching
- support real-time pitching (changing the playing speed of the mp3)
- support real-time volume and panning change
- the mp3 can be paused and restarted
- the mp3 can be set to loop automatically
- support playing from RAM and streaming from FAT or EFS
- you can disable the mp3 engine if you want, to get 2 more channels
Audio engine:
- can use the whole 16 DS channel or only the first half (so you can use an external mod player, for example)
- support standard or surround/fx mode (16 channels in standard mode (-2 if mp3), 8 in surround/fx mode (-1 if mp3))
- simple sound playing using a priority system: if no channel is available, stop a sound that has less priority than the new one to play it, or skip it if all sounds have more priority.
- possibility to reserve a particular channel so it won’t be used in the channel pool by the priority playing system. You can then manage the reserved sound channels manually.
- surround or pseudo-reverb can be activated per sound (works great with mono sounds)
- support real-time volume, panning and pitch modifications for each sound
- support sound looping
The lib comes with a template and a example of what you can do with it.
Known issues
This library build using a way old DKP version: devkitPro r21 and libnds 20071023, newer version may not compile it because the IPC system was removed.
Credits
IPC sound system and streaming is based on cold_as_ice streaming example.
Audio stream filling / mp3 decoding based on ThomasS mp3 decoding example.
ASM stereo desinterleave function was made by Thoduv.