From d6d608b6746aa647a2e49adc4b5de366924a4e2d Mon Sep 17 00:00:00 2001 From: Logan McNaughton <848146+loganmc10@users.noreply.github.com> Date: Sun, 28 Sep 2025 09:59:02 +0200 Subject: [PATCH] Revert "more audio cleanup" This reverts commit f3271cba63571d4d42c84c4c2db891af125b6f8d. --- src/ui/audio.rs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/ui/audio.rs b/src/ui/audio.rs index 53a85a37..b81ad9d2 100644 --- a/src/ui/audio.rs +++ b/src/ui/audio.rs @@ -86,6 +86,20 @@ pub fn play_audio(device: &device::Device, dram_addr: usize, length: u64) { let audio_queued = unsafe { sdl3_sys::audio::SDL_GetAudioStreamQueued(device.ui.audio.audio_stream) } as f64; let acceptable_latency = (device.ai.freq as f64 * 0.2) * 4.0; + let min_latency = (device.ai.freq as f64 * 0.02) * 4.0; + + if audio_queued < min_latency { + let silence_buffer: Vec = vec![0; min_latency as usize & !3]; + if !unsafe { + sdl3_sys::audio::SDL_PutAudioStreamData( + device.ui.audio.audio_stream, + silence_buffer.as_ptr() as *const std::ffi::c_void, + silence_buffer.len() as i32, + ) + } { + panic!("Could not play audio"); + } + } if audio_queued < acceptable_latency && !unsafe {