Commit Graph

1739 Commits

Author SHA1 Message Date
David Reid 967174368e Add looping example. 2020-05-29 19:50:04 +10:00
David Reid 8de49326d4 Add support for looping when reading data from data sources.
Updated APIs:
  * ma_data_source_read_pcm_frames()
  * ma_data_source_seek_pcm_frames()
2020-05-29 19:49:38 +10:00
David Reid 69253921de Update dr_wav in preparation for some new work. 2020-05-29 19:20:24 +10:00
David Reid 1cec172623 Add ma_data_source_seek_pcm_frames().
This commit also explicitly defines ma_data_source_read_pcm_frames() as
supporting an output buffer of NULL in which case a forward seek should
be performed.
2020-05-29 18:00:48 +10:00
David Reid aec20ea98c Add support for passing in NULL for output buffer when decoding.
This will cause a forward seek to occur instead of a read when calling
ma_decoder_read_pcm_frames() with the output buffer set to NULL.
2020-05-29 17:57:01 +10:00
David Reid 077ae13157 Clarify some wording. 2020-05-28 22:36:34 +10:00
David Reid 046bc0d7c6 Add initial experimental work on the ma_engine API. 2020-05-28 21:25:39 +10:00
David Reid 0d691012d6 Add support for effects when mixing memory mapped data sources. 2020-05-28 16:18:16 +10:00
David Reid 783aef728e Updates to the mixer API.
* Add support for volume control to ma_mixer_mix_*().
  * Add support for specifying an effect to apply before mixing.
  * Add optimized pipeline for memory mappable data sources.
  * Remove some unnecessary functions:
    - ma_mixer_mix_pcm_frames_ex()
    - ma_mixer_mix_callbacks()
    - ma_mixer_mix_decoder()
    - ma_mixer_mix_audio_buffer()
    - ma_mixer_mix_waveform()
    - ma_mixer_mix_noise()
    - ma_mixer_mix_rb_ex()
2020-05-27 22:58:22 +10:00
David Reid c2aa044335 Have ma_audio_buffer_unmap to return MA_AT_END when the end is reached. 2020-05-27 21:19:16 +10:00
David Reid df9906a11e Add support for memory mapping to ma_data_source. 2020-05-27 21:13:06 +10:00
David Reid f572ac8709 Change pDeviceID to constant pointers in ma_device_config. 2020-05-27 17:44:41 +10:00
David Reid 51fea1b1bd Fix some warnings in ma_mixing.h. 2020-05-27 17:43:08 +10:00
David Reid 34fcf64c96 Update dr_wav and dr_mp3. 2020-05-27 17:37:47 +10:00
David Reid c530416acc Minor update to ma_mixer. 2020-05-25 22:45:40 +10:00
David Reid f333a5efc5 Version 0.10.7 2020-05-25 16:09:22 +10:00
David Reid e90aaccbb8 Silence a warning. 2020-05-24 16:14:23 +10:00
David Reid 8f5e64a15a Update revision history. 2020-05-24 16:13:33 +10:00
David Reid 069a436f3a Fix a compilation error in the C++ build. 2020-05-24 16:12:44 +10:00
David Reid 237f5a6152 Add pull request template. 2020-05-24 14:24:32 +10:00
David Reid 4883142f68 Merge branch 'dev' 2020-05-24 14:09:57 +10:00
David Reid aeed4457cd Update issue templates 2020-05-24 14:07:31 +10:00
David Reid 9a60cea91a Move CONTRIBUTING into the docs folder. 2020-05-24 13:05:22 +10:00
David Reid 0455697b55 Update contribution guidelines to be a bit more professional. 2020-05-24 13:04:39 +10:00
David Reid 3f96bdf8a7 Version 0.10.6 2020-05-24 11:39:40 +10:00
David Reid b95e86765e Remove old research code. 2020-05-23 17:13:37 +10:00
David Reid ea3f7f511e Add ma_audio_buffer API.
The ma_audio_buffer object is used for storing raw audio data in memory
and reading from it like any other data source. It supports flexible
memory management, reading, seeking, memory mapping and looping.

See documentation under "Audio Buffers" for a detailed description.
2020-05-23 17:07:19 +10:00
David Reid d836c0b56c Update readme to be a bit more concise. 2020-05-23 09:24:05 +10:00
David Reid eaca001361 Add research code for ma_data_source. 2020-05-22 21:37:48 +10:00
David Reid 329f184004 PulseAudio: Fix compilation errors with C89 and MA_NO_RUNTIME_LINKING. 2020-05-22 20:04:59 +10:00
David Reid f8c63d9ce0 Fix MA_NO_RUNTIME_LINKING for ALSA. 2020-05-22 18:57:51 +10:00
David Reid 70350d2a86 ALSA: Fix some compilation warnings. 2020-05-22 18:51:00 +10:00
David Reid 63c4409d20 Fix navigation in readme. 2020-05-21 20:51:22 +10:00
David Reid 1872ca4a46 Add Twitter link. 2020-05-21 20:46:06 +10:00
David Reid f26de790dd Use HTTPS instead of HTTP. 2020-05-21 20:24:46 +10:00
David Reid 56a785e2af Remove Decoding and add Documentation section to readme. 2020-05-21 20:20:45 +10:00
David Reid 169132de39 Fix formatting in examples build readme. 2020-05-21 20:19:22 +10:00
David Reid 5f1fe8ea92 Experiment with a menu in the readme. 2020-05-21 19:59:05 +10:00
David Reid f08171dc82 More experiments with the readme. 2020-05-21 19:49:29 +10:00
David Reid 704a279f95 Experiment with a readme change. 2020-05-21 18:51:39 +10:00
David Reid 7221bc4a62 Update external libraries. 2020-05-16 09:20:00 +10:00
David Reid 6d574e25b2 Initial commit of the new mixing API. 2020-05-10 20:55:08 +10:00
David Reid 9339a8a068 Change unclipped s24 to be represented as 64-bit rather than 32-bit.
This addresses some clipping issues when accumulating.
2020-05-10 13:43:01 +10:00
David Reid b15dcb691c Update revision history. 2020-05-10 12:40:41 +10:00
David Reid 509f746e66 Add ma_silence_pcm_frames() and deprecate ma_zero_pcm_frames().
ma_zero_pcm_frames() will be removed in version 0.11.
2020-05-10 12:39:38 +10:00
David Reid e64d1ecd6e Add support for u8 to the channel converter. 2020-05-10 10:14:04 +10:00
David Reid a66c0355cb Add support for s24 to the channel converter. 2020-05-10 09:03:55 +10:00
David Reid 3e097a6087 Add support for s32 to the channel converter. 2020-05-10 07:43:56 +10:00
David Reid 493b2ec9c3 Prep work adding support for extra formats to the channel converter. 2020-05-10 07:35:18 +10:00
David Reid e03d7985b7 Add compile-time and run-time version querying.
This adds the following:
  * MA_VERSION_MINOR
  * MA_VERSION_MAJOR
  * MA_VERSION_REVISION
  * MA_VERSION_STRING
  * ma_version()
  * ma_version_string()

Public issue https://github.com/dr-soft/miniaudio/issues/156
2020-05-07 15:10:58 +10:00