We have an ActiveX controls that plays an MP3 while capturing audio. Playback pauses for 50 to 200 msec every once in a while. Any idea what can cause this?
My test was to make an mp3 out of a sine tone. I played it and recorded the speakers. Every once in a while there is a gap in the recorded signal.
I also output elapsed time and the current play position. This output supports the theory that there are gaps in playback – when I see a gap in the recorded signal there is a sudden jump in the difference between actual and expected play position (the "diff" field below)
Recording: elapsed = 14199, positionMs = 14187 (6174), diff = -0.012 sec —- 620046 samples over 14080 msec
Recording: elapsed = 14355, positionMs = 14349 (14112), diff = -0.006 sec —- 627984 samples over 14236 msec
Recording: elapsed = 14494, positionMs = 14466 (19845), diff = -0.028 sec —- 633717 samples over 14375 msec
Recording: elapsed = 14652, positionMs = 14628 (27783), diff = -0.024 sec —- 641655 samples over 14533 msec
Recording: elapsed = 14807, positionMs = 14767 (33075), diff = -0.040 sec —- 646947 samples over 14688 msec
Also, I find it strange that playback pauses and not capture. Is that because of buffering on the sound card?
- thechosenone asked 11 years ago
sounds a bit like the mp3 is corrupted and every now and then has blocks of bad data that fmod has to scan through byte by byte, which could account for a pause. Do all mp3s do this? Does a verified mp3 do this on an example such as fmod’s playStream example?
I don’t think there’s anything wrong with out MP3’s. The glitches don’t happen in any consistent spots. I’ll check it out though.
Can this problem be caused by the browser or Flash module (which I forgot to mention)? Is there a critical section that we might be running into? We’re recording at the same time.
- thechosenone answered 11 years ago
I can’t comment on activex or web stuff because we dont officially support it.
If you can reproduce an issue in a normal C++ (console or win32) app i can see what it might be, and I would have to have the file in question as well, as it may be that is the problem.
Please login first to submit.