Тогда ещё маленький вопрос. Заданный SDL_AudioSpec::callback вызывается автоматом, когда все отправленные в поток данные проиграны или через определенные промежутки исходя из формата, битрейта и длины буфера?
Судя по спеку:
This should be set to a function that will be called when the audio device is ready for more data.