aboutsummaryrefslogtreecommitdiffstats
path: root/Alc
Commit message (Collapse)AuthorAgeFilesLines
* Increase the max pitch to 255Chris Robinson2015-09-262-3/+3
| | | | | | | Note that this is the multiple above the device sample rate, rather than the source property limit. It could theoretically be increased to 511 by testing against UINT_MAX instead of INT_MAX, since the increment and positions are using unsigned integers. I'm just being paranoid about overflows.
* Use the macros to allocate the wrapper backendsChris Robinson2015-09-241-6/+2
|
* Remove unneeded clampingChris Robinson2015-09-241-24/+16
|
* Loop over the gain values only onceChris Robinson2015-09-241-8/+9
|
* Return the number of properties writtenChris Robinson2015-09-241-1/+1
|
* Use a local var instead of multiple double-dereferencingChris Robinson2015-09-241-12/+13
|
* Fix B-Format HRTF decodingChris Robinson2015-09-232-6/+9
|
* Use N3D scaling instead of FuMaChris Robinson2015-09-233-99/+107
|
* Get rid of ALCdevice_GetLatencyChris Robinson2015-09-211-5/+0
|
* Allow the hrtf_tables option to be device-specificChris Robinson2015-09-203-13/+15
|
* Disable mmdevapi capture and update changelogChris Robinson2015-09-181-1/+6
| | | | | | | Unfortunately mmdevapi does not do channel remixing or resampling, even for capture, so the device can only be opened in the mode it's configured for. For now, fallback to dsound or winmm to get the conversion until we can do it ourselves.
* Fix updating listener params when forcing updatesChris Robinson2015-09-182-65/+47
|
* Add missing enum valuesChris Robinson2015-09-171-0/+11
| | | | Spotted by Xavier Bouchoux.
* Return the data file handle on Windows if it was openedChris Robinson2015-09-161-1/+1
|
* Rename F_2PI to F_TAUChris Robinson2015-09-136-10/+10
|
* Update properties and clear wet buffers before mixing/processingChris Robinson2015-09-131-52/+69
|
* Append "on OpenAL Soft" to mmdevapi, dsound, and winmm device namesChris Robinson2015-09-103-32/+46
| | | | | Would be nicer to have a more backend-agnostic method of doing this, Perhaps even also only when the router is being used.
* Set both BS2B parameters at onceChris Robinson2015-09-082-19/+7
|
* Explicitly convert to int in the aluF2I/S/B functionsChris Robinson2015-09-071-9/+16
|
* Avoid setting an HRTF-compatible format when it's disabledChris Robinson2015-09-051-4/+4
|
* Don't store the HRTF request mode in the device flagsChris Robinson2015-09-051-28/+30
|
* Set a proper HRTF status when non-stereo output is usedChris Robinson2015-09-051-0/+4
|
* Specify the pa_channel_map directly instead of through a stringChris Robinson2015-09-041-30/+43
|
* Change the hrtf config option to expect auto/true/false instead of a boolChris Robinson2015-09-041-9/+24
|
* Make option and block names case-sensitiveChris Robinson2015-09-041-1/+1
| | | | | This is to avoid any issues with device names that can be case-sensitive, and strcasecmp not working properly for non-ASCII-7 uppercase characters.
* Reverse the device and block names for device-specific optionsChris Robinson2015-09-041-1/+1
|
* Use the correct device name for PulseAudio tooChris Robinson2015-09-031-10/+24
| | | | | Like mmdevapi. duplicate device names will have a '#2' or such appended, so the device's reported name may be incorrect.
* Replace another vector loop with VECTOR_FIND_IFChris Robinson2015-09-031-14/+11
|
* Use the correct device name when opening a device by nameChris Robinson2015-09-031-2/+8
| | | | | Duplicate device names will have a '#2' or such appended, so the device's reported name may be incorrect.
* Allow '#' in config block namesChris Robinson2015-08-281-8/+19
| | | | Since some devices may have it appended.
* Allow for device-specific config valuesChris Robinson2015-08-2813-77/+92
|
* Use ACN ordering for ambisonics coefficients arraysChris Robinson2015-08-284-93/+169
| | | | | | Note that it still uses FuMa scalings internally. Coefficients loaded from config files specify if they're FuMa (in both ordering and scaling) or N3D, and will get reordered or rescaled as needed.
* Avoid temporary vector objectsChris Robinson2015-08-241-9/+13
|
* Revert "Fix B-Format rotation"Chris Robinson2015-08-241-3/+3
| | | | | | | This reverts commit 7ffb9b3056ab280d5d9408fd023f3cfb370ed103. It was behaving as appropriate before (orienting left did pan it left for the listener), I was apparently just misinterpreting the matrix.
* Fix B-Format rotationChris Robinson2015-08-231-3/+3
| | | | | | | The rotation erroneously specified the orientation of the source relative to the sound field, whereas it should be the orientation of the sound field *and* source relative to the listener. So now when the source is oriented left, the front of the sound field is to the left of the listener.
* Minor reformatingChris Robinson2015-08-221-31/+32
|
* Don't explicitly store first-order coefficientsChris Robinson2015-08-181-60/+114
| | | | | | | It seems a simple scaling on the coefficients will allow first-order content to work with second- and third-order coefficients, although obviously not with any improved locality. That may be something to look into for the future, but this is good enough for now.
* Set the WAVEFORMATEX cbSize field for mmdevapi captureChris Robinson2015-08-181-0/+1
|
* Define MixHrtf directly instead of through a SUFFIX macroChris Robinson2015-08-154-19/+6
|
* Fix handling of PulseAudio devices that have the same descriptionChris Robinson2015-08-141-10/+44
|
* Also recognize "DirectSound" and "MMSYSTEM" on WindowsChris Robinson2015-08-141-3/+5
|
* Recognize "DirectSound3D" as a device name on WindowsChris Robinson2015-08-131-1/+8
|
* Wait for the OpenSL buffer queue to empty when stoppingChris Robinson2015-08-131-1/+10
|
* Allow specifying ALC_DONT_CARE_SOFT for ALC_HRTF_SOFTChris Robinson2015-07-061-16/+23
| | | | | ALC_FALSE now indicates explicitly no HRTF mixing, while ALC_DONT_CARE_SOFT is autodetect.
* Change source radius behaviorChris Robinson2015-07-051-19/+33
| | | | | | | | | For sources with a non-0 radius: When distance <= radius, factor = distance/radius*0.5 When distance > radius, factor = 1 - asinf(radius/distance)/PI Also, avoid using Position after calculating the localized direction and distance.
* Update a couple commentsChris Robinson2015-07-042-7/+5
|
* Check for duplicate device names in the mmdevapi backendChris Robinson2015-06-301-1/+27
|
* Use the lockless ringbuffer for mmdevapi captureChris Robinson2015-06-301-8/+9
| | | | | The backend's capture funcs are already called while under a lock, so multiple threads shouldn't be able to read from it at once.
* Double check the mmdevapi capture formatChris Robinson2015-06-071-1/+23
| | | | | This isn't a real solution, but it should get IAudioClient_IsFormatSupported to stop failing.
* Add a macro to simplify allocating and constructing an objectChris Robinson2015-05-1811-117/+17
|