Commit Graph

1042 Commits

Author SHA1 Message Date
David Reid 008cb41617 API CHANGE: Reorder parameters for some APIs.
The APIs that have changed are those that take an output pointer and an
input count in the format of "some_read_function(handle, pBuf, count)".

The updated APIs include:
  * mal_decoder_read_pcm_frames()
  * mal_pcm_converter_read()

Some APIs are scheduled to be replaced in a future version so I have
decided not to replace this at this time since it will be a waste of
time to do so.
2019-02-25 18:15:00 +10:00
David Reid 9ed608a452 Update simple playback example. 2019-02-24 21:01:53 +10:00
David Reid 08e21aae05 Add LICENSE file. 2019-02-24 20:40:34 +10:00
David Reid 8f67ba93cf Simplify Win32 #include's. 2019-02-24 20:31:29 +10:00
David Reid 5b5d51cf68 Update project files. 2019-02-24 20:12:28 +10:00
David Reid 125383e9ea Fix some warnings. 2019-02-24 20:07:09 +10:00
David Reid 01f04b249e More full-duplex bug fixes. 2019-02-24 20:03:50 +10:00
David Reid 26a218c1af Fix some full-duplex errors. 2019-02-24 19:04:49 +10:00
David Reid 433b7e8ed6 Fix a bug in the ring buffer. 2019-02-24 17:47:08 +10:00
David Reid bd689c560e Fix Core Audio build. 2019-02-24 17:39:07 +10:00
David Reid 0cc126245e Work on full-duplex with Core Audio. 2019-02-24 16:43:37 +10:00
David Reid a9ac84dde2 Work on full-duplex for JACK. 2019-02-24 16:11:27 +10:00
David Reid 1e1e8c0ba1 More full-duplex work on OpenSL and AAudio. 2019-02-24 15:53:20 +10:00
David Reid 66412f8937 Add some notes for the new resampler. 2019-02-24 13:28:04 +10:00
David Reid 5b4b7fa266 More work on full-duplex with WebAudio. 2019-02-24 13:26:18 +10:00
David Reid 51ebb048be Work in progress for full-duplex for WebAudio. 2019-02-23 15:09:39 +10:00
David Reid 212cee5982 Integrate the ring buffer into mini_al.h 2019-02-21 18:06:32 +10:00
David Reid 198b844d8b Add mal_pcm_rb to the ring buffer research code.
This is the same as the normal ring buffer except everything is done in
terms of PCM frames instead of bytes. This is useful to simplify the
case of using the ring buffer for storing PCM audio data.
2019-02-21 17:55:35 +10:00
David Reid c78aadff9c Fix device initialization with audio(4) on OpenBSD. 2019-02-20 20:01:16 +10:00
David Reid d1f26b4d3b Fix bugs with sndio. 2019-02-19 20:40:22 +10:00
David Reid 7fba7e5c13 Fix OpenBSD build. 2019-02-19 20:08:23 +10:00
David Reid 9f8a4b9a8a Bug fixes for audio(4). 2018-08-25 05:12:25 +00:00
David Reid 5f85f42b92 Fix NetBSD build. 2018-08-25 05:06:50 +00:00
David Reid 581b90d2d3 Fix OSS build. 2019-02-19 08:15:18 +10:00
David Reid 79e833135c Work in progress on full-duplex for sndio. 2019-02-17 15:22:33 +10:00
David Reid a311b9068d Work in progress on full-duplex for audio(4). 2019-02-17 13:59:22 +10:00
David Reid 9f294cf81e Work in progress on full-duplex support for OSS. 2019-02-16 15:41:22 +10:00
David Reid 31329a65eb Work on full-duplex support for OpenSL. 2019-02-16 08:47:31 +10:00
David Reid fc9cee7697 Work in progress on full-duplex for AAudio. 2019-02-14 18:32:18 +10:00
David Reid 79c46d2771 Work on full-duplex for ALSA. 2019-02-14 17:51:20 +10:00
David Reid d0dfd37c6d Work on full-duplex for PulseAudio. 2019-02-10 19:33:48 +10:00
David Reid d2ca42edd7 Work on removing unnecessary attributes from mal_device. 2019-02-10 08:55:41 +10:00
David Reid 574c1adccd Get full-duplex working with DirectSound. 2019-02-10 06:38:33 +10:00
David Reid f37df9a814 Remove some unused properties from device and config structures. 2019-02-09 20:33:01 +10:00
David Reid 32c64703dd Initial working implementation of full-duplex on WASAPI. 2019-02-09 17:39:49 +10:00
David Reid 934c7d5e63 WinMM: Prep work for full-duplex. 2019-02-06 18:19:08 +10:00
David Reid b525fc8005 DirectSound: Prep work full-duplex. 2019-02-03 20:45:02 +10:00
David Reid 8986a410cc Fix compiler errors on the Windows build. 2019-02-03 18:50:08 +10:00
David Reid 8adce03d72 Core Audio: Refactoring in preparation for full-duplex. 2019-02-03 12:35:23 +10:00
David Reid d59b08d4b8 Begin work on rearranging mal_config in preparation for full-duplex. 2019-02-03 06:44:20 +10:00
David Reid 8c276c07d3 Remove the redundant "name" parameter from mal_device.
This is now stored separately for playback can capture in the playback
and capture sub-objects respectively.
2019-02-02 19:15:55 +10:00
David Reid fd3a7e2595 WASAPI: Infrastructure work in preparation for full-duplex. 2019-02-02 17:35:58 +10:00
David Reid 6548f4e2f1 Set up some infrastructure for separate in/out device IDs. 2019-01-27 12:45:09 +10:00
David Reid e8e4198440 A little bit of prep work for the full-duplex example. 2019-01-27 06:56:35 +10:00
David Reid 97c7c0a72d API CHANGE: Remove the onLog parameter from mal_context_config_init().
This commit also renames the onLog member of mal_context_config to
logCallback for consistency with mal_device_config callback naming
convention.
2019-01-27 06:53:48 +10:00
David Reid 88b75fdbc1 Typos. 2019-01-14 20:10:17 +10:00
David Reid 2dd522b62e Update documentation for mal_device_init(). 2019-01-13 10:51:16 +10:00
David Reid 4d03928b74 Remove some unused backend functions. 2019-01-13 10:38:54 +10:00
David Reid 23c917516d Rename more variables for consistency. 2019-01-13 10:26:22 +10:00
David Reid 54e82c74d0 Rename some variables for consistency. 2019-01-13 10:20:12 +10:00