aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Trace PulseAudio's active portChris Robinson2014-11-241-2/+5
|
* Make CalcHrtfDelta more genericChris Robinson2014-11-243-39/+40
|
* Move the voice's last position and gain out of the Hrtf containerChris Robinson2014-11-242-12/+13
|
* Rename step to stepsChris Robinson2014-11-241-4/+4
|
* Use a macro to reduce code duplicationChris Robinson2014-11-231-14/+12
|
* Avoid using ALCdevice_Lock and ALCdevice_Unlock unnecessarilyChris Robinson2014-11-231-12/+12
|
* Update a commentChris Robinson2014-11-231-3/+3
|
* Set headphones when pulse reports using the headphones portChris Robinson2014-11-231-0/+3
|
* Add a boolean to specify if a device is headphonesChris Robinson2014-11-232-1/+5
|
* Swap delta and step, remove double semicolonsChris Robinson2014-11-231-15/+15
|
* Remove unused channel enumsChris Robinson2014-11-232-4/+0
|
* Remove the cube+diamond virtual layoutChris Robinson2014-11-232-52/+8
|
* Add an option for a simpler virtual channel setupChris Robinson2014-11-231-21/+53
| | | | | | With HRTF mixing, certain things are mixed to virtual channels to be filtered with HRTF later. This allows for using an 8-channel cube instead of a 14- channel cube+diamond.
* Partially revert "Use a different method for HRTF mixing"Chris Robinson2014-11-2313-32/+520
| | | | | | | | | | | | The sound localization with virtual channel mixing was just too poor, so while it's more costly to do per-source HRTF mixing, it's unavoidable if you want good localization. This is only partially reverted because having the virtual channel is still beneficial, particularly with B-Format rendering and effect mixing which otherwise skip HRTF processing. As before, the number of virtual channels can potentially be customized, specifying more or less channels depending on the system's needs.
* Handle loopback devices when deciding to use HRTFChris Robinson2014-11-231-20/+18
|
* Remove a couple unnecessary tracesChris Robinson2014-11-221-2/+0
|
* Attempt to use BS2B when using headphones without HRTFChris Robinson2014-11-222-21/+23
|
* Update some config descriptionsChris Robinson2014-11-221-5/+8
|
* Document the stereo-mode config optionChris Robinson2014-11-221-0/+5
|
* Rework HRTF decision logicChris Robinson2014-11-223-36/+64
| | | | | | This way takes into account a new stereo-mode config option, which when set to "headphones" will default to using HRTF. Eventually the device will also be able to specify if headphones are being used.
* Remove an unused macroChris Robinson2014-11-221-3/+0
|
* Rename Voice's NumChannels to OutChannelsChris Robinson2014-11-223-8/+8
|
* Only update the necessary channelsChris Robinson2014-11-221-2/+2
|
* Mix DirectChannel sources to the non-virtual channel buffersChris Robinson2014-11-221-1/+18
|
* Store the number of output channels in the voiceChris Robinson2014-11-223-1/+4
|
* Remove an unnecessary union containerChris Robinson2014-11-223-10/+8
|
* Move a warning check earlierChris Robinson2014-11-221-8/+8
|
* Use a different method for HRTF mixingChris Robinson2014-11-2215-558/+198
| | | | | | | | | | | | | | | | | | | | | | | This new method mixes sources normally into a 14-channel buffer with the channels placed all around the listener. HRTF is then applied to the channels given their positions and written to a 2-channel buffer, which gets written out to the device. This method has the benefit that HRTF processing becomes more scalable. The costly HRTF filters are applied to the 14-channel buffer after the mix is done, turning it into a post-process with a fixed overhead. Mixing sources is done with normal non-HRTF methods, so increasing the number of playing sources only incurs normal mixing costs. Another benefit is that it improves B-Format playback since the soundfield gets mixed into speakers covering all three dimensions, which then get filtered based on their locations. The main downside to this is that the spatial resolution of the HRTF dataset does not play a big role anymore. However, the hope is that with ambisonics- based panning, the perceptual position of panned sounds will still be good. It is also an option to increase the number of virtual channels for systems that can handle it, or maybe even decrease it for weaker systems.
* Balance the left and right channels for quad outputChris Robinson2014-11-211-2/+2
|
* Reformat a couple linesChris Robinson2014-11-211-10/+8
|
* Initialize panning after setting up HRTFChris Robinson2014-11-211-5/+5
|
* Allocate the DryBuffer dynamicallyChris Robinson2014-11-213-2/+16
|
* Only warn when no data file could be openedChris Robinson2014-11-191-5/+2
|
* Align UpdateSize for Neon, tooChris Robinson2014-11-171-1/+1
|
* Don't force UpdateSize to a multiple of 4 after buffer metrics were setChris Robinson2014-11-171-2/+0
|
* Always get the pulseaudio sink info on device resetChris Robinson2014-11-171-16/+14
|
* Mark a function as constChris Robinson2014-11-151-1/+1
|
* Remove the unused angle and elevation from the device channel configChris Robinson2014-11-152-54/+33
|
* Slightly increase the ambient gain volumeChris Robinson2014-11-151-1/+8
|
* Interpolate directional reverb gains with ambient based on vector lengthChris Robinson2014-11-151-4/+23
|
* Add a method to convert channel enums to a label stringChris Robinson2014-11-151-62/+64
|
* Don't bother with LFE in the channel setup, set the values explicitlyChris Robinson2014-11-121-90/+75
|
* Add a toolchain for Android cross-compilingChris Robinson2014-11-101-0/+39
|
* Add the ability to use custom output channel coefficientsChris Robinson2014-11-101-0/+186
| | | | | I'm not sure exactly how I want to do this yet, but this is a good starting point.
* Don't use the device lock/unlock wrappers needlesslyChris Robinson2014-11-081-4/+4
|
* Remove the unused layout config optionsChris Robinson2014-11-081-19/+0
|
* Remove the unused wide-stereo optionChris Robinson2014-11-083-15/+0
|
* Reorder some options in the config sampleChris Robinson2014-11-081-41/+41
|
* Allow selecting the 5.1-rear channel config from the config fileChris Robinson2014-11-083-2/+4
|
* Remove the long-deprecated 'format' config optionChris Robinson2014-11-081-49/+0
|