Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Stub out an interface for a callback-driven buffer | Chris Robinson | 2020-02-16 | 2 | -0/+22 | |
| | ||||||
* | Update the MHR format | Chris Robinson | 2020-02-11 | 1 | -2/+177 | |
| | | | | | | | | This update removes the 16/24-bit sample type enum, now always being 24-bit (other than a very small size saving, there's no practical benefit to storing 16-bit samples). This also reverses the field storage, so no on-load fixup is needed, and stores the IR delays with 2 bits of sub-sample precision, allowing for slightly better timing (after resampling, blending, etc). | |||||
* | Use a triplet struct array instead of separate arrays | Chris Robinson | 2020-02-09 | 1 | -22/+22 | |
| | ||||||
* | Consistently use distant wavefronts for 0 distance | Chris Robinson | 2020-02-08 | 1 | -6/+3 | |
| | ||||||
* | Clear voice target gains earlier | Chris Robinson | 2020-02-08 | 1 | -11/+12 | |
| | ||||||
* | Use std::array and span for the HRTF delays | Chris Robinson | 2020-02-08 | 4 | -8/+6 | |
| | ||||||
* | Fix unreachable code warning | Aleš Gajdacz | 2020-02-08 | 1 | -1/+0 | |
| | ||||||
* | Make sure stereo angles are kept in-range. | Chris Robinson | 2020-01-31 | 1 | -3/+14 | |
| | ||||||
* | Try harder to find the closest HRIR for the B-Format decoder | Chris Robinson | 2020-01-26 | 1 | -16/+23 | |
| | ||||||
* | Fix the output channel count for the B-Format decoder | Chris Robinson | 2020-01-19 | 1 | -3/+3 | |
| | ||||||
* | Only sort active effect slots as needed | Chris Robinson | 2020-01-18 | 2 | -7/+25 | |
| | ||||||
* | Avoid an extraneous index map | Chris Robinson | 2020-01-15 | 3 | -18/+13 | |
| | ||||||
* | Make a couple helper methods to create BFormatDec | Chris Robinson | 2020-01-15 | 2 | -7/+19 | |
| | ||||||
* | Repack B-Format decoder fields | Chris Robinson | 2020-01-15 | 3 | -61/+63 | |
| | | | | This should better provide sequential access. | |||||
* | Transpose BFormatDec's matrices | Chris Robinson | 2020-01-14 | 2 | -65/+31 | |
| | | | | | This allows the band-split and output mix to happen together, rather than splitting all input channels first and then mixing them to output. | |||||
* | Clean up some formating | Chris Robinson | 2020-01-14 | 2 | -17/+19 | |
| | ||||||
* | Simplify appending delayed samples | Chris Robinson | 2020-01-14 | 1 | -6/+6 | |
| | ||||||
* | Signal the event handler only once per update | Chris Robinson | 2020-01-14 | 2 | -36/+40 | |
| | ||||||
* | Inline a couple ring buffer methods | Chris Robinson | 2020-01-14 | 2 | -17/+14 | |
| | ||||||
* | Get rid of an unnecessary struct | Chris Robinson | 2020-01-13 | 3 | -8/+4 | |
| | ||||||
* | Return immediately on error when loading HRTFs | Chris Robinson | 2020-01-13 | 1 | -48/+23 | |
| | ||||||
* | Make a separate function for duplicate code | Chris Robinson | 2020-01-13 | 1 | -52/+25 | |
| | ||||||
* | Use the Field and Elevation structs directly when loading | Chris Robinson | 2020-01-13 | 1 | -113/+113 | |
| | ||||||
* | Don't assume the total length of certain arrays | Chris Robinson | 2020-01-13 | 1 | -6/+6 | |
| | ||||||
* | Use a span for a fixed-size array reference | Chris Robinson | 2020-01-13 | 3 | -13/+7 | |
| | ||||||
* | Add missing include | Chris Robinson | 2020-01-12 | 1 | -0/+1 | |
| | ||||||
* | Scale the resampled HRTF delays if they exceed the max | Chris Robinson | 2020-01-12 | 1 | -18/+29 | |
| | ||||||
* | Warn when resampled HRIR delays get clamped | Chris Robinson | 2020-01-12 | 1 | -2/+16 | |
| | ||||||
* | Blend the whole IR for the interpolated HRIR | Chris Robinson | 2020-01-12 | 1 | -7/+4 | |
| | | | | | The SIMD mixers may use a few more elements beyond the irSize, so not limiting the blend to that size can slightly improve the quality for resampled HRIRs. | |||||
* | Fix JACK process callback handling | Chris Robinson | 2020-01-12 | 1 | -50/+48 | |
| | | | | | | The callback apparently can't be set after activation, but we can't allocate the ring buffer until after activation when the callback is already getting called. An ugly flag it is, then, I guess. | |||||
* | Don't allocate the ring buffer for JACK before activation | Chris Robinson | 2020-01-11 | 1 | -32/+20 | |
| | | | | | | | | | | | | | | It seems the JACK server can send buffer size change events during device reset and wait on it, which causes a failure since the change event can't be processed during a reset. It's otherwise impossible to safely disable the change event callback during a reset since the lock is already held and the callback can be waiting to acquire it. The only guarantee we seem to have is the event callback won't be invoked after jack_activate succeeds. So instead, the buffer size can be queried after jack_activate and the ring buffer allocated then, instead of using an event callback. This does mean the buffer size can change with a start() call, but it's better than a failure to start. | |||||
* | Make CreateRingBuffer a static RingBuffer method | Chris Robinson | 2020-01-10 | 13 | -23/+25 | |
| | ||||||
* | Fix blending for the right IR delay | Chris Robinson | 2020-01-08 | 1 | -1/+1 | |
| | ||||||
* | Make sure unassociated voices give back their update structs | Chris Robinson | 2020-01-08 | 1 | -25/+29 | |
| | ||||||
* | Make sure an unmixable source is properly stopped | Chris Robinson | 2020-01-08 | 1 | -1/+9 | |
| | ||||||
* | Avoid auto-releasing containers for the global device list | Chris Robinson | 2020-01-07 | 1 | -24/+30 | |
| | | | | | | If any are left open at process shutdown, it may try to clean them up, and subsequently close the device. This is dangerous to do at process exit, so don't. The app should have closed the device(s) prior to exiting anyway | |||||
* | Don't blend the B-Format decoder HRIRs | Chris Robinson | 2020-01-07 | 1 | -52/+25 | |
| | | | | | | | | Though fine in theory, an issue arises with extra phase interference since the frequency phases aren't aligned for each response. It would be better to do the blending before minimum phase reconstruction, where it can blend just the frequency magnitudes, essentially allowing makemhr to increase the resolution of the dataset. | |||||
* | Use a loop instead of a series of lambda calls | Chris Robinson | 2020-01-05 | 1 | -21/+23 | |
| | ||||||
* | Simplify post-mix HRTF gain storage | Chris Robinson | 2020-01-05 | 6 | -27/+15 | |
| | ||||||
* | Finalize AL_SOFT_bformat_ex | Chris Robinson | 2020-01-05 | 2 | -16/+8 | |
| | ||||||
* | Use temporaries for repeated values | Chris Robinson | 2020-01-05 | 1 | -12/+13 | |
| | ||||||
* | Avoid more duplicate arrays | Chris Robinson | 2020-01-04 | 1 | -14/+10 | |
| | ||||||
* | Combine identical arrays | Chris Robinson | 2020-01-04 | 6 | -39/+27 | |
| | ||||||
* | Use a span instead of an array+size | Chris Robinson | 2020-01-04 | 3 | -20/+12 | |
| | ||||||
* | Avoid a duplicate array | Chris Robinson | 2020-01-04 | 2 | -10/+4 | |
| | ||||||
* | Use an array type for the HRIR delay pair | Chris Robinson | 2019-12-30 | 2 | -10/+5 | |
| | ||||||
* | Load the HRIRs directly into HrirArrays | Chris Robinson | 2019-12-30 | 1 | -34/+45 | |
| | ||||||
* | Avoid declaring a variable early | Chris Robinson | 2019-12-30 | 1 | -3/+2 | |
| | ||||||
* | Workaround for MSVC 2015 | Chris Robinson | 2019-12-29 | 1 | -2/+2 | |
| | ||||||
* | Handle downmixing for mono output | Chris Robinson | 2019-12-29 | 2 | -3/+11 | |
| |