From 0060d4f3df9b264e4a4adb77da67336709b41b6b Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Tue, 4 Feb 2025 21:05:18 -0500 Subject: Audio buffer and sink fixes, unsigned width/height - Screen feature testing - Older FFmpeg support - Build configuration fixes Signed-off-by: Andrew Opalach --- src/mixer/audio_miniaudio.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'src/mixer') diff --git a/src/mixer/audio_miniaudio.c b/src/mixer/audio_miniaudio.c index ba093f4..13f4b8f 100644 --- a/src/mixer/audio_miniaudio.c +++ b/src/mixer/audio_miniaudio.c @@ -75,15 +75,15 @@ static bool audio_miniaudio_init(struct camu_audio *audio, str *name) ma_log_register_callback(&ma->log, ma_log_callback_init(miniaudio_log_callback, NULL)); ma->context_config = ma_context_config_init(); ma->context_config.pLog = &ma->log; -#ifdef MA_ENABLE_ALSA - ma->context_config.alsa.useVerboseDeviceEnumeration = MA_TRUE; -#endif #ifdef MA_ENABLE_PULSEAUDIO char *c_str = al_str_to_c_str(name); ma->context_config.pulse.pApplicationName = c_str; ma->context_config.pulse.tryAutoSpawn = MA_TRUE; #else (void)name; +#endif +#ifdef MA_ENABLE_ALSA + ma->context_config.alsa.useVerboseDeviceEnumeration = MA_TRUE; #endif s32 ret = ma_context_init(backends, ARRAY_SIZE(backends), &ma->context_config, &ma->context); if (ret != MA_SUCCESS) { @@ -177,9 +177,18 @@ static bool audio_miniaudio_configure_stream(struct camu_audio *audio, void *opa ma->config.noPreSilencedOutputBuffer = MA_TRUE; ma->config.noFixedSizedCallback = MA_TRUE; ma->config.noClip = MA_TRUE; + ma->config.playback.shareMode = ma_share_mode_shared; +#ifdef MA_ENABLE_PULSEAUDIO + ma->config.pulse.pStreamNamePlayback = ma->context_config.pulse.pApplicationName; +#endif +#ifdef MA_ENABLE_ALSA + ma->config.alsa.noAutoFormat = MA_TRUE; + ma->config.alsa.noAutoChannels = MA_TRUE; + ma->config.alsa.noAutoResample = MA_TRUE; +#endif #ifdef MA_ENABLE_WASAPI - ma->config.wasapi.noAutoConvertSRC = MA_FALSE; - ma->config.wasapi.noDefaultQualitySRC = MA_FALSE; + ma->config.wasapi.noAutoConvertSRC = MA_TRUE; + ma->config.wasapi.noDefaultQualitySRC = MA_TRUE; #endif #ifdef MA_ENABLE_AAUDIO ma->config.aaudio.usage = ma_aaudio_usage_media; -- cgit v1.2.3-101-g0448