Commit Graph

1367 Commits

Author SHA1 Message Date
David Reid 03020219f9 Fix compilation errors. 2016-12-30 06:47:59 +10:00
David Reid 07f1f20c17 Some renaming for the OpenSL backend. 2016-12-29 23:52:34 +10:00
David Reid d568fe547a Win32: Simplify use of COM. 2016-12-29 23:44:52 +10:00
David Reid dd0554be0e Don't omit backend-specific attributes in structures.
The rationale behind this commit is to ensure the size of each data
structure remains consistent regardless of which backends are enabled
and disabled. This is important for mini_al because it publicly exposes
every struct.
2016-12-29 21:57:54 +10:00
David Reid 02788795fb Update documentation. 2016-12-29 21:27:00 +10:00
David Reid 3348fc0a3c Update examples. 2016-12-29 20:43:31 +10:00
David Reid 47cc931933 Miscellaneous work on the OpenAL backend. 2016-12-29 20:43:06 +10:00
David Reid 629b37bbba Remove dependency on OpenAL headers. 2016-12-29 19:41:26 +10:00
David Reid c466f8de33 Apple platform detection. 2016-12-29 19:21:44 +10:00
David Reid 4f62eed986 Misc. fixes for the OpenAL backend. 2016-12-29 18:11:51 +10:00
David Reid 516ff2e539 Get basic playback working on the OpenAL backend. 2016-12-29 15:22:44 +10:00
David Reid 518f628fd6 Exploratory work on the OpenAL backend. 2016-12-29 00:07:38 +10:00
David Reid f8daea0710 API CHANGE: Remove the rewinding APIs.
The rationale for this is that it's to unreliable and inconsistent
across each backend and not worth the added maintenance cost.
2016-12-28 17:45:49 +10:00
David Reid 8191bb5050 Fix an error where the incorrect backend is being used. 2016-12-28 17:38:31 +10:00
David Reid 74a790a508 Fix C++ build for the WASAPI backend. 2016-12-28 17:28:43 +10:00
David Reid ea5cc7fc28 Update gitignore. 2016-11-22 11:20:20 +10:00
David Reid e33d149aec Fix a compilation error. 2016-11-14 22:21:53 +10:00
David Reid 8987711b90 Give DirectSound priority over WASAPI for now. 2016-11-14 22:19:39 +10:00
David Reid e4fc7599ff Update documentation. 2016-11-14 20:23:49 +10:00
David Reid ddabf406a4 Update example code in documentation. 2016-11-14 20:19:30 +10:00
David Reid d80651e110 Update change log. 2016-11-14 20:14:50 +10:00
David Reid 08d46c27a8 Remove a todo. 2016-11-14 20:06:41 +10:00
David Reid dd7c706ea0 Update example in readme. 2016-11-14 20:03:59 +10:00
David Reid 1d9ccdec51 Update examples. 2016-11-14 20:02:41 +10:00
David Reid 262452139f Add a todo. 2016-11-14 19:56:35 +10:00
David Reid 6d84abec2e Fix a copy/paste error. 2016-11-14 19:50:50 +10:00
David Reid 4e05d6d88c Remove unneeded property from mal_device. 2016-11-14 19:50:18 +10:00
David Reid d1d265b74d API CHANGE: Change parameters of mal_device_init().
These changes add a mal_context parameter and moves the output device
to the last parameter for consistency with mal_context_init().
2016-11-14 19:44:48 +10:00
David Reid 3982453b6b API CHANGE: Have mal_enumerate_devices() take a context object. 2016-11-14 13:56:12 +10:00
David Reid 982791b377 Add some infrastructure for the new context system. 2016-11-14 13:29:09 +10:00
David Reid 80c8f7d843 Prioritize WASAPI over DirectSound. 2016-11-13 23:43:46 +10:00
David Reid fb4cc86624 WASAPI: Add initial support for capture. 2016-11-13 23:33:32 +10:00
David Reid 16c3856dba WASAPI: Add initial support for playback. 2016-11-13 22:36:39 +10:00
David Reid ff8ef78480 WASAPI: Add support for device enumeration. 2016-11-13 17:21:51 +10:00
David Reid a03ed3259d Prep work for WASAPI. 2016-11-13 14:48:35 +10:00
David Reid 85ce6df27f Prep work for better handling non-desktop UWP builds. 2016-11-13 14:46:23 +10:00
David Reid 2fae24ff04 Disable DirectSound for UWP. 2016-11-13 11:24:20 +10:00
David Reid 9be149f6fe Clean up whitespace. 2016-11-06 09:24:00 +10:00
David Reid 6498df3fa1 Rename an assert to mal_assert and memset to mal_zero_object. 2016-11-06 07:45:00 +10:00
David Reid 84bb6f86bc Add a simple logo for the website and readme. 2016-10-28 10:47:34 +10:00
David Reid 38d9a34f7d Bump version. 2016-10-28 08:16:16 +10:00
David Reid 6c911783b4 Add a TODO. 2016-10-27 20:28:26 +10:00
David Reid 9d336be542 Fix compilation warning. 2016-10-27 00:17:37 +10:00
David Reid 1b34736831 Move #include's for OpenSL|ES to a more appropriate spot. 2016-10-26 22:40:17 +10:00
David Reid d4c0a07c40 Move some #define's out of the public section. 2016-10-26 22:38:51 +10:00
David Reid 7afcede3bd API CHANGE: Add device callbacks to mal_device_config.
Rationale:
1) It allows the callbacks to be set at initialization time which feels
   a bit more intuitive to me.
2) It avoids the need to call mal_device_set_send_callback(), etc.
3) It's a bit more consistent with the onLog callback. Previously,
   onLog would be passed to mal_device_init(), whereas onSend, etc were
   set with mal_device_set_send_callback(), etc. which feels needlessly
   inconsistent.
2016-10-26 22:20:16 +10:00
David Reid 4e2e48d29e DirectSound: Fix compilation error with MSVC when compiling as C++. 2016-10-26 15:36:22 +10:00
David Reid ca53ff1053 Drop support for f64, A-law and Mu-law formats.
Rationale:
1) These formats just aren't common enough to justify the added
   maintenance cost.
2) It makes software format conversion a lot simpler since it reduces
   the number of permutations.
2016-10-26 15:22:22 +10:00
David Reid 8774f70d6f OpenSL|ES: Explicitly fail for known unsupported formats. 2016-10-26 12:40:37 +10:00
David Reid 6901b5caa1 OpenSL|ES: Call the onStop callback when the device is stopped. 2016-10-26 11:20:52 +10:00