David Reid
a27a97f8c8
Add some thread safety to the ALSA backend.
2018-03-18 11:44:20 +10:00
David Reid
5f0f7eb2bb
Simplify mal_context_get_device_info().
2018-03-18 11:35:27 +10:00
David Reid
44ba584c28
Replace some instances of mal_strcpy_s() with mal_strncpy_s().
2018-03-18 10:56:42 +10:00
David Reid
2c01858f3a
SDL: Implement the new device enumeration APIs.
2018-03-18 10:29:36 +10:00
David Reid
59f01c5be0
OpenAL: Implement the new device enumeration APIs.
2018-03-18 10:02:12 +10:00
David Reid
b8638f2c46
Use mal_strncpy_s() instead of mal_strcpy_s() in a few places.
2018-03-18 07:50:58 +10:00
David Reid
40aad047a1
OpenSL: Implement the new device enumeration APIs.
2018-03-18 07:44:39 +10:00
David Reid
789bd23246
JACK: Implement the new device enumeration APIs.
2018-03-18 06:47:19 +10:00
David Reid
90269f6c1a
Fix some memory leaks.
2018-03-17 21:20:44 +10:00
David Reid
678ec058a1
PulseAudio: Implement the new device enumeration API.
2018-03-17 20:27:28 +10:00
David Reid
614d3e014b
ALSA: Implement the new device enumeration API.
2018-03-17 19:11:07 +10:00
David Reid
79a95bc1b5
Stop disabling WASAPI on older compilers.
2018-03-17 11:45:02 +10:00
David Reid
4ea47b62a7
Implement the new device enumeration API for the null backend.
2018-03-17 09:47:49 +10:00
David Reid
25e0e7f0f6
Fix some undefined behaviour.
...
Addresses issue #17 .
2018-03-17 09:13:02 +10:00
David Reid
b4bcb3132a
WinMM: Implement the new device enumeration APIs.
2018-03-17 09:10:37 +10:00
David Reid
52e03ff5b5
DirectSound: Implement the new device enumeration API.
2018-03-16 19:11:39 +10:00
David Reid
d0762a0410
API CHANGE: Replace preferExclusiveMode with shareMode.
2018-03-15 20:16:27 +10:00
David Reid
9d599d7791
WASAPI: Implement the new enumeration APIs.
2018-03-15 19:59:58 +10:00
David Reid
627969d266
Reword some documentation for the new device enumeration APIs.
2018-03-13 21:46:27 +10:00
David Reid
5abd93b39d
Initial untested work on an improved device enumeration API.
2018-03-13 21:36:43 +10:00
David Reid
5921d0e229
WASAPI: Remove dependency on audioclient.h
...
What a nightmare!
2018-03-11 21:14:47 +10:00
David Reid
dcf78ded75
Update change log.
2018-03-11 16:18:14 +10:00
David Reid
e9e18f40df
DirectSound: Remove dependency on dsound.h
2018-03-11 15:58:43 +10:00
David Reid
8d95a22b0e
Fix compilation error on the Windows build.
2018-03-11 12:00:43 +10:00
David Reid
dd920bb7f5
Remove backend-specific result codes.
2018-03-11 11:27:39 +10:00
David Reid
4c2e0101b7
Change the default channel mapping to the standard Microsoft mapping.
2018-03-11 10:55:31 +10:00
David Reid
164dbd5b76
Make the mono channel position it's own entity.
...
MAL_CHANNEL_MONO was previously an alias of MAL_CHANNEL_FRONT_CENTER.
2018-03-11 10:44:46 +10:00
David Reid
35fe3ae5cf
Introduce the notion of standard channel maps.
2018-03-11 10:26:51 +10:00
David Reid
1d310ff0ea
Clean up.
2018-03-11 07:58:51 +10:00
David Reid
b2b20ee149
Fix a few bugs found through static analysis.
2018-03-11 07:50:05 +10:00
David Reid
f455c4b05c
PulseAudio: Don't try auto-starting the daemon by default.
...
This reason for this change is that it does not suit the trial and
error architecture of mini_al's backend initialization.
mal_context.pulse.tryAutoSpawn can be used to enable auto-starting.
2018-03-11 07:09:52 +10:00
David Reid
4d6a0ecbc7
Update documentation and clean up a few things with OpenSL.
2018-03-11 06:59:31 +10:00
David Reid
adeda6ea95
Add mal_decoder_init_file_wav/flac/vorbis/mp3().
...
This commit also fixes a bad bug where initialization will always fail
when initializing from memory.
2018-03-11 06:20:47 +10:00
David Reid
03ccc5b8b7
Lower the priority of JACK to below OSS.
...
The reason for this change is to ensure OSS is chosen over JACK by
default on BSD platforms.
2018-03-10 22:26:00 +10:00
David Reid
f91d922253
Clean up.
2018-03-10 22:21:16 +10:00
David Reid
34a2294f12
Add support for configuring the priority of the worker thread.
2018-03-10 22:10:32 +10:00
David Reid
93fe66b7e3
Give PulseAudio priority over ALSA by default.
2018-03-10 20:12:17 +10:00
David Reid
5b41483af0
ALSA: Minor tweaks to the open mode used with snd_pcm_open().
2018-03-10 19:18:58 +10:00
David Reid
9d85ea6dd2
PulseAudio: Properly handle default format/channels/rate.
2018-03-10 18:03:11 +10:00
David Reid
9af027d488
Fix non-Windows builds.
2018-03-10 16:02:46 +10:00
David Reid
ad130c35d4
WinMM: Simplify format selection.
2018-03-10 15:01:27 +10:00
David Reid
fa8b090481
DirectSound: Improve the way APIs are loaded.
...
APIs are now per-context rather then per-device. This is leftover from
the no-context-API days.
2018-03-10 14:41:27 +10:00
David Reid
f4daf07770
DirectSound: Properly handle default format/channels/rate.
2018-03-10 14:22:46 +10:00
David Reid
eeb1024adf
WASAPI: Store the name of the device during initialization.
2018-03-09 21:39:38 +10:00
David Reid
c240e9b355
WASAPI: Properly support default format/channels/rate/chmap.
2018-03-09 21:14:25 +10:00
David Reid
0c2395419a
Update some documentation.
2018-03-08 21:23:33 +10:00
David Reid
2a0dcf28e5
Clean up.
2018-03-08 21:02:39 +10:00
David Reid
81ca0ccb7b
Introduce the notion of default device configurations.
2018-03-08 20:57:32 +10:00
David Reid
165c92ec8e
Make mal_device_init_ex() more robust.
2018-03-08 18:54:39 +10:00
David Reid
aa3c933857
Clean up some whitespace.
2018-03-07 21:08:14 +10:00