In our project we have some problem with the sound playing. I get FMOD_ERR_CHANNEL_ALLOC when I shouldn’t. Maybe I have misunderstood something so I’ve created a simple framework but I have some strange issue in this too.
I have created an event system with 3 software channel (no hardware) and 7 virtual channel. (Tried with simple system too)
I’m logging the count of the playing channels(using system::getChannelsPlaying)
I’m starting a nonlooped sound up to five times then waiting for the channels to stop. It works for the first 4-5 try but then I get FMOD_ERR_CHANNEL_ALLOC.
After every error the maximum number of played channels count decreses with one until reaches 3 (the real channel count) after this I can start as many sound as I can it gives no error but the maximum stays at 3.
If start more than 7 of them I get FMOD_ERR_CHANNEL_ALLOC too, which seems to be correct to me.
I tried this with a looped sounds(I stop them manually with ->stop instead of waiting for them to stop), it works similarly except that i can start(at the first some try) more than 7 of them and it doesn’t give an error. But the isPlaying stays at 7.
I’ve tried this with events (looped/nonlooped) and got the same results.
But one thing is little strange for me.
When the car event’s start gives the FMOD_ERR_CHANNEL_ALLOC I assumed that the car event is no longer valid, but If I don’t call stop in that case I get some sounds playing forever. So it seems like it succeeded (at least partly) ???
Maybe I’m doing something wrongly. if U need the fev,cpp file i’m worked with please tell me I wil send it.
I couldn’t reproduce one bug in the test program that we had in our game. Some channel got stuck in the system (played forever). It is created from nonlooped sound. I get some info form it : nonvirtual, playing, not paused and GetPosition always the same (mainly 0). Maybe a sound get virtual and when get back to nonvirtual it doesn’t ends??? or it was a bug in our code.
- kocsisa asked 12 years ago
Thx for the new version, I’ve checked it and the problems are solved.
But I found a new one maybe related to this (or maybe its my bug).
After I start and stop a nonlooped event, I can’t start a sound (with playSound). It is not audible but the getChannelsPlaying returns 1 (for a nonlooped sound!!) forever. If I don’t start the event before it, it plays ok.
I’ve sent a mail with a small example to email@example.com.
Please check it,
In our game we specify 256 virtual channel. I have just tested in a pet project with 7 to see what happens.
Thx for checking the events.
But I think the main problem is not at the events.
My main problem is that playSound returns FMOD_ERR_CHANNEL_ALLOC while playing 4 sounds and starting a new with 7 virtual channel. And this happens not at the first time only after starting and stopping some sound.
Please login first to submit.