opus.git
8 years agoAdds in-band signalling of the CELT frame size and bandwidth
Jean-Marc Valin [Fri, 11 Mar 2011 21:31:24 +0000 (16:31 -0500)]
Adds in-band signalling of the CELT frame size and bandwidth

8 years agoSpeeds up compute_allocation() by removing potential aliasing
Jean-Marc Valin [Fri, 11 Mar 2011 15:36:11 +0000 (10:36 -0500)]
Speeds up compute_allocation() by removing potential aliasing

8 years agoNothing to see here
Jean-Marc Valin [Thu, 10 Mar 2011 15:14:12 +0000 (10:14 -0500)]
Nothing to see here

8 years agoversion bump
Jean-Marc Valin [Thu, 10 Mar 2011 02:31:14 +0000 (21:31 -0500)]
version bump

8 years agoBump version to 0.11.2
Jean-Marc Valin [Wed, 9 Mar 2011 21:47:34 +0000 (16:47 -0500)]
Bump version to 0.11.2

8 years agodraft version bump
Jean-Marc Valin [Wed, 9 Mar 2011 19:52:46 +0000 (14:52 -0500)]
draft version bump

8 years agoDraft Makefile update
Jean-Marc Valin [Wed, 9 Mar 2011 19:15:32 +0000 (14:15 -0500)]
Draft Makefile update

8 years agoMinor draft distribution update
Jean-Marc Valin [Wed, 9 Mar 2011 18:24:24 +0000 (13:24 -0500)]
Minor draft distribution update

8 years agoCELT update
Jean-Marc Valin [Wed, 9 Mar 2011 16:57:13 +0000 (11:57 -0500)]
CELT update

8 years agoFix for global stack
Jean-Marc Valin [Wed, 9 Mar 2011 16:56:29 +0000 (11:56 -0500)]
Fix for global stack

8 years agoUpdating the build of the draft and adding fixed-point support
Jean-Marc Valin [Wed, 9 Mar 2011 16:42:15 +0000 (11:42 -0500)]
Updating the build of the draft and adding fixed-point support

8 years agoAutomatic bandwidth selection
Jean-Marc Valin [Wed, 9 Mar 2011 03:12:43 +0000 (22:12 -0500)]
Automatic bandwidth selection

8 years agoremoving debug code
Jean-Marc Valin [Wed, 9 Mar 2011 02:13:23 +0000 (21:13 -0500)]
removing debug code

8 years agoCleanup
Jean-Marc Valin [Tue, 8 Mar 2011 23:05:45 +0000 (18:05 -0500)]
Cleanup

8 years agoSimple mode selection logic
Jean-Marc Valin [Tue, 8 Mar 2011 19:57:46 +0000 (14:57 -0500)]
Simple mode selection logic

8 years agoFixes a few issues with PLC-based mode switching
Jean-Marc Valin [Tue, 8 Mar 2011 04:53:53 +0000 (23:53 -0500)]
Fixes a few issues with PLC-based mode switching

8 years agoSupport for glitchles mode switching
Jean-Marc Valin [Tue, 8 Mar 2011 01:54:33 +0000 (20:54 -0500)]
Support for glitchles mode switching

Uses a 5ms redundant CELT frame embedded into the SILK or hybrid
packet to handle the switching. It's still possible to use the
PLC-based method when no redundant packet is included.

8 years agoShouldn't include config.h from a header
Jean-Marc Valin [Mon, 7 Mar 2011 21:15:55 +0000 (16:15 -0500)]
Shouldn't include config.h from a header

8 years agofixes error in definition of V(N,K)
Jean-Marc Valin [Mon, 7 Mar 2011 17:18:45 +0000 (12:18 -0500)]
fixes error in definition of V(N,K)

8 years agoSILK bugfix
Jean-Marc Valin [Thu, 3 Mar 2011 22:31:45 +0000 (17:31 -0500)]
SILK bugfix

8 years agousing memmove() instead of memcpy() when necessary
Jean-Marc Valin [Thu, 3 Mar 2011 22:31:11 +0000 (17:31 -0500)]
using memmove() instead of memcpy() when necessary

8 years agoFix redundancy mismatch
Jean-Marc Valin [Thu, 3 Mar 2011 21:53:32 +0000 (16:53 -0500)]
Fix redundancy mismatch

8 years agoFix PLC-based mode transition code.
Jean-Marc Valin [Thu, 3 Mar 2011 20:50:08 +0000 (15:50 -0500)]
Fix PLC-based mode transition code.

8 years agoEliminate the ec_int32 and ec_uint32 typedefs.
Timothy B. Terriberry [Thu, 3 Mar 2011 00:24:32 +0000 (16:24 -0800)]
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.

8 years agoFix CNG when effEBands is less than nbEBands.
Timothy B. Terriberry [Wed, 2 Mar 2011 23:28:08 +0000 (15:28 -0800)]
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.

8 years agoImplementing decoder-side support for redundant mode switching (bemasc's idea)
Jean-Marc Valin [Wed, 2 Mar 2011 22:54:43 +0000 (17:54 -0500)]
Implementing decoder-side support for redundant mode switching (bemasc's idea)

8 years agoA float variable and a bug left in transient_analysis()
Jean-Marc Valin [Wed, 2 Mar 2011 22:26:48 +0000 (17:26 -0500)]
A float variable and a bug left in transient_analysis()

8 years agoSILK update
Jean-Marc Valin [Wed, 2 Mar 2011 20:58:42 +0000 (15:58 -0500)]
SILK update

8 years agoRevert de32a5bf617f782f6a478c5cd50fb040b0fbffe9
Jean-Marc Valin [Wed, 2 Mar 2011 20:43:31 +0000 (15:43 -0500)]
Revert de32a5bf617f782f6a478c5cd50fb040b0fbffe9

Moves all the delay compensation back into the encoder only

8 years agoShouldn't have been commented out
Jean-Marc Valin [Wed, 2 Mar 2011 20:40:45 +0000 (15:40 -0500)]
Shouldn't have been commented out

8 years agoEC_ILOG cleanups.
Timothy B. Terriberry [Tue, 1 Mar 2011 20:54:04 +0000 (12:54 -0800)]
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.

8 years agoFix effectiveBytes computation for VBR
Jean-Marc Valin [Tue, 1 Mar 2011 23:08:15 +0000 (18:08 -0500)]
Fix effectiveBytes computation for VBR

8 years agoSILK/CELT update
Jean-Marc Valin [Mon, 28 Feb 2011 21:29:02 +0000 (16:29 -0500)]
SILK/CELT update

8 years agoSquashed commit of the following:
Koen Vos [Mon, 28 Feb 2011 21:07:58 +0000 (16:07 -0500)]
Squashed commit of the following:

commit 7721daf733c6986cb2c2511c81e6fc14fea1ec6a
Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
Date:   Mon Feb 28 16:00:52 2011 -0500

    Makefile.am update

commit 47dcc4edad849f57240b0c364036a378b5d22a9a
Author: Koen Vos <koen.vos@skype.net>
Date:   Mon Feb 28 15:46:23 2011 -0500

    SILK update (prefill, new LSF quant)

8 years agodraft: PVQ work
Jean-Marc Valin [Fri, 25 Feb 2011 22:42:21 +0000 (17:42 -0500)]
draft: PVQ work

8 years agodraft work
Jean-Marc Valin [Thu, 24 Feb 2011 23:54:22 +0000 (18:54 -0500)]
draft work

8 years agoanti-collapse
Jean-Marc Valin [Thu, 24 Feb 2011 16:04:26 +0000 (11:04 -0500)]
anti-collapse

8 years agoenergy decoding
Jean-Marc Valin [Wed, 23 Feb 2011 22:29:42 +0000 (17:29 -0500)]
energy decoding

8 years agoSILK can now build in fixed-point
Jean-Marc Valin [Tue, 22 Feb 2011 22:46:03 +0000 (17:46 -0500)]
SILK can now build in fixed-point

8 years agoTransients
Jean-Marc Valin [Tue, 22 Feb 2011 22:10:45 +0000 (17:10 -0500)]
Transients

8 years agoMoved common info from encoder to decoder
Jean-Marc Valin [Tue, 22 Feb 2011 02:30:56 +0000 (21:30 -0500)]
Moved common info from encoder to decoder

8 years agoPost-filter description
Jean-Marc Valin [Tue, 22 Feb 2011 02:00:59 +0000 (21:00 -0500)]
Post-filter description

8 years agoSplitting the resampler buffering between encode and decode
Jean-Marc Valin [Mon, 21 Feb 2011 19:05:10 +0000 (14:05 -0500)]
Splitting the resampler buffering between encode and decode

8 years agoBuffer pre-filling in the encoder
Jean-Marc Valin [Sun, 20 Feb 2011 17:23:48 +0000 (12:23 -0500)]
Buffer pre-filling in the encoder

8 years agoSILK can't use more than 80% of the bits in hybrid mode
Koen Vos [Thu, 17 Feb 2011 21:54:44 +0000 (16:54 -0500)]
SILK can't use more than 80% of the bits in hybrid mode

8 years agoSILK update
Jean-Marc Valin [Thu, 17 Feb 2011 21:44:21 +0000 (16:44 -0500)]
SILK update

8 years agoSquashed commit of the following:
Koen Vos [Thu, 17 Feb 2011 21:35:44 +0000 (16:35 -0500)]
Squashed commit of the following:

commit 8501776e52242de200b48841b0a19a512f78085d
Author: Jean-Marc Valin <jean-marc.valin@octasic.com>
Date:   Thu Feb 17 16:35:02 2011 -0500

    Remove useless file

commit 8fdc775812f84df1bb75aa4366760c768b101d02
Author: Koen Vos <koen.vos@skype.net>
Date:   Thu Feb 17 16:22:05 2011 -0500

    SILK update (fixes a bandwidth control bug and adds encoder prefill)

8 years agoFixes a prototype mismatch in compute_allocation()
Jean-Marc Valin [Wed, 16 Feb 2011 18:21:13 +0000 (13:21 -0500)]
Fixes a prototype mismatch in compute_allocation()

8 years agoMakes sure there's a PLC-only region in the mode transition
Jean-Marc Valin [Wed, 16 Feb 2011 05:41:04 +0000 (00:41 -0500)]
Makes sure there's a PLC-only region in the mode transition

8 years agoFixes infinite loop for frame size <= 5 ms
Jean-Marc Valin [Wed, 16 Feb 2011 01:01:14 +0000 (20:01 -0500)]
Fixes infinite loop for frame size <= 5 ms

8 years agoImproved transitions between the different modes
Jean-Marc Valin [Tue, 15 Feb 2011 19:31:21 +0000 (14:31 -0500)]
Improved transitions between the different modes

Uses the PLC to prevent glitches

8 years agofix make dist
Jean-Marc Valin [Tue, 15 Feb 2011 05:04:38 +0000 (00:04 -0500)]
fix make dist

8 years agoMakefile.am minus old .sln's
Jean-Marc Valin [Tue, 15 Feb 2011 05:04:13 +0000 (00:04 -0500)]
Makefile.am minus old .sln's

8 years agopreparing the next version
Jean-Marc Valin [Tue, 15 Feb 2011 04:58:41 +0000 (23:58 -0500)]
preparing the next version

8 years agoVersion bump
Jean-Marc Valin [Tue, 15 Feb 2011 04:57:54 +0000 (23:57 -0500)]
Version bump

8 years agoWin32 config.h
Jean-Marc Valin [Tue, 15 Feb 2011 04:14:23 +0000 (23:14 -0500)]
Win32 config.h

8 years agoCELT/Hybrid fix for in-band FEC.
Koen Vos [Tue, 15 Feb 2011 02:49:42 +0000 (21:49 -0500)]
CELT/Hybrid fix for in-band FEC.

8 years agomissing files
Jean-Marc Valin [Tue, 15 Feb 2011 02:18:08 +0000 (21:18 -0500)]
missing files

8 years agoMSVC project files
Jean-Marc Valin [Tue, 15 Feb 2011 02:10:25 +0000 (21:10 -0500)]
MSVC project files

8 years agoObsolete project files
Jean-Marc Valin [Tue, 15 Feb 2011 02:09:25 +0000 (21:09 -0500)]
Obsolete project files

8 years agoSILK and CELT updates
Jean-Marc Valin [Mon, 14 Feb 2011 21:39:02 +0000 (16:39 -0500)]
SILK and CELT updates

8 years agoRefactor SILK's use of ec_enc_patch_initial_bits().
Timothy B. Terriberry [Mon, 14 Feb 2011 21:24:07 +0000 (13:24 -0800)]
Refactor SILK's use of ec_enc_patch_initial_bits().

The return code has been eliminated in favor of using the existing
 error flag in the ec_enc struct.

8 years agoRefactor ec_enc_patch_initial_bits().
Timothy B. Terriberry [Mon, 14 Feb 2011 21:26:05 +0000 (13:26 -0800)]
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.

8 years agoCorrect a number of uninitialized value problems when end!=nbEBands. Now 8khz/20ms...
Gregory Maxwell [Mon, 14 Feb 2011 20:27:52 +0000 (15:27 -0500)]
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).

8 years agoUpdate for in-band FEC
Koen Vos [Mon, 14 Feb 2011 20:04:59 +0000 (15:04 -0500)]
Update for in-band FEC

8 years agoSILK update with LBRR and some bugfixes
Koen Vos [Mon, 14 Feb 2011 19:21:57 +0000 (14:21 -0500)]
SILK update with LBRR and some bugfixes

8 years agoImplements ec_enc_patch_initial_bits()
Timothy B. Terriberry [Mon, 14 Feb 2011 19:40:27 +0000 (14:40 -0500)]
Implements ec_enc_patch_initial_bits()

8 years agousing "end" rather than nbEBands for trim_offset[]
Jean-Marc Valin [Mon, 14 Feb 2011 18:54:59 +0000 (13:54 -0500)]
using "end" rather than nbEBands for trim_offset[]

8 years agoFixes the inversion of SPREAD_LIGHT and SPREAD_AGGRESSIVE
Jean-Marc Valin [Mon, 14 Feb 2011 18:50:20 +0000 (13:50 -0500)]
Fixes the inversion of SPREAD_LIGHT and SPREAD_AGGRESSIVE

Change the bit-stream (without causing desync)

8 years agoFix post-filter for the case where overlap!=shortMdctSize
Jean-Marc Valin [Sat, 12 Feb 2011 05:50:53 +0000 (00:50 -0500)]
Fix post-filter for the case where overlap!=shortMdctSize

8 years agoFix for layouts of 22 band and more
Jean-Marc Valin [Sat, 12 Feb 2011 02:56:11 +0000 (21:56 -0500)]
Fix for layouts of 22 band and more

8 years agoFixes post-filter for transitions between 2.5ms and other frame sizes
Jean-Marc Valin [Fri, 11 Feb 2011 21:27:27 +0000 (16:27 -0500)]
Fixes post-filter for transitions between 2.5ms and other frame sizes

8 years agoRelicensing to simplified (2-clause) BSD license
Jean-Marc Valin [Fri, 11 Feb 2011 02:02:09 +0000 (21:02 -0500)]
Relicensing to simplified (2-clause) BSD license

8 years agoMinor draft update (CELT)
Jean-Marc Valin [Thu, 10 Feb 2011 21:06:06 +0000 (16:06 -0500)]
Minor draft update (CELT)

8 years agoSome draft updates.
Gregory Maxwell [Thu, 10 Feb 2011 21:04:59 +0000 (16:04 -0500)]
Some draft updates.

In particular, this partially corrects the description of CELT to
reflect the current bitstream.

8 years agoOpus high-level encoder+decoder
Jean-Marc Valin [Thu, 10 Feb 2011 20:47:40 +0000 (15:47 -0500)]
Opus high-level encoder+decoder

8 years agoAdding a tiny amount of noise when folding to prevent/reduce numerical issues
Jean-Marc Valin [Thu, 10 Feb 2011 15:50:26 +0000 (10:50 -0500)]
Adding a tiny amount of noise when folding to prevent/reduce numerical issues

8 years agoOops, forgot COPYING and the tandem test
Jean-Marc Valin [Thu, 10 Feb 2011 04:14:03 +0000 (23:14 -0500)]
Oops, forgot COPYING and the tandem test

8 years agoRelicensing under the simplified (2-clause) BSD license
Jean-Marc Valin [Thu, 10 Feb 2011 03:37:41 +0000 (22:37 -0500)]
Relicensing under the simplified (2-clause) BSD license

Got authorization from all copyright holders

8 years agoFixes buffering issues with CELT-only mode at 2.5 ms
Jean-Marc Valin [Wed, 9 Feb 2011 18:34:03 +0000 (13:34 -0500)]
Fixes buffering issues with CELT-only mode at 2.5 ms

8 years ago5ms frame mode was not working in test_opus.
Gregory Maxwell [Wed, 9 Feb 2011 04:06:01 +0000 (23:06 -0500)]
5ms frame mode was not working in test_opus.

8 years agoCELT_SET_END_BAND_REQUEST in the decoder was performing the wrong bounds check and...
Gregory Maxwell [Wed, 9 Feb 2011 03:32:56 +0000 (22:32 -0500)]
CELT_SET_END_BAND_REQUEST in the decoder was performing the wrong bounds check and not allowing a change to fullband.

8 years agoEncoder fixes for NB/WB/SWB modes.
Gregory Maxwell [Tue, 8 Feb 2011 21:17:47 +0000 (16:17 -0500)]
Encoder fixes for NB/WB/SWB modes.

8 years agoConformance, security
Jean-Marc Valin [Tue, 8 Feb 2011 03:24:45 +0000 (22:24 -0500)]
Conformance, security

8 years agoUpdate celtclient to the new API.
Gregory Maxwell [Tue, 8 Feb 2011 02:30:40 +0000 (21:30 -0500)]
Update celtclient to the new API.

8 years agominor detail with the last patch
Jean-Marc Valin [Mon, 7 Feb 2011 01:23:19 +0000 (20:23 -0500)]
minor detail with the last patch

8 years ago16-bit int fixes.
Timothy B. Terriberry [Sun, 6 Feb 2011 21:29:00 +0000 (13:29 -0800)]
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.

8 years agoFix previous commit by still capping what the encoder will produce
Jean-Marc Valin [Sun, 6 Feb 2011 22:32:30 +0000 (17:32 -0500)]
Fix previous commit by still capping what the encoder will produce

8 years agoAllowing maxCompressedBytes to be as large as one wants
Jean-Marc Valin [Sat, 5 Feb 2011 02:50:54 +0000 (21:50 -0500)]
Allowing maxCompressedBytes to be as large as one wants

Though the encoder will still never use more than 1275 bytes

8 years agoRemove opus_enc and opus_dec from the build
Jean-Marc Valin [Fri, 4 Feb 2011 06:25:19 +0000 (01:25 -0500)]
Remove opus_enc and opus_dec from the build

8 years agoFix test_opus args count
Jean-Marc Valin [Fri, 4 Feb 2011 06:24:30 +0000 (01:24 -0500)]
Fix test_opus args count

8 years agodraft date
Jean-Marc Valin [Fri, 4 Feb 2011 06:12:56 +0000 (01:12 -0500)]
draft date

8 years agoMaking encoder-side clipping optional
Jean-Marc Valin [Fri, 4 Feb 2011 06:03:42 +0000 (01:03 -0500)]
Making encoder-side clipping optional

8 years agoCELT update
Jean-Marc Valin [Fri, 4 Feb 2011 06:12:31 +0000 (01:12 -0500)]
CELT update

8 years agoFrame size optional, defaults to 20 ms
Jean-Marc Valin [Fri, 4 Feb 2011 06:09:54 +0000 (01:09 -0500)]
Frame size optional, defaults to 20 ms

8 years agooops
Jean-Marc Valin [Fri, 4 Feb 2011 05:55:00 +0000 (00:55 -0500)]
oops

8 years agoMaking test_opus default to VBR
Jean-Marc Valin [Fri, 4 Feb 2011 05:54:00 +0000 (00:54 -0500)]
Making test_opus default to VBR

8 years agoTuning the hybrid bit-rate split
Koen Vos [Fri, 4 Feb 2011 05:49:48 +0000 (00:49 -0500)]
Tuning the hybrid bit-rate split

8 years agoBetter handling of the bandwidth
Jean-Marc Valin [Fri, 4 Feb 2011 05:38:50 +0000 (00:38 -0500)]
Better handling of the bandwidth

8 years agoBump LT_CURRENT and fix configure output messages
Jean-Marc Valin [Fri, 4 Feb 2011 05:13:06 +0000 (00:13 -0500)]
Bump LT_CURRENT and fix configure output messages