Commit Graph

2031 Commits

Author SHA1 Message Date
David Reid 9535551f3c Add a new resource manager example and simplify the old one. 2020-09-05 10:49:57 +10:00
David Reid e6392c0ba7 Add hello world example for engine. 2020-09-05 10:24:31 +10:00
David Reid acf4284aa9 Fix a crash when passing in NULL for the engine config. 2020-09-05 10:12:27 +10:00
David Reid d0bfcf0cc1 Rename ma_engine.h to miniaudio_engine.h. 2020-09-05 10:01:44 +10:00
David Reid 3c734f936f Merge ma_mixing into ma_engine. 2020-09-05 09:49:01 +10:00
David Reid edb8f870db Create FUNDING.yml 2020-09-02 17:30:10 +10:00
David Reid 4203697b38 Version 0.10.18 2020-08-30 11:58:18 +10:00
David Reid ecc0cb3418 Update links to point to the new repository location. 2020-08-30 11:56:37 +10:00
David Reid 6562e6a0c8 Update FLAC decoder. 2020-08-30 11:41:37 +10:00
David Reid 2012c93cc9 Add support for customizing the VFS for ma_engine. 2020-08-29 20:47:43 +10:00
David Reid 35d8f093ec Only set the isPlaying flag when the audio has finished playing. 2020-08-29 18:05:45 +10:00
David Reid 3a347e04ed Fix a bug where a sound is never marked as not playing. 2020-08-29 17:24:11 +10:00
David Reid ecb139a791 Update revision history. 2020-08-29 16:50:58 +10:00
David Reid dde178a0ea Add a comment about a VC6 limitation. 2020-08-29 15:09:39 +10:00
David Reid 578db3c8e1 Remove an unnecessary function declaration. 2020-08-29 15:00:27 +10:00
David Reid 7adf2f3bbc Merge pull request #192 from Clownacy/dev
Fix some VC6/2003 errors
2020-08-29 14:50:17 +10:00
David Reid f0a4b4533d Use a more appropriate default format for FLAC decoders. 2020-08-29 09:31:43 +10:00
David Reid f156baafca Use a default instead of blank channel map by default.
This commit fixes an issue where the optimized mono expansion path is
never hit.
2020-08-29 09:18:50 +10:00
David Reid f6fcbc7133 Fix an overflow bug in channel conversion. 2020-08-29 09:03:39 +10:00
David Reid a8557e82da Version 0.10.17 2020-08-28 20:36:58 +10:00
David Reid 3b840235f9 Resource Manager: Fix a looping bug.
This is happening because the data buffer is incorrectly being reported
as busy (still loading) which is used to indicate to the engine that no
data is available and therefore nothing can be played.
2020-08-28 20:31:45 +10:00
David Reid 18fd90c74f Fix a bug in ma_audio_buffer_read_pcm_frames().
This was always returning the input frame count rather than the number
of frames processed.
2020-08-28 20:25:54 +10:00
David Reid c20b26208b Revert an experimental change. 2020-08-28 19:21:30 +10:00
David Reid 479e239e6d Core Audio: Fix a bug with full-duplex mode.
Public issue https://github.com/dr-soft/miniaudio/issues/191
2020-08-27 17:50:08 +10:00
Clownacy 145520fabc Use fallback when SetFilePointerEX unavailable
VC6 doesn't appear to have SetFilePointerEX, so fallback on
SetFilePointer instead. This matches-up with VC6 not supporting
64-bit fseek.

Visual Studio .NET 2003 supports it, however.
2020-08-26 00:27:28 +01:00
Clownacy 9f4efc258c Fix some VC6/2003 errors
For whatever reason, neither compiler likes implicit casts between
`volatile unsigned int*` and `int*`.
2020-08-26 00:16:56 +01:00
David Reid 31793a3f45 Experiment with fixing a looping bug. 2020-08-25 21:12:10 +10:00
David Reid 19c52c98f9 Resource Manager: Fix a data buffer bug. 2020-08-25 20:45:51 +10:00
David Reid 07ae0be2ad Resource Manager: Fix a bug when reusing an already-loaded data buffer. 2020-08-25 18:05:08 +10:00
David Reid d83b3886a1 Update WAV codec. 2020-08-24 21:11:18 +10:00
David Reid 89a3df2bb5 Try fixing a mixing crash. 2020-08-24 20:05:22 +10:00
David Reid d6f664e19a Add support for configuring automatic resetting of fade points.
This is useful for enabling or disabling fading around loop
transitions.
2020-08-23 16:55:58 +10:00
David Reid 8ad73fa4da Clean up. 2020-08-23 14:18:42 +10:00
David Reid 06db69843c Update a comment. 2020-08-23 14:18:36 +10:00
David Reid 04abf86b09 Fix typo. 2020-08-23 14:16:31 +10:00
David Reid 49a9e2a2bf Minor refactor for getting load notifications working for sounds.
With this commit, you can now pass in a notification object which is
fired when an asynchronous sound has finished loading.
2020-08-23 14:08:22 +10:00
David Reid 96a60c069e Remove the pEngine parameter from all ma_sound_group_*() APIs.
Previously you could set the group to NULL in which case the master
group would be used, but this has now changed and the group parameter
can never be NULL. Use ma_engine_get_master_sound_group() to retrieve
the master sound group.
2020-08-23 10:51:04 +10:00
David Reid 0c410b0fdc Remove the pEngine parameter from all ma_sound_*() APIs. 2020-08-23 10:18:03 +10:00
David Reid fd1ca85219 Rename some APIs.
* ma_engine_sound_*() renamed to ma_sound_*().
  * ma_engine_sound_group_*() renamed to ma_sound_group_*().
2020-08-23 10:02:45 +10:00
David Reid dcb2b0ba1f Minor restructure. 2020-08-23 09:58:14 +10:00
David Reid 1f89b003c5 Changes to fading and delays.
* Removed ma_engine_sound_set_fade_in/out()
  * Add ma_engine_sound_set_fade_point_in_frames()
  * Add ma_engine_sound_set_fade_point_in_milliseconds()
  * Add ma_engine_sound_set_stop_delay()
  * Add ma_engine_sound_get_time_in_frames()
  * Removed ma_engine_sound_group_set_fade_in/out()
  * Add ma_engine_sound_group_set_fade_point_in_frames()
  * Add ma_engine_sound_group_set_fade_point_in_milliseconds()
  * Add ma_engine_sound_group_set_stop_delay()
  * Add ma_engine_sound_group_get_time_in_frames()

The fade in/out system has been replaced with something more general
and flexible which allows for up to two fade points to be configured
per sound or group, with arbitrary time periods and volumes.

This commit also includes the addition of a placeholder parameter for
ma_engine_sound_init_from_file() which is used to notify the caller
when an asynchronously loaded sound has finished loading.
2020-08-22 21:58:03 +10:00
David Reid 1ea2ee3caf Update documentation. 2020-08-22 17:49:46 +10:00
David Reid e34171fa31 Fix compilation error on Android. 2020-08-19 19:55:42 +10:00
David Reid 5310bdb0f4 Update revision history. 2020-08-17 17:46:23 +10:00
David Reid 7dc636ad27 Merge pull request #190 from yyamdev/dev
Fix logic that controls whether dr_wav is included
2020-08-17 17:28:58 +10:00
Pedro K Custodio ac62b0a030 Include dr_wav if only one of MA_NO_DECODING or MA_NO_ENCODING is defined. 2020-08-16 13:50:47 +01:00
David Reid 4873584058 Add support for fading out to sound groups. 2020-08-16 21:30:35 +10:00
David Reid 3de7f5caf5 Add support for start delays to sound groups. 2020-08-16 17:16:50 +10:00
David Reid 56dbcb529c Add support for fading in to sound groups. 2020-08-16 16:57:53 +10:00
David Reid 1baf3e941a Update documentation for ma_mixer_end(). 2020-08-16 15:23:20 +10:00