Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Simplify bsincgen's Kaiser function | Chris Robinson | 2017-08-18 | 1 | -8/+3 |
| | |||||
* | Keep bsinc filter quality more consistent between scales | Chris Robinson | 2017-08-17 | 1 | -7/+9 |
| | | | | | | | This generates the filters using the proper size and scale. The 'a' divisor should represent the +/- sample range (and thus be a whole number), with the number of sample points being double that. Increasing the filter size to a multiple of 4 (for SIMD) can be done by padding in 0s afterward. | ||||
* | Workaround Android not having log2 | Chris Robinson | 2017-08-17 | 1 | -0/+4 |
| | |||||
* | Correct the bsinc filter order | Chris Robinson | 2017-08-17 | 1 | -6/+7 |
| | | | | | | Despite the claim that it was an 11th order filter, the transition width was generated by specifying 12th order. A 12th order filter would need 14 sample points rather than the 12 it had. | ||||
* | Make the sinc4 table static | Chris Robinson | 2017-08-16 | 1 | -1/+1 |
| | |||||
* | Make the bsinc table layout more efficient | Chris Robinson | 2017-08-16 | 1 | -99/+20 |
| | | | | | | | | | | | | | | | | The old layout separated filters, scale deltas, phase deltas, and scale phase deltas into separate segments that each contained a numbers of scale and phase entries, Since processing a sample needed a filter and one of each delta entry relating to a particular scale and phase, the memory needed would be spread across the whole table. And since subsequent samples would use a different phase, it would jump around the table a whole lot as well. The new layout packs the data in a way more consistent with its use. The filters, scale deltas, phase deltas, and scale phase deltas are interleaved, such that for a particular scale and phase, the filter and delta entries used are contiguous. And the phase entries for a particular scale are kept together, so the ~500 to ~1000 samples processed per source update stay within the same 3KB to 6KB area of the 70+KB table, which is much more cache friendly. | ||||
* | Keep bsinc info together in a struct | Chris Robinson | 2017-08-15 | 1 | -37/+61 |
| | |||||
* | Pre-compute the sinc4 resampler coefficient table | Chris Robinson | 2017-04-08 | 1 | -1/+39 |
| | |||||
* | Add a tool to generate the bsinc tables | Chris Robinson | 2015-11-10 | 1 | -0/+374 |