Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Don't use periphonic FOA when the HOA decoder is not periphonic | Chris Robinson | 2017-02-19 | 5 | -41/+55 |
| | |||||
* | Remove the sinc8 resampler option | Chris Robinson | 2017-02-19 | 6 | -286/+26 |
| | | | | | Perf shows less than 1 percent CPU difference from the higher quality bsinc resampler, but uses almost twice as much memory (a 128KB lookup table). | ||||
* | Always lock the device backend before calling aluMixData | Chris Robinson | 2017-02-18 | 11 | -50/+63 |
| | |||||
* | Return some device latency by default | Chris Robinson | 2017-02-18 | 1 | -2/+7 |
| | | | | | | | A device will never have 0 latency. OpenAL Soft itself uses a sample buffer length of UpdateSize*NumUpdates, and during playback will have about (NumUpdates-1) periods filled, more or less. Without a more accurate measurement from the playback system, this is better than reporting 0. | ||||
* | Use select() to wait for audio with OSS and Solaris | Chris Robinson | 2017-02-18 | 2 | -85/+137 |
| | |||||
* | Reorganize ALvoice members | Chris Robinson | 2017-02-15 | 2 | -88/+95 |
| | | | | | This places the Send[] array at the end of the struct, making it easier to handle dynamically. | ||||
* | Make ALsourceProps' Send array dynamically sized | Chris Robinson | 2017-02-14 | 3 | -20/+102 |
| | | | | | | ALsourceProps' Send[] array is placed at the end of the struct, and given an indeterminate size. Extra space is allocated at the end of each struct given the number of auxiliary sends set for the device. | ||||
* | Make the source state atomic | Chris Robinson | 2017-02-13 | 3 | -7/+8 |
| | | | | | Since it's modified by the mixer when playback is ended, a plain struct member isn't safe. | ||||
* | Put BsincState in a generic union | Chris Robinson | 2017-02-13 | 9 | -75/+75 |
| | |||||
* | Porperly check for and use __builtin_assume_aligned | Chris Robinson | 2017-02-13 | 2 | -12/+20 |
| | |||||
* | Clean up the bsinc mixer a bit | Chris Robinson | 2017-02-12 | 3 | -26/+28 |
| | |||||
* | Add NEON-enhanced resamplers | Chris Robinson | 2017-02-12 | 3 | -4/+294 |
| | |||||
* | Fix more uses of unsigned sizes and offsets | Chris Robinson | 2017-02-10 | 2 | -9/+9 |
| | |||||
* | Remove a couple context lock wrapper functions | Chris Robinson | 2017-02-07 | 1 | -3/+0 |
| | |||||
* | Properly capitalize NEON | Chris Robinson | 2017-02-07 | 1 | -1/+1 |
| | |||||
* | Clear trailing whitespace from the cpu features string | Chris Robinson | 2017-02-07 | 1 | -0/+5 |
| | |||||
* | Use the correct IID for the opensl buffer queue | Chris Robinson | 2017-02-07 | 1 | -2/+3 |
| | |||||
* | Convert the OpenSL backend to the new backend API | Chris Robinson | 2017-02-07 | 3 | -177/+434 |
| | | | | | This also removes the buffer queue callback's call to aluMixData, which could potentially block on a mutex. | ||||
* | Fix for NULL JNIEnv | Chris Robinson | 2017-02-05 | 2 | -5/+9 |
| | | | | Which can happen with native-only apps | ||||
* | Call getSystemService as a non-static function | Chris Robinson | 2017-02-03 | 1 | -4/+4 |
| | |||||
* | Android's AudioManager.getProperty(String) returns a String | Chris Robinson | 2017-02-02 | 1 | -1/+1 |
| | |||||
* | Replace more ALuint with ALsizei | Chris Robinson | 2017-01-29 | 3 | -15/+15 |
| | |||||
* | Fix late reverb low-pass filtering | Chris Robinson | 2017-01-29 | 1 | -1/+1 |
| | |||||
* | Use an all-pass series on each late reverb line | Chris Robinson | 2017-01-28 | 1 | -261/+396 |
| | | | | | | | | | This attempts to improve the smoothness of the late reverb decay by passing each line through multiple all-pass filters. Some work is still needed to work better in high-density and not-so-high-diffusion environments. This also removes the decay from the early reflections, since it's no longer continuous feedback. | ||||
* | Add more traces for the Java calls being made | Chris Robinson | 2017-01-27 | 1 | -7/+22 |
| | |||||
* | Round and clamp the scaled update count with opensl | Chris Robinson | 2017-01-27 | 1 | -1/+4 |
| | |||||
* | Try to use the system sample rate with Android | Chris Robinson | 2017-01-26 | 1 | -6/+56 |
| | |||||
* | Get the JavaVM handle on Android targets | Chris Robinson | 2017-01-26 | 2 | -0/+72 |
| | |||||
* | Improve the ambisonic upscaling methods | Chris Robinson | 2017-01-24 | 3 | -129/+174 |
| | | | | | | | | This now takes advantage of the differences seen in generated decoder matrices for first-order compared to second- and third-order, such that with the appropriate frequency-dependent scaling applied to first-order content, the result is identical with a higher-order decoder matrix compared to a first- order matrix for the same layout. | ||||
* | Fix coefficient counts for the built-in B-Format decoders | Chris Robinson | 2017-01-21 | 1 | -2/+2 |
| | |||||
* | Use a flat sqrt(2) scale for non-directional ambient gains | Chris Robinson | 2017-01-21 | 1 | -8/+3 |
| | |||||
* | Update the default basic B-Format decoders | Chris Robinson | 2017-01-21 | 1 | -47/+36 |
| | | | | This also converts them to ACN/N3D format. | ||||
* | Move the B-Format HRTF virtual speaker stuff to InitHrtfPanning | Chris Robinson | 2017-01-18 | 3 | -88/+76 |
| | | | | | This keeps the decoder matrices and coefficient mapping together for if it changes in the future. | ||||
* | Replace some ALvoid with void | Chris Robinson | 2017-01-18 | 2 | -3/+3 |
| | |||||
* | Use ALsizei in more places | Chris Robinson | 2017-01-18 | 5 | -55/+55 |
| | |||||
* | Pass the left and right buffers to the hrtf mixers directly | Chris Robinson | 2017-01-17 | 4 | -32/+36 |
| | |||||
* | Small update for the "virtual" Ambi2DDecoder coefficients | Chris Robinson | 2017-01-17 | 1 | -5/+5 |
| | |||||
* | More ALsizei, with the B-Format decoder | Chris Robinson | 2017-01-16 | 5 | -26/+35 |
| | |||||
* | Fix a couple hard-coded array sizes | Chris Robinson | 2017-01-16 | 1 | -2/+2 |
| | |||||
* | Use ALsizei in a few more places | Chris Robinson | 2017-01-16 | 4 | -9/+9 |
| | |||||
* | Use ALsizei and ALint for sizes and offsets with resamplers and filters | Chris Robinson | 2017-01-16 | 7 | -71/+71 |
| | |||||
* | Use ALsizei for sizes and offsets with the mixer | Chris Robinson | 2017-01-16 | 10 | -171/+171 |
| | | | | | | Unsigned 32-bit offsets actually have some potential overhead on 64-bit targets for pointer/array accesses due to rules on integer wrapping. No idea how much impact it has in practice, but it's nice to be correct about it. | ||||
* | Use second-order ambisonics for basic HRTF rendering | Chris Robinson | 2017-01-15 | 5 | -23/+93 |
| | | | | | | This should improve positional quality for relatively low cost. Full HRTF rendering still only uses first-order since the only use of the dry buffer there is for first-order content (B-Format buffers, effects). | ||||
* | Avoid using some LP types | Chris Robinson | 2017-01-10 | 1 | -5/+5 |
| | |||||
* | Use proper atomics in the OSS backend | Chris Robinson | 2017-01-10 | 1 | -17/+17 |
| | |||||
* | Hold Pulse's mainloop lock while calling capture functions | Chris Robinson | 2017-01-10 | 1 | -2/+10 |
| | | | | | | | Since commit c837484015e, the backend's lock is no longer implicitly held when calling capture functions. A separate mutex is used to ensure serial access, and its up to the backend to protect against races and reentrancy with the audio API. | ||||
* | One more update for the HRTF B-Format coefficients | Chris Robinson | 2017-01-09 | 1 | -14/+14 |
| | | | | These should better represent the pseudo-inverse matrices with N3D scaling. | ||||
* | Add missing AL_EFFECTSLOT_ properties for al(c)GetEnumValue | Chris Robinson | 2017-01-05 | 1 | -0/+5 |
| | |||||
* | Update the B-Format HRTF coefficients to use the pseudo-inverse matrix | Chris Robinson | 2017-01-04 | 1 | -26/+14 |
| | | | | | | It's hard to tell which is ultimately better, although this way does make the FOA output somewhat louder which will help when it's combined with direct HRTF rendering. | ||||
* | Avoid writing to the same buffer that's read from | Chris Robinson | 2016-12-23 | 1 | -36/+36 |
| | | | | Also clean up comment formatting a bit. |