glastonbridge / ScanVox

Vocal machine-listening music making machine.
GNU General Public License v3.0
11 stars 0 forks source link

"AudioRecordThread: buffer overflow" spoils experience on low-end phone (Tattoo) #41

Open danstowell opened 13 years ago

danstowell commented 13 years ago

On my Tattoo there's a lot of stuttering and gui lag in ordinary use of ScanVox. In logcat I see a lot of

W/AudioFlinger( 57): AudioRecordThread: buffer overflow W/AudioFlinger( 57): AudioRecordThread: buffer overflow W/AudioFlinger( 57): AudioRecordThread: buffer overflow W/AudioFlinger( 57): AudioRecordThread: buffer overflow

In fact, the lag actually has the weird effect of shortening any audio that you put in -- presumably because of dropped buffers, the record buffer is slower to fill up than it should be so it plays back with a sped-up rhythm.

I tried with the default driver block size of 512 frames, also with 128 and with 2048, couldn't get the Tattoo to behave nicely.

glastonbridge commented 13 years ago

I have a suspicion the FFT that the record does is quite heavyweight, though I admit I don't know. Would it be worth experimenting with carving the record flow into a traditional record step and an analysis step, in case this gives us a more reliable input stream?