summaryrefslogtreecommitdiff
path: root/src/mixer
diff options
context:
space:
mode:
Diffstat (limited to 'src/mixer')
-rw-r--r--src/mixer/audio_miniaudio.c19
1 files changed, 14 insertions, 5 deletions
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,9 +75,6 @@ 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;
@@ -85,6 +82,9 @@ static bool audio_miniaudio_init(struct camu_audio *audio, str *name)
#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) {
al_log_error("audio_miniaudio", "Failed to initialize context (%d).", ret);
@@ -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;