Imphenzia Audio System

Blitz3D Forums/Blitz3D Userlibs/Imphenzia Audio System

Imphenzia(Posted 2008) [#1]
I've just released some code that makes it easy to keep track of audio in Blitz3D and BlitzPlus.

Imphenzia Audio System is an include library that can be used to play music and sound effects. The audio system has built in features for crossfading, volume handling, pause/resume, playlist management, channel management and priority etc.

Music Features 
* Load raw/Mod/s3m/xm/it/Mid/rmi/wav/mp2/mp3/ogg/wma/asf files 
* Simple creation of playlists 
* Load mp3u lists into playlist 
* Clear / Remove songs from playlist 
* Play next song with option crossfade 
* Play previous song with optional crossfade 
* Pause / Resume music 
* Stop music (with optional fadeout) 
* Set / Get music volume 
* Get current song name 
* Randomize playlist 
* Playlist repeat mode 
* Autoplay next song

Sound Effect Features 
* Load raw/mp3/ogg/wav sound effects 
* Group sound effects (easy to unload for game levelts etc.) 
* Play sound effects with individual volume, priority, panning, fade in, duration, fade out 
* Set / Get global sound effect volume 
* Set / Get maximum number of simultaneous sound effect channels 
* Pause / Resume sound effect system 


For a full list of commands and download source code, please visit http://soundtrack.imphenzia.com/audiosystem.php

Hope you find use of the library and please notify me of any bugs etc.


LineOf7s(Posted 2008) [#2]
Thankyou. :o)


Mike Barwise(Posted 2008) [#3]
This is absolutely fantastic!

What a great set of easy to use audio functions - all that and supplied to the community for free.

Thanks!


_PJ_(Posted 2008) [#4]
This is fantastic.

The Stop Music fadeout is by far the best thing for me, though the other features are definitely useful!


Imphenzia(Posted 2009) [#5]
Hey,

Very happy to hear you like the functions!

I just had a report that the links were broken on my site (thanks) so I want to report that I've fixed them now =)


Guy Fawkes(Posted 2009) [#6]
Can u add a function that returns millisecs for ANY file format, no matter WHAT format it is? or AT LEAST for the formats u support w/ imphenzia?


Imphenzia(Posted 2009) [#7]
Unfortunately Blitz doesn't support getting the length of the audio files or music files that it supports so I am very sorry to say that I can't develop that function. There is a way to extract the length of mp3-files reading the bitrate and calculating it from the file size - see this code archive post:

http://www.blitzbasic.com/codearcs/codearcs.php?code=1775

I wish I could help you further with this, I understand that it won't be possible within the time limit but it would be worth posting this feature request for blitz to have a native function for this.