More actions
No edit summary |
No edit summary |
||
Line 19: | Line 19: | ||
==User guide== | ==User guide== | ||
===MP3 engine=== | ===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). | * Up to 44Khz/stereo/96Kbps, though it is recommended to use 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). | |||
Up to 44Khz/stereo/96Kbps, though it is recommended to use 32Khz/stereo/80Kbps max, which is enough for the DS and works great with up to +25%/-100% pitching. | * Support real-time volume and panning change. | ||
* The MP3 can be paused and restarted. | |||
Support real-time pitching (changing the playing speed of the mp3). | * The MP3 can be set to loop automatically. | ||
* Support playing from RAM and streaming from FAT or EFS. | |||
Support real-time volume and panning change. | * You can disable the mp3 engine if you want, to get 2 more channels. | ||
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=== | ===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)). | * 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. | |||
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. | * 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. | |||
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. | * Support sound looping. | ||
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. | The lib comes with a template and a example of what you can do with it. |
Revision as of 15:29, 29 Mayıs 2021
Advanced Sound Library | |
General | |
---|---|
Author(s) | Noda |
Type | Audio player |
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 it is recommended to use 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.