David Reid
02bf2a9e5a
API CHANGE: Update ma_encoder_write_pcm_frames().
...
This updates ma_encoder_write_pcm_frames() to be consistent with
reading, where a result code is returned, and the number of frames
written is returned via an output parameter.
2021-07-18 10:41:04 +10:00
David Reid
7b65f3748a
Add some safety checks to data sources.
...
With this change, an error is now returned when the requested frame
count is zero. Two reasons for this:
1) It usually means there's an error in the higher level logic if
something is trying to read zero frames.
2) When no frames are read, MA_AT_END should be returned. However, if
the input frame count is also zero, it creates ambiguity as to
whether or not the data source is truly at the end.
2021-07-18 10:35:34 +10:00
David Reid
d7d8520c82
Merge branch 'dev-0.11' of https://github.com/mackron/miniaudio into dev-0.11
2021-07-18 09:45:32 +10:00
David Reid
cfb7020ae8
Add a null check to ma_free().
2021-07-18 09:45:14 +10:00
David Reid
1b42dbb10e
Move the engine API into the main library.
2021-07-18 08:00:17 +10:00
David Reid
b19f403ac2
Move the node graph into the main library.
2021-07-18 07:47:59 +10:00
David Reid
fa2fc03e1f
Move a compile time option into the implementation section.
2021-07-17 22:12:48 +10:00
David Reid
5b574e652b
Move resource manager into the main library.
2021-07-17 22:06:44 +10:00
David Reid
6effc9863a
Move async notifications into the main library.
2021-07-17 21:04:08 +10:00
David Reid
2bd5ddd645
Renaming and fix a bug with the splitter node.
2021-07-17 20:05:07 +10:00
David Reid
aae9a16cc3
Move some functions over to the main library.
2021-07-17 16:54:39 +10:00
David Reid
42d82c98cd
API CHANGE: Remove ma_clip_pcm_frames_f32().
2021-07-17 16:47:11 +10:00
David Reid
8ddac00d5c
Move some clipping functions into the main library.
2021-07-17 16:46:30 +10:00
David Reid
9fa4d9ea7f
Move ma_slot_allocator into the main library.
2021-07-17 16:38:06 +10:00
David Reid
711854647a
Move ma_fence into the main library.
2021-07-17 16:32:27 +10:00
David Reid
cc2b148598
Add support for configuring the size of the job queue.
...
This commit also decouples the job queue from the resource manager
which will make it easier to use in other areas if it ever comes up.
2021-07-17 14:47:30 +10:00
David Reid
0dc3e013f3
Fix a bug in ma_calculate_frame_count_after_resampling().
2021-07-17 13:36:32 +10:00
David Reid
49599adcaf
Decouple the slot allocator from the resource manager.
2021-07-17 13:27:54 +10:00
David Reid
503670532d
Properly namespace some tokens.
2021-07-17 12:38:38 +10:00
David Reid
faf3381f49
Update documentation for resource management.
2021-07-17 12:30:01 +10:00
David Reid
71909188f7
Merge branch 'dev' into dev-0.11
2021-07-17 12:25:09 +10:00
David Reid
36779c368b
PulseAudio: Enable the stop callback when a stream is suspended.
...
Public issue https://github.com/mackron/miniaudio/issues/341
2021-07-17 12:19:40 +10:00
David Reid
5dd8fbe9ad
Improvements to the main worker thread.
...
* If starting the backend fails, don't attempt to enter the data loop
* If stopping the backend fails, don't fire the stop callback.
2021-07-17 12:13:42 +10:00
David Reid
07e56c70cf
Core Audio: Try fixing a deadlock when switching devices.
...
Public issue https://github.com/mackron/miniaudio/issues/344
2021-07-17 11:23:01 +10:00
David Reid
af70f1bd5d
Update revision history.
2021-07-17 10:29:11 +10:00
David Reid
efcaa21981
Core Audio: Fix compilation errors.
2021-07-17 10:26:04 +10:00
David Reid
1982364b89
Minor rearrangement of some code.
2021-07-17 08:29:36 +10:00
David Reid
e13f00b336
Standardize some parameter names.
2021-07-16 19:40:33 +10:00
David Reid
9a7b9b8c38
API CHANGE: Remove ma_scale_buffer_size().
2021-07-16 19:38:30 +10:00
David Reid
b8079f2b61
Remove some unnecessary casts.
2021-07-16 19:36:11 +10:00
David Reid
36d74d0111
Move ma_copy_and_apply_volume_factor_per_channel_f32() into main file.
2021-07-16 19:35:24 +10:00
David Reid
7d16721626
Remove unused function.
2021-07-16 19:10:35 +10:00
David Reid
17fe34c105
Remove some old unused code.
2021-07-16 17:46:37 +10:00
David Reid
d93eaf22c1
Move ma_paged_audio_buffer into the main library.
2021-07-16 17:38:36 +10:00
David Reid
ebdc79ab6a
Merge branch 'master' into dev-0.11
2021-07-14 20:47:00 +10:00
David Reid
ef55f6741d
Merge branch 'dev'
2021-07-14 20:46:50 +10:00
David Reid
0f5cb7829d
Version 0.10.38
2021-07-14 20:46:38 +10:00
David Reid
922c95997e
PulseAudio: Experimental work on improving the stop callback.
...
Public issue https://github.com/mackron/miniaudio/issues/341
2021-07-14 18:49:17 +10:00
David Reid
2d63e2347a
Update revision history.
2021-07-14 17:33:03 +10:00
David Reid
6040956255
Fix an error where ma_log_level_to_string() is sometimes not compiled.
...
This was happening because ma_log_level_to_string() was only being
included when MA_DEBUG_OUTPUT is enabled.
2021-07-14 17:26:30 +10:00
David Reid
3a5bfa9f9b
Fix some strict C89 issues.
2021-07-14 17:20:49 +10:00
David Reid
1161e47ec7
Merge pull request #343 from Clownacy/dev
...
Fix `ma_log_postv` not returning anything under certain circumstances
2021-07-14 17:18:14 +10:00
Clownacy
f56ea20470
Restructure ma_log_postv to be more consistent
...
The `__STDC_VERSION__ >= 199901L` and the `_MSC_VER >= 1200` code
had different styles for handling errors, so I've made them match.
2021-07-13 23:35:41 +01:00
Clownacy
b65a117132
Fix function not returning anything
...
MSVC 6 was printing a warning about this.
2021-07-13 23:33:15 +01:00
David Reid
643c9c0860
Add support for disabling denormals on the audio thread.
...
This is configurable on a per-device basis. Denormals will be disabled
by default.
2021-07-13 20:27:17 +10:00
David Reid
b961cdf9be
API CHANGE: Standardize decoder read/seek callbacks.
2021-07-11 17:23:39 +10:00
David Reid
7bb96d8a3c
Fix a crash when initializing a decoder without a config.
2021-07-11 17:04:29 +10:00
David Reid
56202ced66
Fix a crash when initializing a decoder without a config.
2021-07-11 17:04:07 +10:00
David Reid
655c087651
Avoid some superfluous decoder backend initialization.
2021-07-11 17:01:25 +10:00
David Reid
8d47a9307f
Avoid some superfluous decoder backend initialization.
2021-07-11 17:00:56 +10:00