David Reid
6548f4e2f1
Set up some infrastructure for separate in/out device IDs.
2019-01-27 12:45:09 +10:00
David Reid
24167ba3c2
API CHANGE: Remove the device type and ID from mal_device_init/_ex().
2019-01-13 09:31:08 +10:00
David Reid
4980fcf3c5
Reorder parameters in the callback.
...
This swaps the order of the input and output pointers so that it's
consistent with the order used by memcpy().
2019-01-12 11:04:11 +10:00
David Reid
67db06350d
API CHANGE: Change the data callback in preparation for full-duplex.
...
This removes the two separate callbacks for sending and receiving data
to/from the device to a unified callback that's used for both input and
output. The new callback takes a pointer to both an input and output
buffer. When the device is opened in playback mode the input pointer
will be set to null. Likewise the output pointer will be set to null
for capture devices. Both input and output pointers will be non-null
for full-duplex devices.
2019-01-12 09:34:30 +10:00
David Reid
4e6f702f55
Update test_0 and project files.
2019-01-05 13:19:28 +10:00
David Reid
cdc49541a2
API CHANGE: Move pUserData from device_init() to device_config_init().
...
This change makes it consistent with mal_pcm_converter, mal_src, etc.
2018-12-30 17:29:03 +10:00
David Reid
a19a858351
Update test_0.
2018-12-30 13:33:17 +10:00
David Reid
1acb96ed22
Update test_0 for changes to the log callback.
2018-12-30 11:02:20 +10:00
David Reid
f223ea498b
Update test_0.
2018-12-30 09:23:12 +10:00
David Reid
2aa05be5c6
Disable SDL on Emscripten to avoid compiler errors.
2018-12-29 16:24:40 +10:00
David Reid
8fe0cf9a75
Fix a typo.
2018-12-28 21:27:29 +10:00
David Reid
eb4ee0b1d7
Update test program.
2018-12-28 21:25:26 +10:00
David Reid
2eb6b39a4f
Fix build of the test_0.
2018-12-26 17:42:24 +10:00
David Reid
ad935b8108
Disable SDL on Linux for test_0.
2018-11-18 09:39:32 +10:00
David Reid
21e15a4ca1
Fix some errors with the previous commit.
2018-08-11 21:31:05 +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
David Reid
f57e03c574
Fix deadlock in example when a device is closed unexpectedly.
2018-07-30 07:13:51 +10:00
David Reid
4ced551df8
Merge branch 'dev' of https://github.com/dr-soft/mini_al into dev
2018-08-05 12:17:46 +10:00
David Reid
8d15aa278c
Update external libraries and fix C++ on older versions of GCC.
2018-08-05 12:16:56 +10:00
David Reid
7057f845c6
Initial work on sndio backend.
2018-07-29 23:15:04 +10:00
David Reid
13675cc121
Work on the audioio backend.
2018-07-28 11:42:37 +00:00
David Reid
1eaf97d061
Update test to show a message when a device is stopped.
2018-06-30 20:47:48 +10:00
David Reid
f612438f00
Add some basic infrastructure for Core Audio.
2018-06-23 15:44:48 +10:00
David Reid
da4e05aee2
Fix build for main test program.
2018-05-29 19:30:50 +10:00
David Reid
59726df2c2
MAL_IMPLEMENTATION to MINI_AL_IMPLEMENTATION
2018-05-21 20:03:11 +10:00
David Reid
244db693e0
WASAPI: Start using experimental default buffer size system.
2018-05-03 18:48:20 +10:00
David Reid
b73b27ad0e
Update test.
2018-05-01 21:49:36 +10:00
David Reid
5041adcdf2
Add Digital Mars C++ detection to tests.
2018-04-30 18:17:03 +10:00
David Reid
9b5b777cab
Improve compiler support.
2018-04-29 21:20:53 +10:00
David Reid
b6e8fcb5f7
Update tests.
2018-04-29 16:24:17 +10:00
David Reid
d9d9901e69
Add tests for Emscripten.
2018-04-25 18:47:10 +10:00
David Reid
8e38deb7cc
Update tests.
2018-04-22 11:52:03 +10:00
David Reid
87f079d982
Update tests to always use the reference implementation.
2018-04-21 15:46:48 +10:00
David Reid
7701dc4e30
Update test and build files.
2018-04-21 12:25:55 +10:00
David Reid
9245dce668
Prep work for some SIMD optimizations.
2018-04-08 14:05:06 +10:00
David Reid
165350e7c5
Make mal_dsp API consistent.
2018-04-01 11:52:55 +10:00
David Reid
ac4c1109f8
Make channel router API consistent with format converter.
2018-04-01 11:13:17 +10:00
David Reid
96815f4351
Simplify the format converter API.
2018-04-01 11:00:36 +10:00
David Reid
d5549b371a
Rename some functions from "read_frames" to "read".
2018-04-01 10:44:41 +10:00
David Reid
1ef58d540a
Add a pUserData parameter to read functions for data conversion.
2018-04-01 10:39:22 +10:00
David Reid
81ae390c0a
Use the term "deinterleaved" instead of "separated".
2018-03-31 17:08:08 +10:00
David Reid
7272a09242
Fix warnings in tests.
2018-03-31 16:56:35 +10:00
David Reid
223727cff5
Add some channel routing tests.
2018-03-31 16:36:55 +10:00
David Reid
322688d73e
Fix a bad input validation check.
2018-03-31 15:46:42 +10:00
David Reid
4558800991
Improvements to blended channel mixing.
2018-03-31 14:40:47 +10:00
David Reid
a4063aeb49
Add another test case for the format converter.
2018-03-25 16:37:55 +10:00
David Reid
a4ddf17998
Format converter bug fixes.
2018-03-25 16:28:01 +10:00
David Reid
19f4630c92
Rename mal_get_sample_size_in_bytes() to mal_get_bytes_per_sample().
2018-03-25 13:57:14 +10:00
David Reid
0a3d077c04
Fix warnings.
2018-03-25 11:33:44 +10:00
David Reid
8ff85106be
Fix some bugs with interleaving/deinterleaving.
2018-03-25 11:02:38 +10:00