diff options
| author | Jeff Epler <jepler@gmail.com> | 2020-05-11 08:51:41 -0500 |
|---|---|---|
| committer | Jeff Epler <jepler@gmail.com> | 2020-07-15 09:26:47 -0500 |
| commit | bdab6c12d4332523fdbd8967c1233b3708f4883e (patch) | |
| tree | 61b05eb15531e184553dd3eac75762ab99a7b64e /shared-module/socket | |
| parent | 742aa740f651c72a5991250d9ac898492e99389d (diff) | |
MP3Decoder: take advantage of background callback
Before this, the mp3 file would be read into the in-memory buffer
only when new samples were actually needed. This meant that the time
to read mp3 content always counted against the ~22ms audio buffer length.
Now, when there's at least 1 full disk block of free space in the input
buffer, we can request that the buffer be filled _after_ returning from
audiomp3_mp3file_get_buffer and actually filling the DMA pointers. In
this way, the time taken for reading MP3 data from flash/SD is less
likely to cause an underrun of audio DMA.
The existing calls to fill the inbuf remain, but in most cases during
streaming these become no-ops because the buffer will be over half full.
Diffstat (limited to 'shared-module/socket')
0 files changed, 0 insertions, 0 deletions
