diff options
| author | 2025-02-04 21:05:18 -0500 | |
|---|---|---|
| committer | 2025-02-04 21:05:18 -0500 | |
| commit | 0060d4f3df9b264e4a4adb77da67336709b41b6b (patch) | |
| tree | a59d4e2f218cec89af56bdb2036d0a2ecd488349 /src/mixer | |
| parent | cdd1f574312722ab305cba6771d9bcc5da0b0c38 (diff) | |
| download | camu-0060d4f3df9b264e4a4adb77da67336709b41b6b.tar.gz camu-0060d4f3df9b264e4a4adb77da67336709b41b6b.tar.bz2 camu-0060d4f3df9b264e4a4adb77da67336709b41b6b.zip | |
Audio buffer and sink fixes, unsigned width/height
- Screen feature testing
- Older FFmpeg support
- Build configuration fixes
Signed-off-by: Andrew Opalach <andrew@akon.city>
Diffstat (limited to 'src/mixer')
| -rw-r--r-- | src/mixer/audio_miniaudio.c | 19 |
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; |