Commit graph

1205 commits

Author SHA1 Message Date
Jean-Marc Valin
8f0f4b9421 Limiting intra-frame prediction codebook to 32 entries (plus sign) 2008-02-11 13:52:44 +11:00
Jean-Marc Valin
5b50f4bf81 Decays corresponding to the psychoacoustic spreading function are now
pre-computed (instead of computing tons of pow() uselessly all the time)
2008-02-11 11:50:20 +11:00
Jean-Marc Valin
b7ed44ba0a minor tweak to pitch weighting function, disabled some code that doesn't
do anything yet.
2008-02-11 11:15:33 +11:00
Jean-Marc Valin
66fa639c53 More flexible energy quantisation with nearly no penalty. 2008-02-11 10:53:11 +11:00
Jean-Marc Valin
c35883d74b Remove multiplier-free version since we don't need it 2008-02-11 10:16:31 +11:00
Jean-Marc Valin
e4475871fb fixed leaked ritrev table 2008-02-08 16:08:40 +11:00
Jean-Marc Valin
7351e286c8 Everything converted to use kiss-fft. Got rid of smallft and fftwrap.
Code much leaner now.
2008-02-08 15:09:45 +11:00
Jean-Marc Valin
6211c90def Split the radix functions into forward and backward versions, removed the
"inverse" flag from the state so it can be shared between the forward and
inverse transforms.
2008-02-08 14:21:20 +11:00
Jean-Marc Valin
d7dfb00886 Made pre-computed twiddles the same for forward and inverse FFT 2008-02-08 13:25:03 +11:00
Jean-Marc Valin
711ad251df Changed ordering of real FFT freq data to something more aligned (it's not
used anywhere yet).
2008-02-08 12:22:03 +11:00
Jean-Marc Valin
b3756709ad Fixed incorrect assumption about the number of bytes returned by the
entropy coder. All testcases pass again.
2008-02-08 11:50:17 +11:00
Jean-Marc Valin
e6586d21fa Real FFT cleanup, plus some testcases 2008-02-08 10:48:15 +11:00
Jean-Marc Valin
4d0a7d0f1b Now using an MDCT implementation I can actually understand. 2008-02-08 10:22:52 +11:00
Jean-Marc Valin
012407760c Re-enabled intra-frame prediction, which seems to have exposed a few issues
with the entropy coder.
2008-02-07 21:14:16 +11:00
Jean-Marc Valin
cb0956d06d Add a test for tell(). Turns out we can make it fail by writing zeros. 2008-02-07 20:21:57 +11:00
Jean-Marc Valin
bbe6df88ed Fix reporting of bit-rate in decoder 2008-02-02 21:05:11 +11:00
Jean-Marc Valin
276e6afc03 Fixed a typo and removed an old warning from speexenc. Also, using more useful
bitrate defaults.
2008-02-02 20:15:51 +11:00
Jean-Marc Valin
69f9dea7c5 couple fixes to Ogg encoder/decoder 2008-02-01 23:25:05 +11:00
Jean-Marc Valin
96dec06380 celtenc and celtdec work for stereo as well. 2008-02-01 23:18:22 +11:00
Jean-Marc Valin
1d4dc20e1d oops, forgot the makefile 2008-02-01 18:54:07 +11:00
Jean-Marc Valin
0911f750e6 bit of cleaning up, default sampling rate 2008-02-01 17:34:06 +11:00
Jean-Marc Valin
e623312fda Got the Ogg encoder and decoder to (barely) work. 2008-02-01 16:27:38 +11:00
Jean-Marc Valin
1e98cc5ad1 oops, type safety issue resolved 2008-02-01 10:45:45 +11:00
Jean-Marc Valin
17e5b805a5 clean up... oh and actually committed the header definition 2008-02-01 09:02:05 +11:00
Jean-Marc Valin
2fecbdf084 Fixed the default int32 type which was wrong on amd64 (and added testcase).
Also, added an Ogg encoder (doesn't work quite yet).
2008-01-31 23:43:10 +11:00
Jean-Marc Valin
eaab4b7121 Getting closer to 0.1.0 2008-01-31 17:37:28 +11:00
Jean-Marc Valin
4c6bc884c8 "make check" now actually tried to encode and decode to see if things work
(need to have test files installed otherwise it'll just pass by default)
2008-01-31 17:34:27 +11:00
Jean-Marc Valin
f997ad51dc Mode info 2008-01-31 16:47:16 +11:00
Jean-Marc Valin
abe043f0a1 Moving everything to the same type abstraction (sort of). 2008-01-31 14:26:29 +11:00
Jean-Marc Valin
3d3bb68536 cleaning up 2008-01-31 10:05:39 +11:00
Jean-Marc Valin
ccc988b822 type abstraction header and header definition (still incomplete) 2008-01-31 09:59:15 +11:00
Jean-Marc Valin
4618eee092 Added a check to make sure the encoder signal matches that of the decoder 2008-01-29 08:17:50 +11:00
Jean-Marc Valin
38b6d479a4 remove prob{enc,dec,mod} that were no longer needed 2008-01-29 08:04:01 +11:00
Jean-Marc Valin
0c387d7818 64-bit test for cwrs 2008-01-28 23:01:58 +11:00
Jean-Marc Valin
e84b96bbc1 testcase for 32-bit pulse encoding/decoding 2008-01-28 22:41:55 +11:00
Jean-Marc Valin
6238bc0ece Moved the content of libentcode into libcelt to reduce dependencies,
especially now that we have a custom version of that code anyway. Moved
the test code to tests/
2008-01-28 22:28:54 +11:00
Jean-Marc Valin
94d4ea9305 Bit of cleaning up in the byte dumping part. Making use of any remaining bit(s)
to do error detection in the decoder.
2008-01-27 17:34:35 +11:00
Timothy B. Terriberry
a2fd116d16 Remove end-byte handling to allow arbitrary padding with zeros for CBR.
From d28a530115ee7c739f12a6afb7e233cd29f64869 Mon Sep 17 00:00:00 2001
From: Timothy B. Terriberry <tterribe@xiph.org>
Date: Thu, 24 Jan 2008 21:56:48 -0500
Subject: [PATCH] Remove end-byte handling to allow arbitrary padding with zeros for CBR.
2008-01-25 14:41:04 +11:00
tterribe
bab4fb19e2 Actually free test data vectors in the new random stream tests.
git-svn-id: http://svn.xiph.org/trunk/ghost@14428 0101bb08-14d6-0310-b084-bc0e0c8e3800
2008-01-24 14:36:18 +11:00
tterribe
7e3293f713 Fix the bug that was causing the last byte of the stream to be returned incorrectly, as well as undo jm's reversion, which can cause ec_dec_tell() to operate incorrectly at the end of the stream.
A few other minor updates are included as well.

git-svn-id: http://svn.xiph.org/trunk/ghost@14427 0101bb08-14d6-0310-b084-bc0e0c8e3800
2008-01-24 14:36:13 +11:00
Jean-Marc Valin
77ff83a28c Making the library usable by other projects (install things properly, added
pkg-config file)
2008-01-22 13:16:36 +11:00
Jean-Marc Valin
388f1d6cc8 Tweaks for slightly improving the handling of the last byte (still not
perfect)
2008-01-18 16:28:11 +11:00
jm@0101bb08-14d6-0310-b084-bc0e0c8e3800
e5ec0f8da3 Reverted some of Timothy's changes to the range decoding that were causing decode random decode problems at the end of the stream (but only once in a while).
git-svn-id: http://svn.xiph.org/trunk/ghost@14413 0101bb08-14d6-0310-b084-bc0e0c8e3800
2008-01-18 15:28:49 +11:00
Jean-Marc Valin
3cfcd0594a Big mode cleanup. Keeping only one mono and one stereo mode 2008-01-18 13:56:08 +11:00
Jean-Marc Valin
a76a0b23eb Further simplified the API by passing the rate directly to the
encode function. Also, trying to properly flush the bit packer
(still some problems left).
2008-01-17 22:43:05 +11:00
tterribe
649d5cc23b Update ec_dec_bits64() to correspond to the new ec_enc_bits64(). Not sure why this wasn't committed before.
git-svn-id: http://svn.xiph.org/trunk/ghost@14409 0101bb08-14d6-0310-b084-bc0e0c8e3800
2008-01-17 19:26:17 +11:00
Jean-Marc Valin
b35536a3b0 Enabled pure CBR, though there's still some decoder issues. 2008-01-17 16:57:18 +11:00
Jean-Marc Valin
4fbd18d1f4 Close to getting CBR working 2008-01-17 14:07:55 +11:00
Jean-Marc Valin
f51ca493fb Looks like the bit allocation code is mostly working. Just need to actually
use it now.
2008-01-17 10:58:38 +11:00
Jean-Marc Valin
c6b4390f6a Working allocation interpolation code 2008-01-16 22:04:17 +11:00