Commit Graph

2078 Commits

Author SHA1 Message Date
David Reid e54c8d448d Merge pull request #117 from qwertysam/master
Jack back-end ignores midi ports
2019-12-29 09:16:38 +10:00
Samson Close c113fe844d Jack back-end ignores midi ports 2019-12-28 10:52:31 -05:00
George Corney 82d80992db Add defined(MA_APPLE_MOBILE) guard around AVAudioSessionCategory code 2019-12-27 10:38:49 +00:00
David Reid a59682b97a iOS: Initial work on automatic stream routing.
Public issue #101
2019-12-22 16:06:07 +10:00
David Reid 11c0af38f5 Small documentation update. 2019-12-22 09:01:57 +10:00
David Reid 28093e5c29 Add some debug output to the PulseAudio backend. 2019-12-21 20:06:23 +10:00
David Reid 4e7d501ea9 Merge branch 'dev' of https://github.com/dr-soft/miniaudio into dev 2019-12-21 16:28:47 +10:00
David Reid ac995ee75f Core Audio: Improvements to iOS.
* The session category can now be configured via the context config. When
    set to ma_ios_session_category_default, it will try PlayAndRecord,
    Playback and Record (in that order) until one works. If none work it
    leave the category untouched. This will also set the DefaultToSpeaker
    option since in most cases an application will want audio to be emitted
    from the speaker rather than the receiver.  If the application does not
    want to change the session category, use ma_ios_session_category_none.

  * The session category options can now be configured via the context
    config. This maps to the AVAudioSessionCategoryOption flags.

Public issues #101, #113
2019-12-21 13:22:24 +10:00
David Reid 6c7f6cd3fd Core Audio: Try fixing a compilation error when targeting tvOS and watchOS.
Public issue #108
2019-12-21 10:26:44 +10:00
David Reid c03c12dc9b Core Audio: Try fixing a compilation error on iOS builds.
Public issue #110
2019-12-21 10:03:01 +10:00
David Reid 8bc07a8e36 Fix some integer casting warnings.
Public issue #110
2019-12-21 09:55:00 +10:00
David Reid d6e325dd76 Temporary fix for a warning on Apple platforms.
Public issue #110
2019-12-21 09:52:11 +10:00
David Reid 1c998a57f9 Update release notes. 2019-12-19 18:48:27 +10:00
David Reid 4d249acdee Try fixing some compilation errors when compiling with MinGW.
Public issue #114.
2019-12-19 18:41:11 +10:00
David Reid cd44057a51 Update revision history. 2019-12-07 07:49:56 +10:00
David Reid 8b9d01ad81 Core Audio: Fix deinterleaving bug in capture mode. 2019-12-07 07:47:28 +10:00
David Reid fe90e11a79 Core Audio: Potential fix for incorrect deinterleaving. 2019-12-06 17:17:56 +10:00
David Reid c78a11bed6 Implement semaphores in preparation for future work. 2019-12-01 09:36:27 +10:00
David Reid 483d62e35c AAudio: Set the stream error callback in preparation for future work. 2019-12-01 09:03:31 +10:00
David Reid cbbd818dd6 iOS: Try fixing a bug with stereo headphone output. 2019-11-02 10:54:23 +10:00
David Reid f560f4793d iOS: Try adding support for Bluetooth routing. 2019-11-02 10:35:28 +10:00
David Reid f1625a02ae Return a more accurate error code from ma_device_init(). 2019-10-22 17:31:20 +10:00
David Reid c9a3b0800c Version 0.9.8 2019-10-07 09:11:57 +10:00
David Reid 268abad8d2 Update external libraries. 2019-10-07 08:34:42 +10:00
David Reid 154bb46bab Update dr_wav. 2019-10-07 07:24:03 +10:00
David Reid 25b8d2e47c Merge pull request #98 from mgambrell/master
remove a stray garbage byte (0x10) from the source file which makes visual studio unable to open it sometimes :o
2019-10-04 07:23:19 +00:00
mgambrell 7ead49dba3 remove a stray garbage byte (0x10) from the source file which makes visual studio unable to open it sometimes :o 2019-10-03 17:19:44 -04:00
David Reid 508e9b60a5 WASAPI: Relax low-latency shared mode restrictions.
This change enabled the use of low-latency shared mode if the desired
sample rate matches the native sample rate.
2019-10-03 19:37:31 +10:00
David Reid ff5d4e615e WASAPI: Fix errors with the use of AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM.
AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM is incompatible in exclusive mode
and low-latency shared mode.
2019-10-03 19:29:44 +10:00
David Reid 3f5aebfadb [WASAPI] Try fixing indefinitely repeating glitches in duplex mode. 2019-10-02 19:21:25 +10:00
David Reid 68ffbb3e07 WASAPI: Try reducing the playback start threshold in duplex mode. 2019-09-30 20:42:18 +10:00
David Reid ed8135610a WASAPI: Fix a wrong-way-around conditional. 2019-09-30 20:31:39 +10:00
David Reid 43bf6a1a97 WASAPI: Properly detect and report overruns in duplex mode. 2019-09-30 20:27:20 +10:00
David Reid a38fe4a042 WASAPI: Correctly handle AUDCLNT_BUFFERFLAGS_SILENT. 2019-09-30 20:21:56 +10:00
David Reid c69b1e48c4 Clarify that changing volume does not change the system volume. 2019-09-29 21:14:39 +10:00
David Reid 9043985ce6 Fix some issues with dithering. 2019-09-29 17:11:27 +10:00
David Reid 6cf6f3f9d8 Possible fix for some atomic exchange errors. 2019-09-29 15:49:16 +10:00
David Reid d1f70beba4 Fix some Clang warnings. 2019-09-29 15:03:14 +10:00
David Reid 0d89891118 Add support for per-device master volume control.
New Device APIs:
  * ma_device_set_master_volume()
  * ma_device_get_master_volume()
  * ma_device_set_master_gain_db()
  * ma_device_get_master_gain_db()

New Helper APIs
  * ma_copy_and_apply_volume_factor_u8()
  * ma_copy_and_apply_volume_factor_s16()
  * ma_copy_and_apply_volume_factor_s24()
  * ma_copy_and_apply_volume_factor_s32()
  * ma_copy_and_apply_volume_factor_f32()
  * ma_apply_volume_factor_u8()
  * ma_apply_volume_factor_s16()
  * ma_apply_volume_factor_s24()
  * ma_apply_volume_factor_s32()
  * ma_apply_volume_factor_f32()
  * ma_copy_and_apply_volume_factor_pcm_frames_u8()
  * ma_copy_and_apply_volume_factor_pcm_frames_s16()
  * ma_copy_and_apply_volume_factor_pcm_frames_s24()
  * ma_copy_and_apply_volume_factor_pcm_frames_s32()
  * ma_copy_and_apply_volume_factor_pcm_frames_f32()
  * ma_copy_and_apply_volume_factor_pcm_frames()
  * ma_apply_volume_factor_pcm_frames_u8()
  * ma_apply_volume_factor_pcm_frames_s16()
  * ma_apply_volume_factor_pcm_frames_s24()
  * ma_apply_volume_factor_pcm_frames_s32()
  * ma_apply_volume_factor_pcm_frames_f32()
  * ma_apply_volume_factor_pcm_frames()
  * ma_factor_to_gain_db()
  * ma_gain_db_to_factor()
2019-09-29 13:45:38 +10:00
David Reid b733bf2530 Add support for clipping.
This only applies when the playback sample format is configured as
ma_format_f32. Clipping is enabled by default and can be disabled by
setting ma_device_config.noClip to true.
2019-09-29 10:07:01 +10:00
David Reid 606ee927da Add information on allowable ranges for sample formats. 2019-09-29 08:47:18 +10:00
David Reid 757a4d617d Improvements to pre-init of the output buffer in the data callback.
This commit makes it well defined as to whether or not the output
buffer passed in to the data callback is initialized to zero or left
undefined. By default it's initialized to zero, but can be changed to
undefined by setting noPreZeroedOutputBuffer in the device config.
2019-09-29 08:46:29 +10:00
David Reid c26544bafd Fix some full duplex issues for asynchronous backends. 2019-09-28 18:41:37 +10:00
David Reid 39edf6d8ff Core Audio: Fix some issues with full duplex. 2019-09-28 17:26:25 +10:00
David Reid 1860292da6 Merge branch 'dev' of https://github.com/dr-soft/miniaudio into dev 2019-09-28 12:37:18 +10:00
David Reid 575009daa0 Core Audio: Fix bugs with automatic stream routing. 2019-09-28 12:21:19 +10:00
David Reid 677f6887fa Typo. 2019-09-28 07:31:37 +10:00
David Reid 6c5119f0b3 Update dr_flac. 2019-09-28 07:23:10 +10:00
David Reid ef1b32a89a Update revision history. 2019-09-19 22:03:52 +10:00
David Reid 3961c3e9e1 WASAPI: Only enable SRC_DEFAULT_QUALITY with AUTOCONVERTPCM. 2019-09-19 21:56:05 +10:00