Chris Robinson
5b2489c3e8
Convert AmbDecConf to DecoderConfig for loading
...
This keeps AmbDecConf uses confined to multi-channel panning initialization,
and avoids spreading conversions and maps all over.
2021-06-23 09:44:58 -07:00
Chris Robinson
2b7c446363
Support built-in 3D ambisonic decoders
2021-06-23 03:22:54 -07:00
Chris Robinson
d28cf80b6f
Allow querying ALC_ALL_DEVICES_SPECIFIER from loopback devices
...
They only return the default/driver name, since loopback devices don't have a
canonical name.
2021-06-22 03:25:31 -07:00
Chris Robinson
8f3148ba53
Don't allocate full buffer lines in each voice
...
There's now effectively a 16-channel limit for buffers (as determined by the
number of elements in DeviceBase::mSampleData). Any more than that are
ignored when mixing.
2021-06-21 09:04:33 -07:00
Chris Robinson
7584458ecd
Avoid mixing extraneous channels
2021-06-21 07:36:47 -07:00
Chris Robinson
1c5a6ad92b
Use a unique_ptr to hold raw byte memory
2021-06-21 03:54:49 -07:00
kcat
5b1d9030a1
Merge pull request #578 from alexey-lysiuk/coreaudio_channel_count
...
Fix getting of device channel count in CoreAudio backend
2021-06-21 03:40:16 -07:00
alexey.lysiuk
375838c473
Fix getting of device channel count in CoreAudio backend
...
AudioBufferList contains a variable length array of mNumberBuffers elements, so it should not be created with the default constructor like usual class instances.
Unfortunately, Apple developer site documentation is literally empty for this API. There is a bunch of comments in framework's header files.
Here is the correct usage of AudioBufferList pointer from Chromium: 008a1abc57/audio/mac/audio_manager_mac.cc (266)
There were occasional crashes because of memory corruption which was confirmed by address sanitizer
2021-06-21 13:24:45 +03:00
Chris Robinson
04a6e418d7
Fix some size types
2021-06-18 21:03:31 -07:00
Chris Robinson
a7d2e2974f
Initial attempt at CoreAudio playback enumeration
2021-06-18 20:55:00 -07:00
Chris Robinson
302b6f3ced
Avoid altering SrcBufferSize in each channel
2021-06-14 16:56:46 -07:00
Chris Robinson
2f16fc190f
Combine some checks
2021-06-14 01:51:04 -07:00
Chris Robinson
9c58ed73d3
Reorder some channel label indices
2021-06-13 21:45:42 -07:00
Chris Robinson
76a9fdae75
Use a unique_ptr to auto-free the jack ports list
2021-06-12 14:19:55 -07:00
Chris Robinson
7e32478327
Set the JACK output ports as terminal
...
Since there are no input ports associated with the output.
2021-06-12 12:54:31 -07:00
Chris Robinson
241107faeb
Give a name to a lambda
2021-06-11 13:43:01 -07:00
Chris Robinson
f5bcd12be1
Improve name duplication handling with JACK
...
If a custom device pattern matches an existing one, its name will be replaced.
A separate loop is used to check and handle duplicate display names.
2021-06-10 16:15:00 -07:00
Chris Robinson
debb932573
Add an option to mix directly in the JACK callback
2021-06-08 10:52:37 -07:00
Chris Robinson
58a9549a58
Handle the listener position separate from the rotation matrix
...
It's too unstable with larger vectors. Even when the source and listener
positions are the same, floating point precision can cause noticeable rounding
errors.
2021-05-25 14:08:16 -07:00
Chris Robinson
62e6ce6d73
Leave an artifact on AppVeyor for a DLL build
2021-05-21 19:08:34 -07:00
Chris Robinson
8d868ff33f
Fix setting the channel distance compensation buffers
2021-05-20 23:48:43 -07:00
Chris Robinson
0ec549ae7a
Fix short initial packet preparation in alffplay
2021-05-20 23:48:43 -07:00
kcat
4733c9fc37
Merge pull request #564 from halx99/patch-1
...
Improve cmake to handle tvOS
2021-05-13 15:14:11 -07:00
kcat
8324471b8a
Merge pull request #559 from tatokis/split-sse-sse2
...
Allow enabling SSE without SSE2
2021-05-13 15:13:00 -07:00
HALX99
2516fdee66
Handle tvOS case
2021-05-13 19:05:47 +08:00
HALX99
66ebc3dc4b
Update CMakeLists.txt
2021-05-13 18:53:26 +08:00
Chris Robinson
1d7ff54f7d
Update some comments in CMake
2021-05-13 01:46:09 -07:00
Chris Robinson
bab6e92980
Avoid shadowing a variable name
2021-05-13 01:44:06 -07:00
Chris Robinson
6aff0715a1
Don't fail fast on github CI
2021-05-13 01:44:06 -07:00
HALX99
44d58bc69c
Fix check_include_file return unexpected result ( #563 )
...
Don't overwrite existing CMAKE_TRY_COMPILE_PLATFORM_VARIABLES values.
2021-05-13 01:43:39 -07:00
Tasos Sahanidis
b40272d256
Allow enabling SSE without SSE2
2021-04-30 13:29:39 +03:00
Chris Robinson
2f0e37bc24
Add back some more missing includes
2021-04-27 23:03:24 -07:00
Chris Robinson
1195bba833
Add back a missing include
2021-04-27 19:46:33 -07:00
Chris Robinson
e3c0b60cc6
Rename alcontext.h and move some functions to context.cpp
2021-04-27 19:04:45 -07:00
Chris Robinson
3d8e705107
Move some functions to a more appropriate place
2021-04-27 17:01:27 -07:00
Chris Robinson
06dcfc3fcf
Rename alcmain.h to device.h
2021-04-27 16:40:22 -07:00
Chris Robinson
061148072f
Update include headers
...
Don't add alc/ to the include paths.
2021-04-27 16:04:54 -07:00
Chris Robinson
2571d9bbc4
Update some license notices
...
Permission to relicense was granted via email.
2021-04-27 11:56:29 -07:00
Chris Robinson
d06209ef5a
Update includes
2021-04-27 08:39:17 -07:00
Chris Robinson
ff380298e4
Move BufferStorage and Voice to core
2021-04-27 08:26:42 -07:00
Chris Robinson
99157f149f
Move ContextBase and VoiceChange to core
2021-04-27 08:04:09 -07:00
Chris Robinson
26c8c50c26
Partially implement an extension to hold sources on disconnect
...
Rather than stopping voices/sources when the device becomes disconnected, the
context can be set to leave them alone. As a consequence, their state will
remain as playing and they'll keep their last known sample offset indefinately.
For applications mindful of this behavior, it will allow resetting or reopening
the device to reconnect and automatically resume where it left off.
2021-04-26 20:25:24 -07:00
Chris Robinson
22a8ebff80
Move GetChannelIdxByName and clean up some more includes
2021-04-26 08:04:50 -07:00
Chris Robinson
2479483645
Move bformatdec to core
2021-04-25 18:08:08 -07:00
Chris Robinson
8d09d03ed3
Move async_event.h to core
2021-04-25 14:29:21 -07:00
Chris Robinson
0fe38c053d
Move some functions to core
...
And clean up more includes
2021-04-25 11:36:37 -07:00
Chris Robinson
9b65ca4556
More include cleanup
2021-04-24 15:52:53 -07:00
Chris Robinson
440ce71dce
Move GetHFOrderScales to a more appropriate place
2021-04-24 13:46:52 -07:00
Chris Robinson
f10cc1e1ac
Update some more includes
2021-04-24 12:09:18 -07:00
Chris Robinson
fc7d55be4b
Don't bother with al string types
2021-04-24 11:50:49 -07:00