Hi guys,

I'm trying to debug a problem on the D2 port whereby playback doesn't start until the audio buffer is completely filled for the first time - ie. when 'alloc' reaches full, a few seconds after starting playback from the file browser.

I've narrowed it down to the 'if' condition in pcmbuf_play_start() at pcmbuf.c:517. This function is called twice in quick succession when playback is started, but both times 'pcmbuf_unplayed_bytes' and 'pcmbuf_read' seem to have the value 0, therefore the condition fails and pcm_play_data() is never called.

Only when the audio buffer fills completely does a further call to pcmbuf_play_start() occur, and only at this stage is the 'if' condition satisfied.

Unfortunately my knowledge of the pcmbuf code is next-to-zero, so I don't know where to look next. Any pointers would be most appreciated!

Note that this is only happening for normal audio playback - voicing seems to work correctly in all cases.

Cheers,

Rob.

Reply via email to