Get the latest Education e-news
 

Go Back   Game Career Guide Forums > Programming
Forum Home Register Members List Mark Forums Read

Reply
 
Thread Tools Display Modes
Old 05-01-2007, 08:12 AM   #1
HagNasty
Super Moderator

Activity Longevity
0/20 20/20
Today Posts
0/11 ssssss123
Location: Toronto Ontario
Default 3D soundmanager feature request

Hello everyone,

I am currently writing a Audio engine based off the popular FMOD Audio API. I was wondering what some of the features people would like to see in it and see if I can incorporate it in.

A few of the standards I am implementing are ease of use and functionality. This way if you want a sound you can pass it just a string of a filename to the CreateSound(); function and it will default the rest. Though you also have access to the sounds internal workings meaning you can always call up sound.getChannel.setDSP(); at any time.

Im basically just doing this as a portfolio piece and will throw it in a 3d simulation to show off textureSet DSPs, Audio Obstruction and the like. I will first write it in either C# or C++ the only main difference here is the creation,destruction and iteration through lists. And yes it will be completly free ware for anyone to use (XNA can only use wav so a sound manager capable of MP3s will save space )

Keep in mind the basic functionality for both of these languages are already done. It's just features now. So I decided to ask everyone !
So, What are some Ideas?

~HagNasty

EDIT:Come on people give me something here. this is a feature request. Give me your ideas
__________________
~Justin Dooley

C, C++, C#, Objective-C, Java, PHP, SQL, Javascript, Actionscript, HTML, CSS

Last edited by HagNasty : 05-03-2007 at 09:56 PM.
HagNasty is offline   Reply With Quote
Old 05-09-2007, 08:57 AM   #2
Aurican33
Junior Member

Activity Longevity
0/20 20/20
Today Posts
0/11 ssssssss8
Default Ideas? I'm your man

Alright.. I'll do my best

1) Give the ability to clip audio files.. (ie I import an mp3 but only want the first, middle, or last 30 seconds)
just make a void clip function that takes a string for a filename, the start and end times, and creates a new filename (using the same one but adding clip to it or something) of just that section

2) This one could be harder - find a way to allow recording through a mic or direct line input. (as a programmer and musician - I find that I just can't find the right music to set the moods for games I work on... and I guarantee I can always play what I want to hear on my guitar. Its just such a pain to use goldwave to record, a converter to convert it to mp3, then put it in there)
Not sure if it exists, so you may have to write your own driver to interface to the sound card from C++...

3) I'm assuming you'll have some sort of a sample playback function, but maybe extend that so you can playback multiple tracks at once (via an array of sound files, a loop, and multiple playback calls?) so a person could add a voice track over top of some light music.. (think of Diablo 1 and Deckard Cain... how perfect was hearing that voice over the background minor arpegios)

I'm sure I could come up with more but am pressed for time.. Let me know if I'm off base on what you want - I got millions of ideas.
Aurican33 is offline   Reply With Quote
Old 05-09-2007, 03:06 PM   #3
HagNasty
Super Moderator

Activity Longevity
0/20 20/20
Today Posts
0/11 ssssss123
Location: Toronto Ontario
Default

1) do you mean have it cut the sound effect and create the a new file or just store the sound in a audio channel?

2)This is rather easy to do. I have written a voice recognition program so I know how to use a mic to record. Though This would be more for development and when it comes down to it is not a feature you would use in a games development. The audio manager is for in game sounds and playing files. Plugging in a Guitar and playing a sound while playing a game would be rather difficult. And alot of APIs have line in options and drivers so it can access any line in via a adapter to the audio card.

3)the audio engine can already play back as many files at once as you can store in ram. This is not new at all it's a basic feature. Think background music and special effects music ther all just sound files in the end and play at the same time.
__________________
~Justin Dooley

C, C++, C#, Objective-C, Java, PHP, SQL, Javascript, Actionscript, HTML, CSS
HagNasty is offline   Reply With Quote
Old 07-03-2007, 01:28 PM   #4
DMINATOR
Junior Member

Activity Longevity
0/20 20/20
Today Posts
0/11 ssssssss4
Location: Tallinn, Estonia
Default

There is one important thing that I can suggest is adding direct streaming from HDD instead of storing it in the memory all the time. It is also possible to create some cache system later that would only store the most used sounds and others would just get streamed from HDD.
DMINATOR is offline   Reply With Quote
Old 07-13-2007, 06:39 PM   #5
HagNasty
Super Moderator

Activity Longevity
0/20 20/20
Today Posts
0/11 ssssss123
Location: Toronto Ontario
Default

Quote:
Originally Posted by DMINATOR View Post
There is one important thing that I can suggest is adding direct streaming from HDD instead of storing it in the memory all the time. It is also possible to create some cache system later that would only store the most used sounds and others would just get streamed from HDD.
Actually this is a good option to have. It would work better for low ram High CPU computers (if they exist somewhere) The problem with the way things are used is that they are stored in ram for fast update. It's impossible to stream directly from the hard-drive from what I know but it is possible to load small pieces from the file. This will be more CPU intensive but the option will be there
__________________
~Justin Dooley

C, C++, C#, Objective-C, Java, PHP, SQL, Javascript, Actionscript, HTML, CSS
HagNasty is offline   Reply With Quote
Old 07-16-2007, 11:40 AM   #6
DMINATOR
Junior Member

Activity Longevity
0/20 20/20
Today Posts
0/11 ssssssss4
Location: Tallinn, Estonia
Default

Quote:
Originally Posted by HagNasty View Post
Actually this is a good option to have. It would work better for low ram High CPU computers (if they exist somewhere) The problem with the way things are used is that they are stored in ram for fast update. It's impossible to stream directly from the hard-drive from what I know but it is possible to load small pieces from the file. This will be more CPU intensive but the option will be there
It is more then possible to stream from the HDD and I think some games might use direct streaming instead of copying it into RAM directly(which takes some time and causes lag on some systems). A good compromise is to use some sort of audio buffer that would automatically store the most widely used audio files the other would just get streamed from HDD instead of loading into memory.
DMINATOR is offline   Reply With Quote
Old 07-31-2007, 09:36 PM   #7
HagNasty
Super Moderator

Activity Longevity
0/20 20/20
Today Posts
0/11 ssssss123
Location: Toronto Ontario
Default

I'm just saying technically it's impossible because in order to output something it has to pass through buffered memory even streaming content. The trick is just to minimize it to just passing through it like a checkpoint. Still though this option would only be used in rare occasions and would be a lot more CPU intensive wich can cause even more lag then ram but thats why it's an option right?
__________________
~Justin Dooley

C, C++, C#, Objective-C, Java, PHP, SQL, Javascript, Actionscript, HTML, CSS
HagNasty is offline   Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Powered by vBulletin® Version 3.6.9
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
All times are GMT -8. The time now is 06:27 AM.






UBM Tech