Chris Robinson
d5707b3184
Use a base for the UhjEncoder/Decoder common properties
2021-11-25 19:53:52 -08:00
Chris Robinson
08a4e8a6b2
Return true from alcReopenDeviceSOFT if the new device opened
2021-11-21 23:22:04 -08:00
Chris Robinson
3ef4bffaf9
Slightly improve logging on Windows
...
The characters won't display properly if the system codepage isn't UTF-8, but
at least it shouldn't cut the line off prematurely.
2021-11-21 21:21:46 -08:00
Chris Robinson
834800c817
Downgrade some ERRs to WARNs
2021-11-21 20:29:20 -08:00
Chris Robinson
0c99a6b316
Make the backend pointer part of ALCdevice instead of DeviceBase
2021-11-19 20:04:10 -08:00
Chris Robinson
6e2c1b8431
Consolidate some variable state
2021-11-17 19:08:22 -08:00
Chris Robinson
b43fd6dca7
Always lock the device state when querying device attributes
2021-11-16 16:44:58 -08:00
Chris Robinson
7062de0337
Handle SPA_CHOICE_None for sample rates from PipeWire
2021-11-14 12:47:06 -08:00
Chris Robinson
eac427dff7
Report unexpected types for the sample rate from PipeWire
2021-11-14 11:43:33 -08:00
Chris Robinson
bdc9d6955f
Workaround a GCC bug with noexcept(this->...)
2021-11-14 05:59:06 -08:00
Chris Robinson
cf85ffd22f
Support "enum" choices for sample rates with PipeWire
2021-11-14 05:58:39 -08:00
Chris Robinson
3b9c831c30
Update changelog
2021-11-13 09:30:42 -08:00
Chris Robinson
5eb93f6c74
Update alsoft-config
2021-11-11 22:40:10 -08:00
Chris Robinson
bbff1efa2a
Update some in-progress extension types
2021-11-10 01:21:49 -08:00
Chris Robinson
35348869a9
Disable MSVC warning 4127
...
"conditional expression is constant", which C++14 can't do anything about since
'if constexpr' was added in C++17. The checks are necessary since it's dealing
with a templatized type, or a compile-time non-macro constant for the target
system's endian order.
2021-11-08 21:16:33 -08:00
Chris Robinson
e3168c9112
Add an extension to request stereo UHJ output
2021-11-08 16:56:05 -08:00
Chris Robinson
ad3d82c3f4
Fix up some al::optional ops
2021-11-08 16:48:33 -08:00
Chris Robinson
c06abe2dfe
Make al::optional constexpr
2021-11-07 01:24:57 -08:00
Chris Robinson
b81fa0dc90
Don't trace unused metadata properties and node types
...
As useful as it may sometimes be to see what's being provided, at least under
kwin_wayland a not-insignificant number of video-related nodes and metadata
properties are sent through normal use of the system (most notably when
hovering over the taskbar to see window thumbnails).
2021-10-26 09:40:10 -07:00
Chris Robinson
4de789ba68
Don't change the requested format when it's usable with WASAPI
2021-10-25 06:37:48 -07:00
Chris Robinson
49a36334bd
Use a tri-state optional for the stereo output mode
2021-10-24 11:51:39 -07:00
Chris Robinson
096bed35fa
Pass a parameter to aluInitRenderer to specify UHJ output
2021-10-23 11:37:46 -07:00
Chris Robinson
837652624b
Remove an unnecessary noexcept
2021-10-23 08:14:30 -07:00
Chris Robinson
1a448b2e92
Fix a double-release
2021-10-23 07:57:17 -07:00
Chris Robinson
d0e5e138e2
Use a flag to indicate headphone-like output
2021-10-23 07:51:06 -07:00
Chris Robinson
0e93fc53f4
Don't reset the ambisonic layout and scale with stereo output
2021-10-23 05:48:47 -07:00
Chris Robinson
d5dc2828bf
Don't pass the whole decoder to InitDistanceComp
2021-10-23 03:57:49 -07:00
Chris Robinson
aa92c6c0a8
Fix the ambisonic scaling used by custom decoders
2021-10-23 03:24:51 -07:00
Chris Robinson
f963a2c543
Remove some lingering mentions of surround51rear
2021-10-21 07:38:57 -07:00
Chris Robinson
15827b2887
Don't declare functions outside of where they're used
2021-10-21 06:03:37 -07:00
Chris Robinson
e70f3e97b3
Remove the last external uses of GetConfigValue
2021-10-21 05:54:03 -07:00
Chris Robinson
ed3e40c22d
Add more noexcept
2021-10-14 12:44:05 -07:00
Chris Robinson
8305973e7a
Properly noexcept the destroy methods
2021-10-14 12:44:05 -07:00
Devin Braune
0e9ce1aa83
Fix cone angle calculation ( #605 )
2021-10-14 11:18:54 -07:00
Chris Robinson
6a3c4c09f8
Explicitly declare optional_storage's default constructor
...
This should help MSVC
2021-10-10 05:12:24 -07:00
Chris Robinson
92b65fa15f
Avoid manually prefixing EventType_ enums
...
And use a better fitting type that matches how it's used
2021-10-10 05:07:31 -07:00
Chris Robinson
87e88e97e2
Try again to satisfy MSVC
2021-10-09 08:41:08 -07:00
Chris Robinson
85d98e32ed
Explicitly initialize the first union member
2021-10-09 05:56:39 -07:00
Chris Robinson
2d3b501fd8
Add more noexcept when possible
...
And try to fix MSVC missing a constructor
2021-10-09 05:30:16 -07:00
Chris Robinson
c893ca0491
Always define optional::operator=.
...
MSVC doesn't seem to like using enable_if for special member functions.
2021-10-09 03:39:33 -07:00
Chris Robinson
720bedb455
Make optional more trivial when possible
2021-10-08 18:08:48 -07:00
Chris Robinson
e3b8f8fe27
Make a construct_at method amd use it
2021-10-08 11:05:36 -07:00
Chris Robinson
8da4eaff29
Add the gnu::malloc attribute to al_malloc and al_calloc
...
This helps the compiler know the returned pointer won't alias another pointer
or existing object, since it's a fresh allocation, and is unlikely to return
nullptr.
2021-10-07 13:37:47 -07:00
Chris Robinson
c3e2fbef49
Avoid double indirection to access spa_data::datas
2021-10-07 13:36:33 -07:00
Chris Robinson
86abe8dca2
Fix the render step value for WinMM
2021-10-05 03:02:45 -07:00
Chris Robinson
90cfd090d6
Fix inverted macro check
2021-10-04 00:08:39 -07:00
Chris Robinson
1a0287e2a0
Don't call OutputDebugStringW in Release builds
2021-10-03 23:49:06 -07:00
Chris Robinson
f92cc479d8
Silence some static analysis warnings
2021-10-03 08:02:57 -07:00
Chris Robinson
53d9033ec7
Remove a couple unnecessary variables
2021-10-03 06:48:00 -07:00
Chris Robinson
38d3ea3501
Make simpler likely/unlikely functions and use them in some places
2021-10-03 06:41:14 -07:00