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
 
(17 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox homebrew
{{Infobox DS Homebrews
| title       = Advanced Sound Library
|title=Advanced Sound Library
| image       =  
|image=aslib.png
| type       = Audio player
|description=A sound library for the NDS.
| version     = 1.0
|author=Noda
| licence    = Mixed
|lastupdated=2007/12/02
| author      = Noda
|type=Media Players
| website     = http://nodadev.wordpress.com/nds-projects/advanced-sound-library/
|version=1.0
| download    = Media:Advancedsoundlibraryds.rar
|license=Mixed
| source      =
|download=https://dlhb.gamebrew.org/dshomebrew2/advancedsoundlibrary.rar
|website=http://nodadev.wordpress.com/nds-projects/advanced-sound-library
}}
}}
The Advanced Sound Library (ASlib) is a new sound library for the NDS.
The Advanced Sound Library (ASlib) is a new sound library for the NDS.
Line 18: 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.
Line 63: Line 50:
ASM stereo desinterleave function was made by Thoduv.
ASM stereo desinterleave function was made by Thoduv.


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

Latest revision as of 11:26, 20 August 2024

Advanced Sound Library
Aslib.png
General
AuthorNoda
TypeMedia Players
Version1.0
LicenseMixed
Last Updated2007/12/02
Links
Download
Website

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: