Warn when the audio callback takes more than it should

This commit is contained in:
Nikita Lisitsa 2023-11-03 12:02:08 +03:00
parent 352d03ed3f
commit e31132face

View file

@ -89,6 +89,9 @@ namespace psemek::sdl2
for (auto s : self->buffer_)
*dst++ = static_cast<std::int16_t>(std::max(std::min((65535.f * s - 1.f) / 2.f, 32767.f), -32768.f));
if (auto duration = prof.duration(); duration > (size * audio::inv_frequency / 2))
log::warning() << "Audio can't keep up, callback took " << std::setprecision(5) << (1000.0 * duration) << " ms";
}
audio::channel_ptr audio_engine_impl::output()