Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Advanced Sound Library: Difference between revisions

From GameBrew
No edit summary
No edit summary
Line 6: Line 6:
| licence    = Mixed
| licence    = Mixed
| author      = Noda
| author      = Noda
| website    = http://nodadev.wordpress.com/nds-projects/advanced-sound-library/
| website    = http://nodadev.wordpress.com/nds-projects/advanced-sound-library
| download    = https://dlhb.gamebrew.org/dshomebrew/aslib.7z
| download    = https://dlhb.gamebrew.org/dshomebrew/aslib.7z
| source      =  
| source      =  
Line 50: Line 50:
ASM stereo desinterleave function was made by Thoduv.
ASM stereo desinterleave function was made by Thoduv.


<br>
==External links==
* Author's website - http://nodadev.wordpress.com/nds-projects/advanced-sound-library
 
[[Category:DS homebrew applications]]
[[Category:DS homebrew applications]]
[[Category:Media players on DS]]
[[Category:Media players on DS]]

Revision as of 06:00, 4 September 2021

Advanced Sound Library
Aslib.png
General
Author(s)Noda
TypeAudio player
Version1.0
LicenceMixed
Links
Download
Website
Advertisements

<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.

External links

Advertising: