0
0

I changed the line
result = system->createSound("../media/swish.wav", FMOD_HARDWARE, 0, &sound3);
into
result = system->createSound("../media/swish.wav", FMOD_HARDWARE|FMOD_3D, 0, &sound3);
this.

I run this program.
press ‘3’ for a while.
I see 30~31 sounds playing.
let go the key.
screen shows
"Time 00:00:00/00:00:00 : Stopped : Channels Playing 3"
when I exit the program, I get an access violation at "system->close()";

any Ideas?

I

  • You must to post comments
0
0

We are able to reproduce the problem, it seems to be specific to the DSOUND output mode. Thanks for the repro, we’ll let you know when we have fixed it.

-Pete

  • You must to post comments
0
0

Ok, I did some investigation and it seems to be a problem relating to DSOUND and stereo 3D sounds. For now I would recommend you just use FMOD_SOFTWARE instead. It is generally better to use FMOD_SOFTWARE since there are more features and it’s more portable.

-Pete

  • You must to post comments
0
0

thanks for your quick reply.

I did confirmed that using FMOD_SOFTWARE didn’t make any problems.

how ever, my product only runs on one platform(windows) and doesn’t use much features. And performance is very important.

Is there a performance gap between FMOD_SOFTWARE and FMOD_HARDWARE?

If there is… would there be any kind of work around for this situation?
or an earlier version you could recommend? that I might want to test?

-David

  • You must to post comments
0
0

The problem is specifically for STEREO 3D sounds, there is no real benefit to using stereo sounds when it’s 3D since it’s going to be panned anyway. So one solution would be to just down mix the source files to mono.

[quote:2woihtei]Is there a performance gap between FMOD_SOFTWARE and FMOD_HARDWARE? [/quote:2woihtei]
The performance of software mixed sounds is very good. The software mixer has a lot of optimisations to make it as fast as possible.

Let me know how it goes.

  • You must to post comments
0
0

I think the issue is more to do with EAX taking a hardware voice when FMOD doesn’t know about it.
I reproduced the issue and solved it with
system->setHardwareChannels(0,30,0,30);
(instead of the reported 32) and it worked.

FMOD_SOFTWARE is definitely the way to do it though, we are removing DSound hardware support in a later version anyway (and 3d stereo sound in DSound is emulated with 2 mono voices so it is not precise at all). Vista/7 don’t even support HW 3d sound.

  • You must to post comments
0
0

thank you brett, peter.

system->setHardwareChannels(0,30,0,30);
<= I’ll patch it up with this for now.

And take my time with the software issue.. ^^

Thanks

  • You must to post comments
Showing 6 results
Your Answer

Please first to submit.