Commit Graph

774 Commits

Author SHA1 Message Date
David Reid 32a5f02b84 Bump version. 2018-09-12 18:21:46 +10:00
David Reid 10dffdcd0c Fix UWP detection bug. 2018-09-08 21:19:47 +10:00
David Reid 98338e268f Minor rearrangement. 2018-09-01 08:06:36 +10:00
David Reid 61e52632ff Bump version. 2018-08-26 18:04:09 +10:00
David Reid 8459892bf3 Fix some minor typos. 2018-08-26 10:18:40 +10:00
David Reid 810de16154 Fix some debug output errors. 2018-08-26 09:51:25 +10:00
David Reid d6f49f3096 WASAPI: Explicitly disable exclusive mode on UWP for now. 2018-08-26 07:57:15 +10:00
David Reid c35bc17f95 Fix warning. 2018-08-25 18:18:57 +10:00
David Reid 35b2237c44 OSS: Set the exclusive mode flag. 2018-07-30 08:54:08 +10:00
David Reid c19311461f sndio: Set the exclusive mode flag on the device. 2018-07-30 23:05:03 +10:00
David Reid 26e9eb620f Potential fix for a bug where the audio format is not init'd properly. 2018-08-25 10:51:15 +10:00
David Reid 7f61ec3cc1 audio(4): Some cross platform fixes. 2018-07-30 22:19:39 +10:00
David Reid d18e8095e2 audio(4): Add some debug output. 2018-08-25 00:13:59 +00:00
David Reid fc3ee39339 audio(4): Some tweaks to device IO. 2018-08-24 22:13:48 +00:00
David Reid c5d30341a1 audio(4): Experiment with non-blocking mode. 2018-08-22 11:26:14 +00:00
David Reid 0e6f0f3075 audio(4): Properly set the exclusive mode flag. 2018-08-21 08:59:46 +00:00
David Reid 85837cd8c2 Try fixing some compilation errors on MinGW. 2018-08-20 20:53:12 +10:00
David Reid d2d13076ef Disable automatic device switching in exclusive mode.
This was causing issues for me on WASAPI where it would return an error
indicating that the device was already in use: AUDCLNT_E_DEVICE_IN_USE.

If this is a bug in mini_al I'm happy to re-enable this once it's
fixed, but I've been unable to figure out what's wrong so far.

For consistency I have also disabled the generic automatic device
switching feature.
2018-08-20 20:48:42 +10:00
David Reid cb596d5484 WASAPI: Simplify device initialization. 2018-08-20 19:04:17 +10:00
David Reid c0105c711e Fix C++ compilation error. 2018-08-20 18:31:30 +10:00
David Reid 325b15a013 WASAPI: Add support for hardware offloading and low-latency shared mode 2018-08-19 16:21:12 +10:00
David Reid 821abec74f WASAPI: Experiment with hardware offloading. 2018-08-19 15:05:43 +10:00
David Reid 9862f6f193 WASAPI: Add support for compiling the UWP build as C. 2018-08-19 14:29:16 +10:00
David Reid dd3638f5fb Add declarations for IAudioClient2 and IAudioClient3. 2018-08-19 12:41:29 +10:00
David Reid 0b864d30c0 Core Audio: Fix runtime linking. 2018-08-19 11:08:53 +10:00
David Reid e837b5006b Core Audio: Extract the device name at initialization time. 2018-08-19 10:52:51 +10:00
David Reid fb0857461b Core Audio: Fix an error with stream routing. 2018-08-19 10:47:47 +10:00
David Reid 02af2cffea Core Audio: Add support for stream routing. 2018-08-19 10:40:17 +10:00
David Reid 614813b2e1 WASAPI: Implement stream routing.
With this change, mini_al will automatically switch the internal device
to that of the new default device when the user changes it via the
operating system's sound preferences.
2018-08-18 20:14:08 +10:00
David Reid 35352cca8a Update notes. 2018-08-16 19:58:54 +10:00
David Reid 39910dce3d Fix a typo. 2018-08-15 17:26:15 +10:00
David Reid 337aaea321 Clean up some old code. 2018-08-15 16:40:30 +10:00
David Reid c4b6d4042a Initial work on default device reinitialization. 2018-08-15 16:01:26 +10:00
David Reid b51cdd3651 Bump version. 2018-08-12 13:40:20 +10:00
David Reid 13441af622 Add mal_sine_wave_read_ex(). 2018-08-12 10:03:31 +10:00
David Reid 002a37b9af Fix a bug where it's possible for the internal channel map to be wrong. 2018-08-12 08:30:00 +10:00
David Reid 57101f618a WASAPI and WinMM: Stop the device an internal error occurs. 2018-08-12 08:15:53 +10:00
David Reid 21e15a4ca1 Fix some errors with the previous commit. 2018-08-11 21:31:05 +10:00
David Reid 30b705ccee Rename the audioio backend to audio(4). 2018-08-11 21:07:31 +10:00
David Reid 56a442a8ad PulseAudio: Small tweak to the default buffer size on PulseAudio. 2018-08-11 20:59:16 +10:00
David Reid 582a87983c Add standard channel map based on FreeBSD's sound(4) man page. 2018-08-11 19:44:46 +10:00
David Reid b00c05366f Update notes. 2018-08-11 19:20:51 +10:00
David Reid f53291c890 Add support for audioio to OpenBSD. 2018-07-30 17:17:05 +10:00
David Reid 1e3c8faf4b Clean up. 2018-08-11 13:57:45 +10:00
David Reid d5530a4691 ALSA: Try fixing a crackling bug. 2018-08-11 03:39:41 +00:00
David Reid 8732f9aa11 Update revision history. 2018-08-11 11:41:01 +10:00
David Reid 27488061c2 Clean up. 2018-08-11 11:38:27 +10:00
David Reid a6d777f149 audioio: Fix a bug where the buffer size is set incorrectly. 2018-08-06 12:20:58 +00:00
David Reid 931d669ff9 Add support for setting the device's buffer size in milliseconds.
Setting the buffer size in frames is still supported. If
bufferSizeInFrames is set to 0, bufferSizeInMilliseconds will be used
instead. If both are zero, defaults are used.
2018-08-11 11:06:49 +10:00
David Reid d4916abdc9 Remove the experimental profiling based default buffer sizes.
The problem with this idea is that it complicates the buffer size
calculations in the backends. It also results in situations where
the buffer size is inconsistent which is annoying.

Future commits will be adding support for specifying the size of the
buffer in milliseconds which should offer more flexibility.
2018-08-11 08:56:59 +10:00