Commit graph

1587 commits

Author SHA1 Message Date
Jean-Marc Valin
cb73e5ca62 Adding history to the intra decision distortion 2011-04-21 16:59:26 -04:00
Jean-Marc Valin
9c3dc6b4b8 s/intra_decision()/loss_distortion()/ 2011-04-21 16:33:23 -04:00
Jean-Marc Valin
eda2dee88d Taking into account the percentage of packet loss for intra decision 2011-04-21 16:04:27 -04:00
Jean-Marc Valin
6965388866 Implements CELT_SET_LOSS_PERC 2011-04-21 10:41:13 -04:00
Gregory Maxwell
fdd867534a Stop adjusting the VBR drift during silent frames, this prevents overshoot after silent spans. This also results in undershoot on files with lots of silence, but this is desirable in terms of increasing quality consistency. It will be even better if we later include some open-loop correction of the targets. 2011-04-13 17:15:55 -04:00
Jean-Marc Valin
d25dd2bff9 Fixes a declaration-after-statement error when using ALLOC_STACK 2011-03-29 07:54:27 +02:00
Jean-Marc Valin
403485d09b Typo in C5X macro 2011-03-29 07:43:51 +02:00
Jean-Marc Valin
9dec74d98d Adds support for decoding stereo streams with a mono decoder
We don't allow *encoding* a stereo stream with a mono encoder
because that's just silly.
2011-03-28 01:39:41 -04:00
Jean-Marc Valin
c914f5ea50 Updated MSVC project file 2011-03-22 20:32:49 -04:00
Jean-Marc Valin
c3086a98f4 Making CELT_GET_MODE "private" 2011-03-21 13:26:03 -04:00
Jean-Marc Valin
ff96b165fe Removes the celt_mode_info() call.
Adds a CELT_GET_LOOKAHEAD() ctl() call instead. Other uses of
celt_mode_info() should not be needed anymore.
2011-03-21 11:32:50 -04:00
Jean-Marc Valin
d6bf19d22d Using the Opus header in 48k/2.5-20 ms modes 2011-03-21 07:06:09 -04:00
Jean-Marc Valin
c5f999097f Fixes tandem-test.c 2011-03-18 15:47:53 -04:00
Jean-Marc Valin
d0cb4ea301 Bump version number 2011-03-18 15:42:56 -04:00
Jean-Marc Valin
ef20e39374 Non-fatal bit-stream errors are now reported through ctl() 2011-03-18 15:34:11 -04:00
Jean-Marc Valin
a7be438716 MSVC files 2011-03-18 06:40:03 -04:00
Jean-Marc Valin
1a8bf37dba Taking into account the start and end bands in CNG 2011-03-16 22:03:15 -04:00
Jean-Marc Valin
37e788c185 Fixes return value on lost packet 2011-03-16 20:56:28 -04:00
Jean-Marc Valin
6c28805c56 version bump 2011-03-14 18:06:23 -04:00
Jean-Marc Valin
6f6e8b3984 Renamed --noltp to --nopf in celtenc.c 2011-03-14 14:52:54 -04:00
Jean-Marc Valin
7c328c2d7a celtdec update for change in celt_decode() return value 2011-03-12 20:36:26 -05:00
Jean-Marc Valin
dd2973dd6c Fix missing break statements 2011-03-11 17:46:02 -05:00
Jean-Marc Valin
e6acfe07cb Adds in-band signalling of the CELT frame size and bandwidth 2011-03-11 16:38:49 -05:00
Jean-Marc Valin
86da2c8b19 Speeds up compute_allocation() by removing potential aliasing 2011-03-11 10:36:11 -05:00
Jean-Marc Valin
3e7f22d45b Bump version to 0.11.2 2011-03-09 16:47:34 -05:00
Jean-Marc Valin
f62b3bb96d Fix for global stack 2011-03-09 11:56:29 -05:00
Timothy B. Terriberry
9bac8c17d5 Eliminate the ec_int32 and ec_uint32 typedefs.
These were used because the entropy coder originally came from
 outside libcelt, and thus did not have a common type system.
It's now undergone enough modification that it's not ever likely to
 be used as-is in another codec without some porting effort, so
 there's no real reason to maintain the typedefs separately.
Hopefully we'll replace these all again somedate with a common set
 of Opus typedefs, but for now this will do.

This fixes an issue caused by commit 6c8acbf1, which moved the
 ec_ilog() prototype from entcode.h to ecintrin.h, where the
 ec_uint32 typedef was not yet available.
Thanks to John Ridges for the report.
2011-03-02 21:14:19 -05:00
Timothy B. Terriberry
115fa35a9d Fix CNG when effEBands is less than nbEBands.
We were trying to normalize bands that didn't actually exist (e.g.,
 the last band with 320-sample frames at 32kHz).
Thanks to John Ridges for the report.
2011-03-02 21:14:04 -05:00
Jean-Marc Valin
168888f7a3 A float variable and a bug left in transient_analysis() 2011-03-02 17:26:48 -05:00
Timothy B. Terriberry
6c8acbf1f2 EC_ILOG cleanups.
Mark _BitScanReverse as an intrinsic, as this is not done by default
 in _DEBUG mode (thanks to Bjoern D. Rasmussen for the suggestion).
Move the declaration of ec_ilog() to where the macro using it is
 defined, to ensure it is available when the macro is used.
Thanks to John Ridges for the report.
2011-03-01 18:13:48 -05:00
Jean-Marc Valin
3beb70e549 Fix effectiveBytes computation for VBR 2011-03-01 18:08:15 -05:00
Jean-Marc Valin
c79c4e3bc7 Fixes a prototype mismatch in compute_allocation() 2011-02-16 13:21:13 -05:00
Jean-Marc Valin
e3d39fec7c Version bump 2011-02-14 23:57:54 -05:00
Jean-Marc Valin
a31a7ea8b1 MSVC project files 2011-02-14 21:11:09 -05:00
Timothy B. Terriberry
f18ad4387a Refactor ec_enc_patch_initial_bits().
The return code has been eliminated in favor of using the existing
 error flag in the ec_enc struct.
This also adds the declaration to the header, which JM's importation
 of Koen's adaptation of my original code in b3c05b6b omitted.
2011-02-14 16:32:16 -05:00
Gregory Maxwell
5b236756a3 Correct a number of uninitialized value problems when end!=nbEBands. Now 8khz/20ms audio can be decoded at 48kHz and vice versa (with the PF turned off). 2011-02-14 15:44:31 -05:00
Timothy B. Terriberry
b3c05b6be2 Implements ec_enc_patch_initial_bits() 2011-02-14 14:40:27 -05:00
Jean-Marc Valin
079b916950 using "end" rather than nbEBands for trim_offset[] 2011-02-14 13:54:59 -05:00
Jean-Marc Valin
1e9fb6291c Fixes the inversion of SPREAD_LIGHT and SPREAD_AGGRESSIVE
Change the bit-stream (without causing desync)
2011-02-14 13:51:06 -05:00
Jean-Marc Valin
64805fd246 Fix post-filter for the case where overlap!=shortMdctSize 2011-02-12 00:50:53 -05:00
Jean-Marc Valin
fa74ae26c4 Fix for layouts of 22 band and more 2011-02-11 21:56:45 -05:00
Jean-Marc Valin
a14e86d904 Fixes post-filter for transitions between 2.5ms and other frame sizes 2011-02-11 16:27:27 -05:00
Jean-Marc Valin
cf89d2a60c Adding a tiny amount of noise when folding to prevent/reduce numerical issues 2011-02-10 10:50:26 -05:00
Jean-Marc Valin
1111db3163 Oops, forgot COPYING and the tandem test 2011-02-09 23:14:03 -05:00
Jean-Marc Valin
3806c1d738 Relicensing under the simplified (2-clause) BSD license
Got authorization from all copyright holders
2011-02-09 22:37:41 -05:00
Gregory Maxwell
1928f8df65 CELT_SET_END_BAND_REQUEST in the decoder was performing the wrong bounds check and not allowing a change to fullband. 2011-02-08 22:35:29 -05:00
Gregory Maxwell
7007f1b823 Encoder fixes for NB/WB/SWB modes. 2011-02-08 16:31:21 -05:00
Gregory Maxwell
20d071909c Update celtclient to the new API. 2011-02-07 21:40:55 -05:00
Jean-Marc Valin
35a96ea983 minor detail with the last patch 2011-02-06 20:23:19 -05:00
Timothy B. Terriberry
285bc372ca 16-bit int fixes.
This fixes a number of issues for platforms with a 16-bit int, but
 by no means all of them.
The type change for ec_window (for platforms where sizeof(size_t)==2)
 will break ABI (but not API) compatibility with libsilk and libopus,
 and reduce speed on x86-64, but allows the code to work in real-mode
 DOS without using the huge memory model, which is useful for testing
 16-bit int compliance.
2011-02-06 17:32:58 -05:00