aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Clean up some unnecessary includesChris Robinson2019-10-023-17/+7
|
* Clean up some ALfloat -> floatChris Robinson2019-10-026-71/+65
|
* Move ALvoice from alu.h to a separate headerChris Robinson2019-10-029-326/+352
|
* Move a couple types to the source they're used inChris Robinson2019-10-022-6/+7
|
* Rename mixvoice.cpp to voice.cppChris Robinson2019-10-022-1/+1
|
* Don't inline the utf8 convertersChris Robinson2019-10-013-35/+41
|
* Make sure the temporary HRIRs are properly alignedChris Robinson2019-10-011-1/+1
|
* Check for librt earlierChris Robinson2019-10-011-8/+8
|
* Silence some warnings from GCC in the routerChris Robinson2019-10-011-4/+4
|
* Use al::getenv to get the router env varsChris Robinson2019-10-011-42/+40
|
* Remove an unnecessary functionChris Robinson2019-10-011-9/+5
|
* Link the examples with librt if it existsChris Robinson2019-10-011-2/+12
|
* Add some allocator fields GCC 6.3 seems to wantChris Robinson2019-10-011-0/+6
|
* Update the changelogChris Robinson2019-09-301-3/+13
|
* Clear the HRTF state values on allocationChris Robinson2019-09-301-1/+1
|
* Avoid infs/nans in the crest detectorChris Robinson2019-09-301-2/+3
| | | | | | It needs to be investigated why the rendered mix sometimes has such large sample values when starting, but the compressor/limiter shouldn't generate NaNs because of it.
* Separate a couple assignments from conditionalsChris Robinson2019-09-302-2/+4
|
* Remove noexcept from a function that explicitly throwsChris Robinson2019-09-301-1/+2
|
* Repack the bsinc resamplers coefficientsChris Robinson2019-09-294-33/+34
| | | | | | This puts the base coefficients and the phase deltas next to each other. This improves caching, as the base and phase deltas are always used together while the scales are only used for the non-fast versions.
* Modify the bsinc resamplerChris Robinson2019-09-292-4/+4
| | | | | Readjusted the bsinc12 cutoff back to -60dB. Also increased the filter's phase count.
* Use using to avoid extraneous template instantiationsChris Robinson2019-09-291-2/+2
|
* Silence an MSVC warningChris Robinson2019-09-281-1/+5
|
* Check MAX_RESAMPLER_PADDING properly to ensure it's large enoughChris Robinson2019-09-282-4/+4
|
* Make the BSincTables constexpr in an anonymous namespaceChris Robinson2019-09-282-3/+4
|
* Make MAX_RESAMPLER_PADDING specify the total paddingChris Robinson2019-09-287-27/+30
|
* Don't let a function end without a returnChris Robinson2019-09-281-7/+8
|
* Use FastBSinc24 for WASAPI and CoreAudio captureChris Robinson2019-09-282-2/+2
| | | | Given a fixed rate, there's no downside to the fast version.
* Combine two function calls into oneChris Robinson2019-09-284-111/+108
|
* Redo resampler strings to be saferChris Robinson2019-09-281-18/+33
| | | | | Now the name is guaranteed to match the type, and to be ordered as the enum declares.
* Add "fast" variants for the bsinc resamplersChris Robinson2019-09-287-10/+26
| | | | | | This simply omits the scale factor from the filter, similar to how up-sampling does. The consequence of this is less smooth transitions when ramping the pitch while down-sampling, but otherwise behaves fine.
* Remove the unnecessary FRACTIONONE from bsincgenChris Robinson2019-09-281-11/+6
|
* Implement a "fast" bsinc pathChris Robinson2019-09-268-6/+135
| | | | | | | | | | This takes advantage of the fact than when increment <= 1 (when not down- sampling), the scale factor is always 0. As a result, the scale and scale-phase deltas never contribute to the filtered output. Removing those multiply+add operations cuts half of the work done by the inner loop. Sounds that do need to down-sample (when played with a high pitch, or is 48khz on 44.1khz output, for example), still go through the normal bsinc process.
* Use a span for holding the source handlesChris Robinson2019-09-251-39/+51
|
* Avoid extraneous parametersChris Robinson2019-09-253-19/+17
|
* Use blended HRIRs for the B-Format decodeChris Robinson2019-09-243-70/+107
|
* Fix unsigned 8-bit buffersChris Robinson2019-09-241-1/+1
|
* Use an array to match the HRTF rendering methodChris Robinson2019-09-241-17/+20
|
* Only build ex-common as neededChris Robinson2019-09-241-8/+7
|
* Add a missing header for AndroidChris Robinson2019-09-231-0/+1
|
* Use istream for makemhr inputChris Robinson2019-09-234-192/+198
|
* Use a unique_ptr to auto-free MYSOFA_HRTFChris Robinson2019-09-231-47/+32
|
* Update changelogChris Robinson2019-09-221-1/+1
|
* Fix a couple more conversion warningsChris Robinson2019-09-221-6/+6
|
* Make the resampler type an enum classChris Robinson2019-09-228-36/+37
|
* Move the ifstream wrapper to commonChris Robinson2019-09-228-209/+228
|
* Remove large file macrosChris Robinson2019-09-223-61/+0
| | | | | Large file offsets aren't being utilized, and C++ seems to use to 64-bit offsets anyway.
* Avoid storing an integer in a pointerChris Robinson2019-09-211-3/+6
| | | | | | C++ does not guarantee that, given an int of sufficient size, converting int->ptr->int will result in the original value. A pointer may have more than one integer representation. Only ptr->int->ptr round trips are well-defined.
* Split some code into separate functionsChris Robinson2019-09-211-128/+126
|
* Restructure the changelog updatesChris Robinson2019-09-211-25/+26
|
* Make the buffer frequency unsignedChris Robinson2019-09-213-7/+6
|