cAudio 1.6 Released!
cAudio 1.6 Released!
The cAudio Audio Engine is made for the community. Download is now at main DeathTouchStudios site. This release comes with a shiny new irrlicht scene node.
Special Thanks to KittyCat,Sudi,Rooly,and BloodInch
BackGround:
The main reason behind making cAudio was there wasn't a hole lot of choices for getting sound into your game. Basically there was audiere, fmod, bass, irrKlang,and SDL mixer. Also there was openal which cAudio is built on. The only problem with using openal is its hard to use in games. So cAudio was born.
Supports: ogg,mod,xm,s3d,and it
Features:
* 2d Audio
* 3d Audio
* Pitch control
* Directional control
* Velocity control
* Listener orientation control
* Doppler control
* Looping
* Multiple streams
* Load file into memory and play
* Stream file
* Play,pause,and stop controls
* Easy to use Audio manager
* Self contained *no longer need runtime installed*
You can download it from http://www.deathtouchstudios.com
If you have any questions feel free to ask here or in the forums.
Special Thanks to KittyCat,Sudi,Rooly,and BloodInch
BackGround:
The main reason behind making cAudio was there wasn't a hole lot of choices for getting sound into your game. Basically there was audiere, fmod, bass, irrKlang,and SDL mixer. Also there was openal which cAudio is built on. The only problem with using openal is its hard to use in games. So cAudio was born.
Supports: ogg,mod,xm,s3d,and it
Features:
* 2d Audio
* 3d Audio
* Pitch control
* Directional control
* Velocity control
* Listener orientation control
* Doppler control
* Looping
* Multiple streams
* Load file into memory and play
* Stream file
* Play,pause,and stop controls
* Easy to use Audio manager
* Self contained *no longer need runtime installed*
You can download it from http://www.deathtouchstudios.com
If you have any questions feel free to ask here or in the forums.
Last edited by wildrj on Wed Jul 16, 2008 4:37 am, edited 8 times in total.
http://wild.deathtouchstudios.com << My gamedev blog
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
Hey that's pretty cool, so it uses OpenAL.
Haha I remember back in the day you were working on an OpenAL sound implementation with us for that Hovercraft game me and omaremad were working on, is this an extension of that experience?
Cheers
Haha I remember back in the day you were working on an OpenAL sound implementation with us for that Hovercraft game me and omaremad were working on, is this an extension of that experience?
Cheers
ShadowMapping for Irrlicht!: Get it here
Need help? Come on the IRC!: #irrlicht on irc://irc.freenode.net
Need help? Come on the IRC!: #irrlicht on irc://irc.freenode.net
-
- Admin
- Posts: 3590
- Joined: Mon Oct 09, 2006 9:36 am
- Location: Scotland - gonnae no slag aff mah Engleesh
- Contact:
Urgh, it requires installation of the openAL runtime? That's a deal breaker for me. It's so 20th century.
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
Looks great!
I have a spelling bug fix..
Lol,
I have a spelling bug fix..
Code: Select all
bool isvalid();//checks to make sure everything is erady to go
Should be?
bool isvalid();//checks to make sure everything is ready to go
Programming Blog: http://www.uberwolf.com
Lol thanks guys and if you remember correctly blindside i was working with you guys on that project. Yeah i need to clean it up a bit. Has for the run time being needed im not entirely sure if it is needed.
I just remember around 3 years ago when i tried to use openal the run time was needed :/.If someone could try it out without the run time id be very grateful. The next release ill beautify the code and add some features. Ill also try to figure out how to not need the openal run time.
Im also going to try and make it easier to use if you have any request / suggestions feel free to tell me
I just remember around 3 years ago when i tried to use openal the run time was needed :/.If someone could try it out without the run time id be very grateful. The next release ill beautify the code and add some features. Ill also try to figure out how to not need the openal run time.
Im also going to try and make it easier to use if you have any request / suggestions feel free to tell me
http://wild.deathtouchstudios.com << My gamedev blog
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
give me time im working on it i code this as i learn more openal. Ill be releasing a update today or tomorrow becuase i found that i never gave the user the ability to play the file after the initial load. Im also taking out it playing immediately after its loaded becuase i believe you would want to preload then tell it when to play.
Hardware buffers hmm ill try gotta keep learning more about openal and audio.
Hardware buffers hmm ill try gotta keep learning more about openal and audio.
http://wild.deathtouchstudios.com << My gamedev blog
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
Alright don't kill me for the 1.0 status of the project now. I made it a 1.0 becuase i had to basically recode most of the inner workings. 0.01 could not change its values after the initial opening of a file. I also changed the api up to resemble that of irrklangs for ease of use *sorry niko*. Please re download and don't give 0.01 any mind now.
Download the new version at:
http://www.wild.deathtouchstudios.com
Download the new version at:
http://www.wild.deathtouchstudios.com
http://wild.deathtouchstudios.com << My gamedev blog
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
Haha, I like you easter egg after shutting down the audio system. One thing I would like to say about the API though is that it would be cool if identification was done more by strings. I just generally find it helps, especially if someone wants to automate your system. It also helps immensely when developing big systems, because then functions need not have knowledge of the actual instance, just the name. (Thus, sometimes, this frees up the programmers parameter list if they have prior knowledge.) So instead of just doing the following:
You could do something like this: (Of course you would have to create a manager, that holds a map, or something of that sort, and also do garbage collection.)
Less code, still easy to understand, and it gives the user the option to obtain instances. But this is just a suggestion of what I like, and possibly some others.
Code: Select all
cAudio audio1;
cAudio audio2;
cAudio audio3;
audio1.open("MySuperCoolSong.ogg");
audio2.open("MyOtherSuperCoolSong.ogg");
audio3.open("Uncool.ogg");
audio1.play2d(true);
audio2.play2d(true);
audio3.play2d(true);
audio1.release();
audio2.release();
audio3.release();
Code: Select all
cAudioManager& AudioMgr = CAudioManager::getInstance();
AudioMgr.create("Song1", "MySuperCoolSong.ogg");
AudioMgr.create("Song2", "MyOtherSuperCoolSong.ogg");
AudioMgr.create("Song3", "Uncool.ogg");
AudioMgr.get("Song1")->play2d(true);
AudioMgr.get("Song2")->play2d(true);
AudioMgr.get("Song3")->play2d(true);
TheQuestion = 2B || !2B
The original plan was to pull of something like that. But has i coded i learned i couldn't get it to work like that exactly. Give me some time ill figure it out.
Edit: I should have the manager done by the end of today
Edit: I should have the manager done by the end of today
http://wild.deathtouchstudios.com << My gamedev blog
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
I could help out if you don't get it working, just post the code so far for the manager, and message me.wildrj wrote:The original plan was to pull of something like that. But has i coded i learned i couldn't get it to work like that exactly. Give me some time ill figure it out.
Edit: I should have the manager done by the end of today
TheQuestion = 2B || !2B
Alright it is done and ready to be used this makes it the 1.5 update *my number update thing is totally messed up i know but it makes it sound cool*
Anyways i took what you said literal halifax here is the code:
Hope you enjoy the audio manager it should make life really easy to make use of . instead of -> just put a & after the cAudioManager and remove the *.
Anyways i took what you said literal halifax here is the code:
Code: Select all
#include <iostream>
#include "Headers/cAudioManager.h"
using namespace std;
int main(int argc,char* argv[]){
cAudioManager *audiomgr = cAudioManager::Instance();
audiomgr->init(argc,argv);
audiomgr->create("test","1.ogg");
audiomgr->getSound("test")->play2d(false);
while(){
audiomgr->update();
}
cin.get();
}
http://wild.deathtouchstudios.com << My gamedev blog
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
<Programming is a way of life>
If at first you don't succeed press the delete key till you do
-
- Posts: 219
- Joined: Fri Apr 13, 2007 8:29 pm
- Location: Illinois
- Contact:
Awesome wildrj, that's looking sweet, I like it. Keep up the good work.
I really don't get what your saying there. If you could expand upon what features you are looking for, then that would be great. And the fact that it is based on OpenAL is the good part.FlyingIsFun1217 wrote:It really is a shame that it's based on OAL. I wish there were a nice Audio Lib that was (almost) as advanced as FMod, just licensed open source.
FlyingIsFun1217
TheQuestion = 2B || !2B