Commit graph

43 commits

Author SHA1 Message Date
Jean-Marc Valin
6f1cbca519 More cleanup 2010-07-24 22:06:29 -04:00
Jean-Marc Valin
f276b23415 Using random noise in upper bands when signal is "normal" 2010-07-24 17:13:17 -04:00
Jean-Marc Valin
525d7cfdc4 Support for adjusting the end band 2010-07-13 18:18:23 -04:00
Jean-Marc Valin
2123f358b1 Cleaning up the folding code.
Folding now moved to alg_quant() and alg_unquant(). No more funny short block
alignment checks because bands now have to be aligned.
2010-05-09 19:45:31 -04:00
Jean-Marc Valin
65ee67ac55 Making the band definition the same at all frame sizes. 2010-04-26 07:08:44 -04:00
Jean-Marc Valin
b8ba70c99b Disabling resynthesis when not needed (need to remove folding for this to work) 2010-04-18 22:10:24 -04:00
Jean-Marc Valin
3a0bc3d95c Allowing CELT to skip the low frequencies 2010-02-25 22:46:55 -05:00
Jean-Marc Valin
234969c903 Removed the _t from all the celt*_t types to avoid clashing with POSIX 2009-10-17 22:12:42 -04:00
Jean-Marc Valin
8b2ff0da5a Updated copyright notices 2009-10-17 21:40:10 -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
095c1782c5 Removed code that is no longer necessary with denorm pitch and spreading 2009-09-17 22:38:34 -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
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
Jean-Marc Valin
ca53b7c919 Squashed commit of the following:
commit ea807b68678dd76175def2c5eb006c6bdb16679e
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Wed Mar 25 23:24:41 2009 -0400

    cleanup before merge

commit 73ad1a0202641be6a23903e464ece21fe332a131
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Sat Mar 21 00:02:16 2009 -0400

    Some tuning of the new stereo

commit c05057eb57a7723045214a2f830fd561388ae48a
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Sun Mar 15 19:56:11 2009 -0400

    fixed-point: atan2() converted

commit a8476cf8be55b0612d42df98d9807ca1335adfe3
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Sat Mar 14 23:10:04 2009 -0400

    fixed-point: Getting the new stereo code working in fixed-point (still more
    work left)

commit 70a452761a5ce15700664e7167886dce5914cbd0
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Mon Mar 2 23:36:25 2009 -0500

    Coding left and right independently for lower bands

commit 4efd1e6385c7d036749080265a8d26668312b91b
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Sun Mar 1 23:56:46 2009 -0500

    Removed the sqrt(C) from the normalisation, which simplifies a lot of things.

commit a4f3c5c60bc396bf644afa49b49e6b24ccf144f8
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Fri Feb 20 20:49:38 2009 -0500

    Better point stereo calculation when we don't encode the side anyway

commit f08525de4739f4017d19ec2e2022883deda8f826
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Thu Feb 19 19:43:09 2009 -0500

    Apparently, Timothy's calculations for fine energy allocation also apply
    to the quantisation of theta.

commit 6548cffc9d3f996b8a8dbfab982f0da0bc6c2dc2
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Thu Feb 19 07:35:24 2009 -0500

    Better handling of the "theta bits" and disabling the orthogonalize()

commit 7aa82c694967afa85dd30be8cc670663f98829fe
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Wed Feb 18 08:01:07 2009 -0500

    tuning the new stereo

commit c2b780a773de66fd9613c7cd54c09b705fe9ce45
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Sun Feb 15 22:24:52 2009 -0500

    The new stereo coupling actually decodes properly now.

commit 85513c203d773bebcf0a6055f953170d563d890c
Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Date:   Sun Feb 15 21:31:16 2009 -0500

    First attempt at a new "constrained" MS stereo scheme
2009-03-26 20:23:14 -04:00
Jean-Marc Valin
6cde5dd24c alg_quant() now handles the sign of X[] separately from the quantisation
process
2008-12-04 21:21:41 -05:00
Jean-Marc Valin
896471dc3d Disabling the folding sign bit 2008-11-06 21:55:41 -05:00
Jean-Marc Valin
1d27ef8b2c Re-implemented renormalise_bands() based on renormalise_vector(). 2008-07-20 23:30:29 -04:00
Jean-Marc Valin
df38f2bf01 Re-enabling folding/intra for transients 2008-07-20 20:36:54 -04:00
Jean-Marc Valin
9a8bac019c Using only a sign for the intra prediction instead of using up to 5 bits for
an offset.
2008-05-05 12:02:14 +10:00
Jean-Marc Valin
ba11d78372 Passing the mode to the intra prediction functions so the single-channel case
can be optimised
2008-04-21 21:59:37 +10:00
Jean-Marc Valin
8c4877bd52 Bit better indexing in intra_prediction() 2008-04-21 12:15:16 +10:00
Jean-Marc Valin
35a1f88e81 optimisation: The "simple" Rxy/sqrt(Ryy) case in alg_quant no longer requires
a division
2008-03-26 10:34:23 +11:00
Jean-Marc Valin
bd718ba577 Removed the "pitch compression" in the residual quantisation. Also, removed
the more complex "n-best search" and replaced it with a greedy search
2008-03-25 14:15:41 +11:00
Jean-Marc Valin
312132780e A bunch of const qualifyers and a few comments 2008-03-03 16:52:54 +11:00
Jean-Marc Valin
9d8d9b3f37 fixed-point: compression factor (alpha) now a 16-bit value (still internally
converted to float though)
2008-02-27 16:17:39 +11:00
Jean-Marc Valin
5f09ea5659 celt_mask_t for masking curves 2008-02-26 16:43:04 +11:00
Jean-Marc Valin
2fa8affdc5 fixed-point: celt_norm_t now a 16-bit value. 2008-02-26 12:21:58 +11:00
Jean-Marc Valin
18ddc02afd Separating types for normalised vs. denormalised data paths 2008-02-22 14:24:50 +11:00
Jean-Marc Valin
276de7211d Mode doc 2008-02-20 17:45:51 +11:00
Jean-Marc Valin
879fbfd528 Updated Doxygen comments, removed an incorrectly placed LGPL header (we own
copyright, so it's fine!)
2008-02-20 17:17:13 +11:00
Jean-Marc Valin
0df0eb4c67 doing the folding properly. 2008-02-13 16:00:10 +11:00
Jean-Marc Valin
0e20ca0969 Enabling "plain folding" in case we don't even have enough bits for intra-frame
prediction
2008-02-11 15:33:53 +11:00
Jean-Marc Valin
26c9e1452a Comments/cleanup, no code change 2007-12-31 21:27:54 +11:00
Jean-Marc Valin
0d227d86e5 Got the intra-band prediction/copy to work correctly with
pulse spreading (and to work at all).
2007-12-31 16:12:12 +11:00
Jean-Marc Valin
46014ca49a Propagating perceptual weighting around (not used yet). 2007-12-14 13:47:04 +11:00
Jean-Marc Valin
4a897680e3 Working on some stability issues (appears to be solved by making the pitch
projection less aggressive). Also, fixed a 64-bit overflow in the stereo mode
and added a "band rotation" function.
2007-12-12 00:45:15 +11:00
Jean-Marc Valin
6e9058adb9 Nearly working cheating decoder. 2007-12-07 14:59:06 +11:00
Jean-Marc Valin
fc08d0a6d6 Algebraic codebook decoding (not tested yet) 2007-12-07 13:26:15 +11:00
Jean-Marc Valin
9cace64e5f Fixed codebook entirely quantised 2007-12-06 17:44:09 +11:00
Jean-Marc Valin
29ccab8aac Some work on index packing 2007-12-06 15:39:38 +11:00
Jean-Marc Valin
4841a0a02b Intra-frame prediction 2007-12-03 13:54:30 +11:00
Jean-Marc Valin
41af421540 Oops, forgot to add the Ghost/ceft vq files 2007-11-30 18:35:37 +11:00