Jean-Marc Valin
4213a7254c
Demoved the divisions from the inner pitch prediction loops, bumped the version
...
and bit-stream version
2009-10-01 19:42:18 -04:00
Jean-Marc Valin
d5e5436e07
Fix for folding_decision() in stereo mode and more cleaning up of the code
...
now that we no longer do normalized pitch
2009-09-30 20:50:41 -04:00
Jean-Marc Valin
7013db7ca4
Fix stereo mismatch problem
2009-09-29 23:45:03 -04:00
Jean-Marc Valin
6db9e6eff8
Bringing back min_bins=3 for now
2009-09-29 23:16:26 -04:00
Jean-Marc Valin
75732de1a7
Tuning the spreading rotations
2009-09-29 22:35:32 -04:00
Jean-Marc Valin
4834c92e2b
More simplifications from denorm pitch
2009-09-28 19:17:34 -04:00
Jean-Marc Valin
095c1782c5
Removed code that is no longer necessary with denorm pitch and spreading
2009-09-17 22:38:34 -04:00
Jean-Marc Valin
92ae37027f
enabling denorm pitch only at low bit-rate
2009-09-16 07:57:17 -04:00
Jean-Marc Valin
00fb6b0765
fixed-point: denorm pitch converted
2009-09-15 23:41:05 -04:00
Jean-Marc Valin
ab220aa212
denorm pitch works in fixed-point (though there's still some floats left)
2009-09-15 22:38:40 -04:00
Jean-Marc Valin
4c77ea96d0
doing pitch in denormalized domain
2009-09-14 22:51:55 -04:00
Jean-Marc Valin
515136a3f1
removed unused #ifdefs
2009-09-13 20:15:24 -04:00
Jean-Marc Valin
3aa3afe74f
Only calling intra_fold() when there's no pulse allocated
2009-09-11 20:28:29 -04:00
Jean-Marc Valin
a7750b90cc
Re-introducing the successive rotations as a way to control low-bitrate
...
tonal artefacts. This replaces folding for all cases where we have at least
one pulse.
2009-08-29 22:52:03 +01:00
Jean-Marc Valin
0f0da999ae
Better fading for PLC: no fading for the first loss, muting after 6
2009-08-12 21:35:36 -04:00
Jean-Marc Valin
9714f66d5f
Disabling some checks for the C55
2009-08-12 20:29:57 -04:00
Jean-Marc Valin
bb275c4101
Making it possible to use the C64x FFT
2009-08-11 22:12:50 -04:00
Jean-Marc Valin
79b361991e
Forcing side to be orthogonal to mid for N=2. This saves one degree of freedom.
2009-08-09 19:18:22 -04:00
Jean-Marc Valin
fbfddf7041
Making sure each band has a width that's a multiple of the number of MDCTs
2009-08-09 19:18:16 -04:00
Jean-Marc Valin
692c33f8bb
Fixes typo in C6x macro.
2009-08-09 09:23:05 -04:00
Jean-Marc Valin
5a70097d79
C89 and 16-bit fixes
2009-08-08 13:23:03 -04:00
Jean-Marc Valin
54669dc89b
Allocating enough mem in celtenc/celtdec to handle 1024-sample frames
2009-08-01 23:22:51 +02:00
Jean-Marc Valin
e610864c74
This fixes a VBR bug introduced by raw bits. We should not write any raw
...
bit before the rate is decided (otherwise they'll end up at the wrong place)
and we have to shrink the byte buffer before writing raw bits.
2009-08-01 23:05:47 +02:00
Jean-Marc Valin
91f07dc125
Changing some code to use BITRES directly instead of its value.
2009-07-25 20:42:24 -04:00
Jean-Marc Valin
949a29bf0c
Raw bits encoding/decoding functions renamed to *_raw() and re-introducing
...
original ec_encode_bin()/ec_decode_bin() to optimize performance when ft is
a power of two.
2009-07-25 20:16:01 -04:00
Jean-Marc Valin
50cf82f7ab
Raw bits enabled for the multiply-free range coder too.
2009-07-23 07:33:25 -04:00
Jean-Marc Valin
c08be4485b
Implemented "raw bits"
...
Making it so all the information encoded directly with ec_enc_bits() gets
stored at the end of the stream, without going through the range coder. This
should be both faster and reduce the effects of bit errors.
Conflicts:
tests/ectest.c
2009-07-23 07:33:24 -04:00
Timothy B. Terriberry
8d940a664e
Change end-of-stream handling in the range coder.
...
Instead of trying to maximize the number of trailing zeros (minimize the number
of bits encoded), we try to maximize the number of trailing bits that can
contain arbitrary data.
Note that this requires ec_enc_tell() and ec_dec_tell() to reserve an extra
bit, since depending on the exact final codeword, as little as half the final
range might be available for storing arbitrary data.
This is the first step needed to start packing literal bits outside the range
coder (for speed and robustness purposes).
2009-07-23 07:33:24 -04:00
Jean-Marc Valin
164a229644
Reducing the size of the pulses->bits cache by restricting the number of pulses
...
possible
2009-07-23 07:24:03 -04:00
Jean-Marc Valin
cb8780ca96
C89 compatibility fixes for pseudo-stack mode.
...
Conflicts:
libcelt/celt.c
2009-07-20 23:40:35 -04:00
Jean-Marc Valin
8ccf148573
Bump version number to 0.6.1
2009-07-13 20:37:06 -04:00
Jean-Marc Valin
43dd8a5812
Allocating 100k for the pseudo stack so we're sure to be (more than) safe
2009-07-13 17:50:59 -04:00
Jean-Marc Valin
c81af94437
ietf doc: Last minute changes to the drafts
2009-07-13 15:40:17 -04:00
Jean-Marc Valin
3ea5ea4561
Clarifying the transient time-domain pre-emphasis and energy prediction to
...
address Koen Vos' comments.
2009-07-13 11:10:02 -04:00
Jean-Marc Valin
2c44b55430
Updating draft to match latest code changes
2009-07-12 22:19:31 -04:00
Jean-Marc Valin
798ab38b27
Using normalised M/S stereo data for folding and use separate folding gains
...
for M and S.
2009-07-12 20:41:29 -04:00
Gregory Maxwell
0719f6fc25
This patch makes it safe to call the encode / decode functions with a NULL pointer in place of the pcm buffer.
2009-07-12 01:01:33 -04:00
Jean-Marc Valin
4da9e94c98
Using MS stereo for all bands, fixing a few bugs in the stereo folding
2009-07-12 00:58:50 -04:00
Jean-Marc Valin
94b39e9561
ietf doc: clarifications
2009-07-10 11:52:33 -04:00
Jean-Marc Valin
e6d832a721
Allowing frame sizes up to 1024, with pitch enabled only up to 512
2009-07-08 22:21:31 -04:00
Jean-Marc Valin
388fccc334
Most suggestions by Stefan Sayer.
2009-07-08 11:19:46 -04:00
Jean-Marc Valin
36d2a7fd4a
Suggestions/corrections by Stefan Sayer.
2009-07-08 09:43:40 -04:00
Jean-Marc Valin
0b765bf8c1
ietf doc: final tweak
2009-07-04 23:02:46 -04:00
Jean-Marc Valin
ece2cfa2d2
removed useless comments
2009-07-04 22:46:38 -04:00
Jean-Marc Valin
66e7816833
ietf doc: stereo and other details
2009-07-04 22:23:58 -04:00
Jean-Marc Valin
822ac747bc
Making real sure not to bust the pseudo-stack even for weird configurations
2009-07-04 21:58:30 -04:00
Jean-Marc Valin
9fe754cf8f
ietf doc: more corrections
2009-07-04 21:21:00 -04:00
Jean-Marc Valin
f7e5a8279d
ief doc: Moving allocation matrix interpolation to the "Modes" section
2009-07-04 07:19:34 -04:00
Jean-Marc Valin
54f5835035
ietf doc: removed duplicate paragraph in allocation section
2009-07-04 00:31:03 -04:00
Gregory Maxwell
49baf65346
ietf doc: An initial attempt at explaining the allocation machinery.
2009-07-03 22:44:27 -04:00