aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Use an 8-channel cube for HRTF's virtual format.Chris Robinson2016-02-205-122/+55
| | | | | | There were phase issues caused by applying HRTF directly to the B-Format channels, since the HRIR delays were all averaged which removed the inter-aural time-delay, which in turn removed significant spatial information.
* Reorganize makehrtf's File I/O functionsChris Robinson2016-02-191-92/+109
|
* Reorganize and reformat makehrtf codeChris Robinson2016-02-181-1795/+2075
|
* Cleanup makehrtf type definitionsChris Robinson2016-02-181-85/+70
|
* Fix default makehrtf output nameChris Robinson2016-02-181-139/+169
| | | | And clean up the parameter processing.
* Allocate each HRTF as a single chunkChris Robinson2016-02-161-21/+39
|
* Remove a dead assignmentChris Robinson2016-02-161-1/+0
|
* Only calculate steps for the used coefficientsChris Robinson2016-02-141-1/+1
|
* Calculate HRTF stepping params right before mixingChris Robinson2016-02-1412-304/+99
| | | | | This means we track the current params and the target params, rather than the target params and the stepping. This closer matches the non-HRTF mixers.
* Calculate channel gain stepping just before mixingChris Robinson2016-02-146-256/+165
|
* Don't pass the channel count to GetBFormatHrtfCoeffsChris Robinson2016-02-093-8/+6
| | | | Since it's hard-coded anyway, there's no need to specify it.
* Avoid underflow in alcnd_timedwait if the time point is already passedChris Robinson2016-02-071-6/+22
|
* Replace some CreateEvent calls with CreateEventWChris Robinson2016-02-073-9/+9
|
* Add special HRTF handling for reverbChris Robinson2016-02-061-1/+77
| | | | | | | This is pretty hacky. Since HRTF normally renders to B-Format with two "extra" channels for the real stereo output, the panning interpolates between a panned reverb channel on B-Format, and two non-panned reverb channels on stereo output, given the panning vector length.
* Only apply the +3dB reverb gain boost to the ambient response.Chris Robinson2016-02-061-2/+1
|
* Avoid an extra sample of delay in the reverb modulatorChris Robinson2016-02-051-4/+6
|
* Remove an unnecessary variable and move duplicate code to a common spotChris Robinson2016-02-051-37/+23
|
* Don't explicitly check for LFEChris Robinson2016-02-051-16/+0
| | | | It's going to be set to 0 gain anyway
* Boost the direct-pan reverb to better match the expected volumeChris Robinson2016-02-051-0/+2
| | | | | Hopefully. Would be nice to have a reference implementation for this style of reverb to compare with.
* Update a couple outdated commentsChris Robinson2016-02-051-3/+1
|
* Apply the early and late reverb gains with the panning gainsChris Robinson2016-02-051-26/+28
|
* Better organize the reverb code into separate labeled sectionsChris Robinson2016-02-051-425/+442
|
* Separate early and late reverb output for standard reverb tooChris Robinson2016-02-051-33/+27
|
* Modify how the four output reverb points are calculatedChris Robinson2016-02-051-40/+62
| | | | | For HRTF and B-Format output, the points no longer move but instead scale based on the desired panning direction.
* Try to map reverb outputs directly to output channelsChris Robinson2016-02-011-2/+77
| | | | | | | | | HRTF and B-Format output still need to use virtual panning directions, but the reverb works better when it outputs directly to an output channel. Ambient and directional panning is used to properly mask and attenuate each output channel. Note that currently the "direct panning" output is quieter than it should be. Work is underway to attenuate the early reflections and late reverb better.
* Apply the main reverb gain with the panningChris Robinson2016-02-011-13/+12
|
* Fix an out of date commentChris Robinson2016-01-311-4/+2
|
* Rename ComputeBFormatGains to ComputeFirstOrderGainsChris Robinson2016-01-316-15/+15
|
* Make the source's buffer queue a singly-linked listChris Robinson2016-01-312-31/+27
|
* Properly silence the LFE input channel gain on the source sendsChris Robinson2016-01-301-0/+8
|
* Fix scaling for effect sends of B-Format sourcesChris Robinson2016-01-301-1/+10
|
* Make the modulator effect multichannelChris Robinson2016-01-291-22/+41
|
* Use separate modulator functions only for the waveformChris Robinson2016-01-291-56/+42
|
* Convert the equalizer effect to multichannelChris Robinson2016-01-291-33/+90
|
* Make the compressor effect multichannelChris Robinson2016-01-281-25/+58
|
* Mix to multichannel for effectsChris Robinson2016-01-287-64/+283
| | | | | | This mixes to a 4-channel first-order ambisonics buffer. With ACN ordering and N3D scaling, this makes it easy to remain compatible with effects that only care about mono input since channel 0 is an unattenuated mono signal.
* Pass a pointer to the input samples array for effect processingChris Robinson2016-01-2713-38/+44
|
* Avoid passing the device to SetChannelMapChris Robinson2016-01-271-24/+31
|
* Separate calculating ambisonic coefficients from the panning gainsChris Robinson2016-01-2515-89/+134
|
* Don't write one byte at a time for the wave writer on big endianChris Robinson2016-01-251-17/+19
|
* Release 1.17.2openal-soft-1.17.2Chris Robinson2016-01-241-1/+1
|
* Fix "signed and unsigned type in conditional expression" warningChris Robinson2016-01-241-1/+1
|
* Remove unneeded check for io.hChris Robinson2016-01-242-4/+0
|
* Clear SSE3 switch before testing if one's recognizedChris Robinson2016-01-241-0/+1
|
* Replace multiple fputc calls with one fwriteChris Robinson2016-01-231-6/+4
|
* Move a couple extern inline declarations to the othersChris Robinson2016-01-231-3/+2
|
* Reorder filterstate propertiesChris Robinson2016-01-234-68/+69
|
* Inline a couple filterstate methodsChris Robinson2016-01-232-27/+27
|
* Reorder some cmake checksChris Robinson2016-01-211-20/+19
|
* Lower the _POSIX_C_SOURCE and _XOPEN_SOURCE version requirementsChris Robinson2016-01-211-2/+2
|