Commit Graph

31 Commits

Author SHA1 Message Date
Themaister
78d0edc4aa Don't use a crazy large phase LUT. 2012-11-29 17:27:21 +01:00
Themaister
c1a00fac4d Improve ratio accuracy in SINC. 2012-11-29 11:49:57 +01:00
Themaister
f2e02bde1e Guard against high frequency aliasing a bit. 2012-11-25 14:54:07 +01:00
Themaister
ccd1449aa8 Fix hermite cracking when ratio < 1.0. 2012-11-25 12:32:24 +01:00
Themaister
6421fe248b Optimize SINC resampler.
Trade memory for performance. Avoid using linear interpolation
between phases.
2012-11-07 23:27:31 +01:00
Themaister
bebe0d78a7 Optimize sinc for AVX as well.
Disable it for now however, as it's slightly slower
than SSE1 for the few taps we're using.

From testing, it's 10-20% faster when number of taps are increased.
The AVX path might need some more tuning, but it's fair to
assume the algorithm is memory bound.
2012-11-06 18:52:09 +01:00
Themaister
d027287d71 Leave some notes about downsampling. 2012-10-16 12:54:58 +02:00
Themaister
34713f40d1 Fix spurious segfaults when ratio dips below 1. 2012-10-15 22:53:05 +02:00
Themaister
b8abf34785 Purge some now useless code.
Removes manual input rate adjustments.
Don't allow DSP plugs to resample as it would complicate things alot
with dynamic rate control.
Also purges optional ssnes_* symbols for external plugs.
2012-10-13 20:22:45 +02:00
Themaister
7b12182a0f Add optional fixed point resampler. 2012-07-06 17:36:37 +02:00
Themaister
3878e81ce4 Improve SNR measurement. 2012-05-08 12:14:03 +02:00
Themaister
ce740f8948 More fixups. 2012-04-21 23:31:57 +02:00
Themaister
aab8fb6151 ssnes_* => rarch_*. 2012-04-21 23:25:32 +02:00
Themaister
9ab51ad23a SSNES => RetroArch. 2012-04-21 23:17:43 +02:00
Themaister
e3a71a8c5b Fixup headers. 2012-04-09 22:05:26 +02:00
Themaister
62c96ea937 Change license header. 2012-04-09 22:03:57 +02:00
Themaister
9698cd7dbd Change headers. 2012-04-09 22:03:57 +02:00
Themaister
59dbc4727b Generate for rest of slide window. 2012-02-28 23:01:18 +01:00
Themaister
57e17d9b14 Optimize resampler some more. 2012-02-28 22:58:19 +01:00
Themaister
24817543e0 Implement FFT for better SNR verification. 2012-02-27 19:49:00 +01:00
Themaister
afa6776b1d Add cutoff. 2012-02-26 19:18:51 +01:00
Themaister
b4fe5198b3 Win32 doesn't have memalign ... 2012-02-25 22:37:40 +01:00
Themaister
37ed625bab Use shuffles/movehl. 2012-02-25 21:47:40 +01:00
Themaister
3dc5b21b78 Use lanzcos instead (better SNR). 2012-02-25 16:45:06 +01:00
Themaister
bdc8cd1cb1 Apply deltas to last phase as well. 2012-02-25 16:33:33 +01:00
Themaister
6643bf3e1c Use floating point for sample offsets. 2012-02-25 14:31:57 +01:00
Themaister
cd54cc6822 Improve SNR testing routines. 2012-02-25 14:02:56 +01:00
Themaister
9bad6f2bba Add resampler tests. 2012-02-25 01:47:23 +01:00
Themaister
0496ffc007 Optimize sinc resampler a bit. 2012-02-24 21:01:29 +01:00
Themaister
1ea4b5ce7c Fix build. 2012-02-23 23:57:35 +01:00
Themaister
f5a4ea55f5 Add sinc resampler. 2012-02-23 23:53:18 +01:00