From d6735566cebf82a5d22a3ade22b9acd52fbe11a5 Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Sun, 27 Oct 2024 19:58:31 -0400 Subject: Buffer tweaks Signed-off-by: Andrew Opalach --- src/mixer/audio_miniaudio.c | 12 +++--------- src/mixer/mixer.c | 2 +- 2 files changed, 4 insertions(+), 10 deletions(-) (limited to 'src/mixer') diff --git a/src/mixer/audio_miniaudio.c b/src/mixer/audio_miniaudio.c index fb4db23..4e29e0a 100644 --- a/src/mixer/audio_miniaudio.c +++ b/src/mixer/audio_miniaudio.c @@ -136,7 +136,7 @@ static void data_callback(ma_device *device, void *output, const void *input, u3 } #define DEFAULT_PERIODS 3 -#define DEFAULT_PERIOD_SIZE_IN_MILLISECONDS 75 +#define DEFAULT_PERIOD_SIZE_IN_MILLISECONDS 64 static bool audio_miniaudio_configure_stream(struct camu_audio *audio, void *opaque) { @@ -175,14 +175,8 @@ static bool audio_miniaudio_configure_stream(struct camu_audio *audio, void *opa static u64 audio_miniaudio_get_latency(struct camu_audio *audio) { struct camu_audio_miniaudio *ma = (struct camu_audio_miniaudio *)audio; - // Latency is one period on PulseAudio even if periods is >1. On WASAPI, latency is periods - // times period size. -#ifdef _WIN32 - return ((ma->device.playback.internalPeriodSizeInFrames * ma->device.playback.internalPeriods) / -#else - return ((ma->device.playback.internalPeriodSizeInFrames) / -#endif - (ma->device.playback.internalSampleRate / 1000000.0)); + return (ma->device.playback.internalPeriodSizeInFrames * ma->device.playback.internalPeriods) / + (ma->device.playback.internalSampleRate / 1000000.0); } static void audio_miniaudio_start(struct camu_audio *audio) diff --git a/src/mixer/mixer.c b/src/mixer/mixer.c index e6fd178..5af63b7 100644 --- a/src/mixer/mixer.c +++ b/src/mixer/mixer.c @@ -7,7 +7,7 @@ #define MIXER_WANT_INITIAL_SILENCE 1 // Number of silent frames to append before signaling MIXER_EMPTY. -#define MIXER_TRAILING_SILENCE 100 +#define MIXER_TRAILING_SILENCE 20 static s32 data_callback(void *userdata, u8 *data, s32 frame_count, bool *silence) { -- cgit v1.2.3-101-g0448