Jean-Marc Valin
18335e8e4d
Removed a float operation that sneaked in in the fixed-point code
2016-08-15 19:50:45 -04:00
Jean-Marc Valin
b7c7653941
Speeding up PVQ search by allocating even more pulses in the projection.
2016-08-15 17:30:00 -04:00
Jean-Marc Valin
2ff6556f1f
Making stereo_itheta() use the same atan2() approximation as tonality_analysis()
2016-08-11 11:05:51 -04:00
Jean-Marc Valin
76674feae2
SSE2 implementation of the PVQ search
...
We used the SSE reciprocal square root instruction to vectorize the serch rather
than compare one at a time with multiplies. Speeds up the entire encoder by 8-10%.
2016-08-09 23:22:27 -04:00
Jean-Marc Valin
e806d6a741
Making signx[] an int in alg_quant() and removes unnecessary sign copying
...
No measurable speed change.
2016-08-06 15:49:55 -04:00
Jean-Marc Valin
c7bbc3e31f
Speeding up PVQ using unlikely() and moving first position out of the loop
...
Speeds up encoding by another ~1-2%
2016-08-06 15:09:39 -04:00
Jean-Marc Valin
09b5352928
Getting gcc to use cmovs rather than branches in alg_quant()
...
Speeds up CELT encoding by around 5% on x86
2016-08-06 00:06:48 -04:00
Jean-Marc Valin
9eee106214
cleanup: putting resynth flag in the context
2016-07-28 15:16:13 -04:00
Jean-Marc Valin
b66080a879
Fixes minor code quality issues in CELT
...
Reported by Durandal.
2016-06-20 12:11:05 -04:00
Rhishikesh Agashe
c9c2035355
Fixes compile problems for MIPS
...
Brings MIPS in sync with the ARM/SSE optimizations that added "arch" parameters.
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2015-10-07 13:55:12 -04:00
xiangmingzhu
c95c9a048f
Cisco optimization for x86 & fixed point
...
1. Only for fixed point on x86 platform (32bit and 64bit, uses SIMD
intrinsics up to SSE4.2)
2. Use "configure --enable-fixed-point --enable-intrinsics" to enable
optimization, default is disabled.
3. Official test cases are verified and passed.
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
2014-10-03 21:16:00 -04:00
Rhishikesh Agashe
f133bac6f9
MIPS optimizations
...
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2014-06-19 04:04:51 -04:00
Jean-Marc Valin
c543ec1bd3
Speeding up extract_collapse_mask() slightly
2014-01-23 00:02:12 -05:00
Jean-Marc Valin
6218cba258
Making decode_pulses() compute the L2-norm on the fly
2014-01-21 15:17:01 -05:00
Jean-Marc Valin
29354ff6e0
Save more integer divisions on ARM when we know the operands are positive
2014-01-21 10:39:33 -05:00
Jean-Marc Valin
ed01a596dc
Making exp_rotation1() use MAC16_16(), which saves a few cycles on ARM
2014-01-04 21:06:24 -05:00
Jean-Marc Valin
e0f26246b0
fixed-point: adds rounding to some shifts to eliminate bias
...
This reduces the peak decoding error by removing small (inaudible) spikes in
the error at the frame boundaries. These were due to the frequency-domain bias
ending up as a small pulse in the middle of the IMDCT overlap. None of this
was ever audible, but fixing it is still cleaner.
2013-12-14 11:07:13 -05:00
Jean-Marc Valin
5607d5d1c8
Annotating pointer arguments with OPUS_RESTRICT and const
2013-12-10 22:09:29 -05:00
Jean-Marc Valin
57cd849cf7
Defining celt_inner_prod() and using it instead of explicit loops.
...
Also adds an SSE-optimized celt_inner_prod().
2013-12-09 15:26:58 -05:00
Gregory Maxwell
de0b5324b6
Replace C99 restrict keyword with OPUS_RESTRICT.
...
We had previously advised people to -Drestrict on
non-C99 compilers, but this creates problems for
some of the MSVC headers. Instead this just
uses a macro and defines it sanely.
2012-07-18 12:12:35 -04:00
Jean-Marc Valin
cb05e7cd96
s/FOUNDATION/COPYRIGHT OWNER/ in CELT code and "glue code"
...
Also added 3rd clause to "master" COPYING file
2012-04-20 16:41:42 -04:00
Jean-Marc Valin
72273000ec
Misc changes to address Robert Sparks' comments
...
See http://www.ietf.org/mail-archive/web/codec/current/msg02833.html
Still more changes to come
2012-04-20 10:26:08 -04:00
Koen Vos
43a0de4af1
Optimization of the CBR loop
...
Also some comment/warning fixes
2011-10-24 09:10:58 -04:00
Jean-Marc Valin
0da4f238e0
Avoiding more left shifts of negative values
2011-09-25 00:11:46 -04:00
Jean-Marc Valin
c37499090b
renames the libcelt/ directory to celt/
2011-09-13 18:21:18 -07:00