aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Make an inline function to check for 2D ambisonic formatsChris Robinson2021-12-124-11/+11
|
* Avoid initializing the NFC filter for every voice channelChris Robinson2021-12-115-72/+61
| | | | | | It can be initialized once with the device's speaker distance since it won't change in between resets, then copied into the voice where it can be adjusted as needed.
* Add an internal Super Stereo formatChris Robinson2021-12-119-33/+64
| | | | | | | It's not available as an AL buffer format (yet) since I'm not sure how to expose it. Internally it seems fine as a separate channel configuration, but because OpenAL combines the channel configuration and sample type, a flag may work better there.
* Use a vector in BFormatDec instead of FlexArrayChris Robinson2021-12-102-5/+11
| | | | | | FlexArray would be better since it's not likely to use much memory for the array, but the std::unique_ptr makes BFormatDec a non-standard layout, causing GCC and Clang to complain.
* Remove unnecessary linesChris Robinson2021-12-101-3/+0
|
* Improve the 2-channel UHJ responseChris Robinson2021-12-094-4/+73
| | | | | | This attempts to correct for the differences needed for 2-channel UHJ's shelf filters given the output shelf filters. It's far from ideal, but better than nothing.
* Add a function for Super Stereo conversionsChris Robinson2021-12-092-0/+97
| | | | | | | a.k.a. Stereo Enhance. A common feature of UHJ decoders to take a plain stereo signal and generate a B-Format signal with variable width control, widening (or narrowing) the soundfield while maintaining a sharp central image.
* GitHub CI still doesn't support libpipewire-0.3-devChris Robinson2021-12-081-2/+0
|
* Adjust the crossover frequency for HRTF ambisonic decodingChris Robinson2021-12-081-0/+13
|
* Build with PipeWire with Linux CIChris Robinson2021-12-081-0/+2
|
* Update changelogChris Robinson2021-12-061-0/+2
|
* Don't clamp the distance with distance attenuation disabledChris Robinson2021-11-301-1/+0
|
* Slight update to the UHJ coefficientsChris Robinson2021-11-283-46/+46
| | | | | | | The extended precision of the encoder's 0.6512*X term was guesswork, with no real basis for it. Switch back to the original value until something better actually comes up. Also updates the decoder to account for the change in the encoder.
* Recognize PipeWire in alsoft-configChris Robinson2021-11-261-0/+3
|
* Avoid passing spans unnecessarilyChris Robinson2021-11-253-8/+8
|
* Don't assume the UhjDecoder::decode offset is 16-byte alignedChris Robinson2021-11-251-6/+6
| | | | It's not, it's MaxResamplerEdge which is currently 24.
* Use a base for the UhjEncoder/Decoder common propertiesChris Robinson2021-11-252-18/+16
|
* Return true from alcReopenDeviceSOFT if the new device openedChris Robinson2021-11-211-4/+29
|
* Slightly improve logging on WindowsChris Robinson2021-11-212-66/+7
| | | | | 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.
* Downgrade some ERRs to WARNsChris Robinson2021-11-212-3/+3
|
* Make the backend pointer part of ALCdevice instead of DeviceBaseChris Robinson2021-11-197-27/+34
|
* Consolidate some variable stateChris Robinson2021-11-172-52/+47
|
* Always lock the device state when querying device attributesChris Robinson2021-11-161-32/+10
|
* Handle SPA_CHOICE_None for sample rates from PipeWireChris Robinson2021-11-141-52/+59
|
* Report unexpected types for the sample rate from PipeWireChris Robinson2021-11-141-42/+44
|
* Workaround a GCC bug with noexcept(this->...)Chris Robinson2021-11-141-18/+25
|
* Support "enum" choices for sample rates with PipeWireChris Robinson2021-11-141-8/+48
|
* Update changelogChris Robinson2021-11-131-0/+49
|
* Update alsoft-configChris Robinson2021-11-112-17/+49
|
* Update some in-progress extension typesChris Robinson2021-11-103-7/+7
|
* Disable MSVC warning 4127Chris Robinson2021-11-081-1/+1
| | | | | | | "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.
* Add an extension to request stereo UHJ outputChris Robinson2021-11-082-8/+41
|
* Fix up some al::optional opsChris Robinson2021-11-081-6/+32
|
* Make al::optional constexprChris Robinson2021-11-071-80/+80
|
* Don't trace unused metadata properties and node typesChris Robinson2021-10-261-6/+0
| | | | | | | 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).
* Don't change the requested format when it's usable with WASAPIChris Robinson2021-10-251-19/+53
|
* Use a tri-state optional for the stereo output modeChris Robinson2021-10-244-20/+40
|
* Pass a parameter to aluInitRenderer to specify UHJ outputChris Robinson2021-10-233-23/+27
|
* Remove an unnecessary noexceptChris Robinson2021-10-231-7/+4
|
* Fix a double-releaseChris Robinson2021-10-231-2/+0
|
* Use a flag to indicate headphone-like outputChris Robinson2021-10-237-24/+25
|
* Don't reset the ambisonic layout and scale with stereo outputChris Robinson2021-10-231-5/+1
|
* Don't pass the whole decoder to InitDistanceCompChris Robinson2021-10-231-4/+4
|
* Fix the ambisonic scaling used by custom decodersChris Robinson2021-10-231-0/+1
|
* Remove some lingering mentions of surround51rearChris Robinson2021-10-213-10/+9
|
* Don't declare functions outside of where they're usedChris Robinson2021-10-212-82/+66
|
* Remove the last external uses of GetConfigValueChris Robinson2021-10-212-34/+41
|
* Add more noexceptChris Robinson2021-10-141-8/+8
|
* Properly noexcept the destroy methodsChris Robinson2021-10-141-5/+6
|
* Fix cone angle calculation (#605)Devin Braune2021-10-141-1/+1
|