Commit Graph

3114 Commits

Author SHA1 Message Date
David Reid adf18f2db3 Add support for data sources to self manage loop points and ranges.
This addresses an issue where data streams can have a delay between
loop points due to it's asynchronous loading mechanism. With this
change, streams should now have a clean loop transition.
2021-11-14 10:36:17 +10:00
David Reid bb4078cc26 Fix a bug when reading from a looped data source with a range. 2021-11-14 09:27:45 +10:00
iarwain 7d84ec56eb Fixed compilation warnings on iOS with MRR (Manual Retain Release) 2021-11-10 21:05:48 -05:00
iarwain 4610482a70 Fixed missing [super dealloc] call on iOS 2021-11-10 05:16:22 -05:00
iarwain 54f6800288 Fixed some printf/Wformat warnings with llvm/32bit targets 2021-11-10 05:07:06 -05:00
iarwain 4c92d684dd Fixed misaligned atomic accesses on iOS/32bit targets 2021-11-10 05:02:02 -05:00
iarwain 32ae4f9384 Fixed a compilation warning with llvm 2021-11-10 04:24:38 -05:00
iarwain 760fa4c84a Fixed compilation errors on iOS 2021-11-10 02:39:36 -05:00
Charles Steinkuehler 51059e935c Fix use of uninitialized variables
When shutting down, the resultALSA variable can be used when
uninitialized in the ma_device_read__alsa and ma_device_write__alsa
routines.  This has been verified by both gcc warnings and in
application code (we were occasionally seeing segfaults when our
callback routine was being passed a crazy large value for the number of
frames read when shutting down).

Signed-off-by: Charles Steinkuehler <charles@steinkuehler.net>
2021-11-08 23:55:11 +00:00
David Reid efa95d998f Remove the loop parameter from ma_data_source_read_pcm_frames(). 2021-10-13 18:51:17 +10:00
David Reid 80cdee58ae Add ma_data_source_set_looping().
This is used for giving the data source a hint as to whether or not
it'll be used in a looping situations. It's required for some data
sources which need to know about it's looping state for caching or
whatnot.
2021-10-12 19:48:09 +10:00
David Reid e78ce5e32a Add experimental support for setting an initial seek point for sounds.
The API for the resource management part of this commit may change.
2021-10-11 10:50:55 +10:00
David Reid 0edf83565e Expose seek tables for MP3 decoding. 2021-10-11 10:14:14 +10:00
David Reid 26db06adca Update device IO test. 2021-10-10 20:07:36 +10:00
David Reid debf3ac672 Fix some compilation errors with C89. 2021-10-10 15:40:32 +10:00
David Reid 42e949c0ff Fix some unused result warnings. 2021-10-10 15:33:05 +10:00
David Reid 64183b07e1 Add support for using native channel count for sound output channels. 2021-10-10 14:32:18 +10:00
David Reid 6e962ec588 Fix a compilation error on the Apple build. 2021-10-10 14:17:23 +10:00
David Reid 32271f6da3 Fix an error on older versions of GCC. 2021-10-10 14:10:04 +10:00
David Reid 4e29283025 Fix a bug where streamed data sources do not use custom backends. 2021-10-10 13:40:55 +10:00
David Reid 7a3d58ea0f Fix an underflow error when using continuous processing on a node. 2021-10-10 11:26:40 +10:00
David Reid 80611af3e4 Clean up some incompatible code. 2021-10-08 10:32:21 +10:00
David Reid e341251e8e Fix validation errors with LPF, HPF and BPF. 2021-10-08 10:25:38 +10:00
David Reid b5975a70e5 Fix compilation error with 32-bit GCC builds. 2021-10-04 12:03:24 +10:00
David Reid 2bd7693908 Silence some unused function warnings. 2021-10-04 11:25:58 +10:00
David Reid 7b50c136c3 Fix a bug in engine node resampling due to an invalid pointer offset. 2021-10-04 11:25:32 +10:00
David Reid 6319d2d977 Fix a typo. 2021-10-04 09:35:32 +10:00
David Reid 063be8c003 Fix compilation errors when certain compile time options are enabled. 2021-08-28 13:00:56 +10:00
David Reid fee3e69d93 Merge branch 'master' into dev-0.11 2021-08-22 19:14:08 +10:00
David Reid dbca7a3b44 Version 0.10.42 2021-08-22 19:12:59 +10:00
David Reid 2ef44507d4 Try fixing a few issues with the lock-free queue. 2021-08-22 10:20:28 +10:00
David Reid a08320e828 Merge branch 'dev' into dev-0.11 2021-08-22 10:02:28 +10:00
David Reid 04fe72010f Experimental fix for an hang when stopping devices.
Public issue https://github.com/mackron/miniaudio/issues/355
2021-08-22 09:09:43 +10:00
David Reid db8d96da0c Fix an infinite loop. 2021-08-18 21:15:04 +10:00
David Reid a80c5e5d60 Fix another copy/paste error. 2021-08-18 20:55:26 +10:00
David Reid 64e5b1b91a Fix a copy/paste error. 2021-08-18 20:54:33 +10:00
David Reid 8d5b3d16e4 Add some double-free detection to the slot allocator. 2021-08-18 20:51:34 +10:00
David Reid ce6108feff Use atomic loads when checking execution orders of jobs. 2021-08-18 20:26:43 +10:00
Steven Noonan 86029cde7c ma_slot_allocator_free: use atomic load on allocator count
Signed-off-by: Steven Noonan <steven@uplinklabs.net>
2021-08-18 18:18:32 +10:00
David Reid 0c22f75ef7 Fix a bug in the LOAD_DATA_BUFFER job. 2021-08-18 18:16:47 +10:00
David Reid 92bf37c8bb Fix a bug where volume is not applied correctly for output buses. 2021-08-17 19:08:22 +10:00
David Reid 2d76a9b352 Add release notes for version 0.11 2021-08-15 20:38:58 +10:00
David Reid 448a7c90ff Fix some -Wundef warnings. 2021-08-15 19:27:50 +10:00
David Reid f099c7b13e Merge branch 'dev' into dev-0.11 2021-08-15 16:40:12 +10:00
David Reid 5a5d523d09 Version 0.10.41 2021-08-15 16:39:54 +10:00
David Reid c43eac28f0 Update documentation. 2021-08-15 16:06:43 +10:00
David Reid c73a92d158 Update readme. 2021-08-14 19:21:58 +10:00
David Reid 24e16b5234 Minor change to wording in the readme. 2021-08-14 19:19:56 +10:00
David Reid d177cb5e60 Update readme. 2021-08-14 19:18:26 +10:00
David Reid 73fdf8486b Move external nodes out of the research folder. 2021-08-14 18:50:48 +10:00