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