summaryrefslogtreecommitdiff
path: root/libavcodec/mdct15.c
Commit message (Collapse)AuthorAge
* mdct15: add inverse transform postrotation SIMDRostislav Pehlivanov2017-07-30
| | | | | | | | | | | | | | | | | | | | | | | | | | 2.5ms frames: Before (c): 2638 decicycles in postrotate, 2097040 runs, 112 skips After (sse3): 1467 decicycles in postrotate, 2097083 runs, 69 skips After (avx2): 1244 decicycles in postrotate, 2097085 runs, 67 skips 5ms frames: Before (c): 4987 decicycles in postrotate, 1048371 runs, 205 skips After (sse3): 2644 decicycles in postrotate, 1048509 runs, 67 skips After (avx2): 2031 decicycles in postrotate, 1048523 runs, 53 skips 10ms frames: Before (c): 9153 decicycles in postrotate, 523575 runs, 713 skips After (sse3): 5110 decicycles in postrotate, 523726 runs, 562 skips After (avx2): 3738 decicycles in postrotate, 524223 runs, 65 skips 20ms frames: Before (c): 17857 decicycles in postrotate, 261866 runs, 278 skips After (sse3): 10041 decicycles in postrotate, 261746 runs, 398 skips After (avx2): 7050 decicycles in postrotate, 262116 runs, 28 skips Improves total decoding performance for real world content by 9% with avx2. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* mdct15: simplify prereindexing and forward transform postrotationRostislav Pehlivanov2017-07-25
| | | | | | Equivalent. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* mdct15: remove redundant scale argument to imdct_halfRostislav Pehlivanov2017-07-11
| | | | | | | The only use of that argument was for Opus downmixing which is very rare and better done after the mdcts. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* mdct15: add assembly optimizations for the 15-point FFTRostislav Pehlivanov2017-06-23
| | | | | | | c: 1802 decicycles in fft15,16774635 runs, 2581 skips avx: 865 decicycles in fft15,16776378 runs, 838 skips Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* mdct15: use existing complex multiplication macrosRostislav Pehlivanov2017-04-08
| | | | Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* mdct15: fix left shift of a negative valueRostislav Pehlivanov2017-03-22
| | | | | | Should fix Chromium issue 704064. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* imdct15: rename to mdct15 and add a forward transformRostislav Pehlivanov2017-02-14
Handles strides (needed for Opus transients), does pre-reindexing and folding without needing a copy. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>