The crashes seem to be fixed so far.
I’ve got some new issues, though. First, a finished stream now returns a time of 0 for its position instead of the end of the stream. This means I have to keep a “has played past zero” flag, then check for zero again to detect finished streams.
Second, I now have missing end callbacks; sometimes I just don’t get the callback. I can temporarily go back to polling all active sounds, but I’m also seeing odd behavior with virtualizing callbacks (suddenly they all go virtual then return to real occasionally).
Also, the pops and clicks at the start of streams is back. Sometimes I also hear some white noise as a stream starts. It seems that it maybe starts playing the buffer before it is filled (white noise = random junk in buffer)? This happens with both FMOD_HARDWARE and FMOD_SOFTWARE.
I just confirmed I don’t get an error, but I’ll change the logic anyway.
I’ve got 256 virtual channels set on the init. I never see over around 90 active at the moment. I’m just missing end callbacks. Do I only get end callbacks on non-virtual channels now?
I’m using streams exclusively at the moment. These are WAV files so nothing special. Most are 16-bit 44KHz, non-stereo so they can be 3D. It seems the first time a channel is used I hear a burst of white noise, then afterward I just get the pops and clicks at the start of new streams. I also get a pop at the end of the stream.
Your playstream.exe example also does it. Playsound.exe does not. This is on 4 different machines with different soundboards and drivers (some are onboard, some are Creative).
We had the glitching problem in beta 19, but it went away in 20, now it is back. It is every WAV file I try. It didn’t used to do this 😕
I’ve checked that the new fmodex.dll is on all the machines, and the executable was compiled against current lib/headers. I also tried both hardware and software and it does it on both.
The missing end callbacks is new in this release. I think it happens if there are more active channels than real ones, but I never exceed the max virtual channels specified in Init. What happens is the first few channels get stuck in my active list because I don’t see the end callback.
Your exe with fmodex.dll copied into the directory. The white noise issue seems to be on only one machine, but the pops and clicks at start and stop of the stream are on all of our systems.
As I said earlier, we didn’t have this problem until a recent beta (I believe it was 19, but you deleted the forum messages so it is hard to check). It definitely does not happen with 20, but does with 21. I can run the 20 exe and the 21 exe and hear the difference.
Oops.. I see you’re right about the old threads just being unstuck 😳 I seem to focus on the new posts.
I just checked back and I see it was 19 I reported previously having the popping issue. 20 was clean for us other than the crashes. I really don’t know what else to say about it, it happens with your stream example but not with any that load into memory then play.
If it only happened with my code, I’d be looking for problems on my side. Every new stream that plays pops. I’ve looked at our WAV files and they start cleanly (zero amplitude at beginning, fade in, with fade out to zero at end, etc). It only does it on streams.
I’m open to trying anything to help track it down.
Please login first to submit.