opus.git
10 years agoietf doc: stereo and other details
Jean-Marc Valin [Sun, 5 Jul 2009 02:22:18 +0000 (22:22 -0400)]
ietf doc: stereo and other details

10 years agoMaking real sure not to bust the pseudo-stack even for weird configurations
Jean-Marc Valin [Sun, 5 Jul 2009 01:58:30 +0000 (21:58 -0400)]
Making real sure not to bust the pseudo-stack even for weird configurations

10 years agoietf doc: more corrections
Jean-Marc Valin [Sun, 5 Jul 2009 01:21:00 +0000 (21:21 -0400)]
ietf doc: more corrections

10 years agoief doc: Moving allocation matrix interpolation to the "Modes" section
Jean-Marc Valin [Sat, 4 Jul 2009 11:19:34 +0000 (07:19 -0400)]
ief doc: Moving allocation matrix interpolation to the "Modes" section

10 years agoietf doc: removed duplicate paragraph in allocation section
Jean-Marc Valin [Sat, 4 Jul 2009 04:31:03 +0000 (00:31 -0400)]
ietf doc: removed duplicate paragraph in allocation section

10 years agoietf doc: An initial attempt at explaining the allocation machinery.
Gregory Maxwell [Sat, 4 Jul 2009 02:44:27 +0000 (22:44 -0400)]
ietf doc: An initial attempt at explaining the allocation machinery.

10 years agoietf doc: fixed a few minor things that were broken in the last changes
Jean-Marc Valin [Sat, 4 Jul 2009 02:24:40 +0000 (22:24 -0400)]
ietf doc: fixed a few minor things that were broken in the last changes

10 years agocopyedit
Kat Walsh [Fri, 3 Jul 2009 23:54:56 +0000 (19:54 -0400)]
copyedit

10 years agoietf doc: misc
Jean-Marc Valin [Fri, 3 Jul 2009 21:36:05 +0000 (17:36 -0400)]
ietf doc: misc

10 years agoTuning the folding gain to be higher when there's only one pulse and lower
Jean-Marc Valin [Fri, 3 Jul 2009 19:09:07 +0000 (15:09 -0400)]
Tuning the folding gain to be higher when there's only one pulse and lower
when there are many pulses.

10 years agoietf stuff: cwrs and split.
Jean-Marc Valin [Fri, 3 Jul 2009 19:00:05 +0000 (15:00 -0400)]
ietf stuff: cwrs and split.

10 years agoietf doc: s/bytes/octet/
Jean-Marc Valin [Fri, 3 Jul 2009 17:03:51 +0000 (13:03 -0400)]
ietf doc: s/bytes/octet/

10 years agoietf doc: fixing up references, removed misleading comments in rangedec.c
Jean-Marc Valin [Fri, 3 Jul 2009 14:44:16 +0000 (10:44 -0400)]
ietf doc: fixing up references, removed misleading comments in rangedec.c

10 years agoietf doc: range decoder, minor corrections
Timothy B. Terriberry [Fri, 3 Jul 2009 14:18:26 +0000 (10:18 -0400)]
ietf doc: range decoder, minor corrections

10 years agoietf doc: description of the range encoder (and a few misc fixes)
Timothy B. Terriberry [Fri, 3 Jul 2009 11:56:37 +0000 (07:56 -0400)]
ietf doc: description of the range encoder (and a few misc fixes)

10 years agoIncreasing allocation to the low-mid frequencies
Christopher Montgomery [Fri, 3 Jul 2009 06:10:17 +0000 (02:10 -0400)]
Increasing allocation to the low-mid frequencies

10 years agoietf doc: spellchecking pass
Jean-Marc Valin [Thu, 2 Jul 2009 21:34:22 +0000 (17:34 -0400)]
ietf doc: spellchecking pass

10 years agoietf doc: minor changes
Jean-Marc Valin [Thu, 2 Jul 2009 21:12:13 +0000 (17:12 -0400)]
ietf doc: minor changes

10 years agoietf doc: energy decoding, build script, misc stuff
Jean-Marc Valin [Thu, 2 Jul 2009 20:09:03 +0000 (16:09 -0400)]
ietf doc: energy decoding, build script, misc stuff

10 years agoietf doc: folding, VBR, misc
Jean-Marc Valin [Thu, 2 Jul 2009 19:04:59 +0000 (15:04 -0400)]
ietf doc: folding, VBR, misc

10 years agoietf doc: more source code formatting changes, got rid of float_cast.h
Jean-Marc Valin [Thu, 2 Jul 2009 17:28:55 +0000 (13:28 -0400)]
ietf doc: more source code formatting changes, got rid of float_cast.h

10 years agoietf doc: cleaning up the build
Jean-Marc Valin [Thu, 2 Jul 2009 14:59:07 +0000 (10:59 -0400)]
ietf doc: cleaning up the build

10 years agoSome unusual frame sizes could run the pseudo-stack out of memory in fixed point...
Gregory Maxwell [Wed, 1 Jul 2009 23:51:02 +0000 (19:51 -0400)]
Some unusual frame sizes could run the pseudo-stack out of memory in fixed point mode.

10 years agofixed-point: fixing two overflows that didn't really affect quality
Jean-Marc Valin [Wed, 1 Jul 2009 13:59:21 +0000 (09:59 -0400)]
fixed-point: fixing two overflows that didn't really affect quality

10 years agoFix compilation of test cases with fixed-debug enabled
Gregory Maxwell [Wed, 1 Jul 2009 07:50:44 +0000 (03:50 -0400)]
Fix compilation of test cases with fixed-debug enabled

10 years agofixing a floating point bug for very small signals
Jean-Marc Valin [Wed, 1 Jul 2009 05:27:48 +0000 (01:27 -0400)]
fixing a floating point bug for very small signals

10 years agoietf doc: misc
Jean-Marc Valin [Wed, 1 Jul 2009 03:54:18 +0000 (23:54 -0400)]
ietf doc: misc

10 years agoUpdate valgrind support to match the latest valgrind API.
Gregory Maxwell [Tue, 30 Jun 2009 05:06:04 +0000 (01:06 -0400)]
Update valgrind support to match the latest valgrind API.
Adjust valgrind mode to insert padding between every allocation to increase sensitivity.

10 years agoietf doc: range coder
Jean-Marc Valin [Tue, 30 Jun 2009 19:27:06 +0000 (15:27 -0400)]
ietf doc: range coder

10 years agoFor some frame sizes there can be 5 shorts in a frame.
Gregory Maxwell [Tue, 30 Jun 2009 15:29:42 +0000 (11:29 -0400)]
For some frame sizes there can be 5 shorts in a frame.
Correct an out of bounds access in this case.

10 years agoThis fixes a potential assertion failure with some very weak signals
Jean-Marc Valin [Tue, 30 Jun 2009 14:31:00 +0000 (10:31 -0400)]
This fixes a potential assertion failure with some very weak signals

10 years agoietf doc: decoder overview (ASCII art)
Jean-Marc Valin [Tue, 30 Jun 2009 03:55:21 +0000 (23:55 -0400)]
ietf doc: decoder overview (ASCII art)

10 years agoietf doc: encoder overview (ASCII art)
Jean-Marc Valin [Tue, 30 Jun 2009 03:42:20 +0000 (23:42 -0400)]
ietf doc: encoder overview (ASCII art)

10 years agoietf doc: pitch description
Jean-Marc Valin [Mon, 29 Jun 2009 21:35:41 +0000 (17:35 -0400)]
ietf doc: pitch description

10 years agoFixes for celt_header_to_packet / celtdec for bigendian systems.
Gregory Maxwell [Mon, 29 Jun 2009 18:03:17 +0000 (14:03 -0400)]
Fixes for celt_header_to_packet / celtdec for bigendian systems.
Add some paranoid validation to the header functions.

10 years agoNote some more platforms where float-approx is tested, fix a bug in the prediction...
Gregory Maxwell [Mon, 29 Jun 2009 16:48:57 +0000 (12:48 -0400)]
Note some more platforms where float-approx is tested, fix a bug in the prediction ctl,
and remove some dead code from bands.c.

10 years agoAdditional mathops.h tests.
Gregory Maxwell [Sun, 28 Jun 2009 23:51:30 +0000 (19:51 -0400)]
Additional mathops.h tests.

10 years agoietf doc: final fine bits, some fixes to the references
Jean-Marc Valin [Sun, 28 Jun 2009 18:46:41 +0000 (14:46 -0400)]
ietf doc: final fine bits, some fixes to the references

10 years agoNumerous autoconf changes. Configure option for FLOAT_APPROX
Gregory Maxwell [Wed, 24 Jun 2009 20:43:33 +0000 (16:43 -0400)]
Numerous autoconf changes. Configure option for FLOAT_APPROX

10 years agoBump version to 0.6.0 and increase bitstream version.
Jean-Marc Valin [Wed, 24 Jun 2009 01:23:18 +0000 (21:23 -0400)]
Bump version to 0.6.0 and increase bitstream version.

10 years agoGives an error when trying to create a stereo mode with DISABLE_STEREO defined.
Jean-Marc Valin [Sun, 21 Jun 2009 13:47:51 +0000 (09:47 -0400)]
Gives an error when trying to create a stereo mode with DISABLE_STEREO defined.

10 years agoMinor simplification to the transient code
Jean-Marc Valin [Fri, 19 Jun 2009 03:33:04 +0000 (23:33 -0400)]
Minor simplification to the transient code

10 years agoSimplifies the stereo mixing code, throwing away some old code.
Jean-Marc Valin [Fri, 19 Jun 2009 03:18:39 +0000 (23:18 -0400)]
Simplifies the stereo mixing code, throwing away some old code.

10 years agoietf doc: misc corrections
Jean-Marc Valin [Thu, 18 Jun 2009 15:20:42 +0000 (11:20 -0400)]
ietf doc: misc corrections

10 years agoFixing a few bugs introduced in the energy interleaving changes and due to
Jean-Marc Valin [Thu, 18 Jun 2009 02:39:46 +0000 (22:39 -0400)]
Fixing a few bugs introduced in the energy interleaving changes and due to
side effects of "continue" statements.

10 years agoInterleaving the left and right final fine energy bits
Jean-Marc Valin [Thu, 18 Jun 2009 01:24:33 +0000 (21:24 -0400)]
Interleaving the left and right final fine energy bits

10 years agoInterleaving the left and right fine energy
Jean-Marc Valin [Thu, 18 Jun 2009 00:37:45 +0000 (20:37 -0400)]
Interleaving the left and right fine energy

10 years agoietf doc: security, VBR, stereo
Jean-Marc Valin [Wed, 17 Jun 2009 21:47:16 +0000 (17:47 -0400)]
ietf doc: security, VBR, stereo

10 years agointealeaving the left and right coarse energy
Jean-Marc Valin [Wed, 17 Jun 2009 12:02:36 +0000 (08:02 -0400)]
intealeaving the left and right coarse energy

10 years agoForced intra now overrides intra avoidance at low rate. Also, using the number
Jean-Marc Valin [Wed, 17 Jun 2009 02:27:12 +0000 (22:27 -0400)]
Forced intra now overrides intra avoidance at low rate. Also, using the number
of bands as criterion for auto-intra disabling.

10 years agoietf doc: stereo description
Jean-Marc Valin [Tue, 16 Jun 2009 20:45:23 +0000 (16:45 -0400)]
ietf doc: stereo description

10 years agoMinor stuff: preventing float underflow in celt_exp2(), preventing the use of
Jean-Marc Valin [Tue, 16 Jun 2009 02:40:06 +0000 (22:40 -0400)]
Minor stuff: preventing float underflow in celt_exp2(), preventing the use of
intra energy for low bitrates, and a bit of very high bitrate tuning

10 years agoThis fixes a folding issue with stereo
Jean-Marc Valin [Mon, 15 Jun 2009 15:22:01 +0000 (11:22 -0400)]
This fixes a folding issue with stereo

10 years agoMore de-interleaving: denormalised MDCT no longer stored with interleaved
Jean-Marc Valin [Sun, 14 Jun 2009 18:05:19 +0000 (14:05 -0400)]
More de-interleaving: denormalised MDCT no longer stored with interleaved
channels. Fixed two stereo bugs in the process: one in the handling of
mdct_weight_shift and one in the PLC.

10 years agoremoving redundant calls to exp2()
Jean-Marc Valin [Sun, 14 Jun 2009 16:31:33 +0000 (12:31 -0400)]
removing redundant calls to exp2()

10 years agoSimplifying the stereo energy quantisation functions now that energy is
Jean-Marc Valin [Sun, 14 Jun 2009 13:29:51 +0000 (09:29 -0400)]
Simplifying the stereo energy quantisation functions now that energy is
de-interleaved

10 years agoNow storing the band energies in de-interleaved format when doing stereo
Jean-Marc Valin [Sun, 14 Jun 2009 13:19:51 +0000 (09:19 -0400)]
Now storing the band energies in de-interleaved format when doing stereo

10 years agoremoving redundant calls to log2()
Jean-Marc Valin [Sun, 14 Jun 2009 02:59:43 +0000 (22:59 -0400)]
removing redundant calls to log2()

10 years agofloat approximations for log2() and exp2()
Jean-Marc Valin [Sun, 14 Jun 2009 02:30:46 +0000 (22:30 -0400)]
float approximations for log2() and exp2()

10 years agoietf doc: characteristics, bit-stream
Jean-Marc Valin [Fri, 12 Jun 2009 21:41:08 +0000 (17:41 -0400)]
ietf doc: characteristics, bit-stream

10 years agoietf doc: PVQ search
Jean-Marc Valin [Fri, 12 Jun 2009 20:52:44 +0000 (16:52 -0400)]
ietf doc: PVQ search

10 years agoietf doc: better description of the bitstream
Jean-Marc Valin [Fri, 12 Jun 2009 15:49:28 +0000 (11:49 -0400)]
ietf doc: better description of the bitstream

10 years agoietf doc: fine energy
Jean-Marc Valin [Thu, 11 Jun 2009 21:40:37 +0000 (17:40 -0400)]
ietf doc: fine energy

10 years agoBetter ebits rounding and making it possible to add remaining ebits even to
Jean-Marc Valin [Thu, 11 Jun 2009 02:46:27 +0000 (22:46 -0400)]
Better ebits rounding and making it possible to add remaining ebits even to
bands that weren't rounded down.

10 years agoietf doc: synthesis
Jean-Marc Valin [Wed, 10 Jun 2009 21:48:39 +0000 (17:48 -0400)]
ietf doc: synthesis

10 years agoPVQ doc
Jean-Marc Valin [Tue, 9 Jun 2009 21:44:02 +0000 (17:44 -0400)]
PVQ doc

10 years agoAdding extra fine bits only when we have rounded down in the allocation
Jean-Marc Valin [Wed, 10 Jun 2009 12:08:55 +0000 (08:08 -0400)]
Adding extra fine bits only when we have rounded down in the allocation

10 years agocwrs documentation
Jean-Marc Valin [Tue, 9 Jun 2009 18:17:05 +0000 (14:17 -0400)]
cwrs documentation

10 years agoFolding, coarse energy, source cleanup
Jean-Marc Valin [Tue, 9 Jun 2009 15:56:59 +0000 (11:56 -0400)]
Folding, coarse energy, source cleanup

10 years agoThe 010101 end of stream pattern is no longer needed now that we use the
Jean-Marc Valin [Tue, 9 Jun 2009 04:57:00 +0000 (00:57 -0400)]
The 010101 end of stream pattern is no longer needed now that we use the
remaining bits for fine energy

10 years agoThis makes it possible to use the bits left after PVQ for fine energy.
Jean-Marc Valin [Tue, 9 Jun 2009 04:10:32 +0000 (00:10 -0400)]
This makes it possible to use the bits left after PVQ for fine energy.

10 years agoIllustrating the bit-stream
Jean-Marc Valin [Mon, 8 Jun 2009 21:45:00 +0000 (17:45 -0400)]
Illustrating the bit-stream

10 years agoDescribing pitch and short blocks
Jean-Marc Valin [Mon, 8 Jun 2009 20:50:34 +0000 (16:50 -0400)]
Describing pitch and short blocks

10 years agoDefining mode flags
Jean-Marc Valin [Mon, 8 Jun 2009 18:27:08 +0000 (14:27 -0400)]
Defining mode flags

10 years agoAdd support for interframe prediction control in celtenc.
Gregory Maxwell [Fri, 5 Jun 2009 19:01:54 +0000 (15:01 -0400)]
Add support for interframe prediction control in celtenc.

10 years agoMerge commit 'origin/master'
Jean-Marc Valin [Mon, 8 Jun 2009 13:33:47 +0000 (09:33 -0400)]
Merge commit 'origin/master'

10 years agoMinor simplification to the fine energy code
Jean-Marc Valin [Mon, 8 Jun 2009 03:54:22 +0000 (23:54 -0400)]
Minor simplification to the fine energy code

10 years agoThis simplifies the energy quantisation by converting to the log2() scale
Jean-Marc Valin [Sun, 7 Jun 2009 17:01:25 +0000 (13:01 -0400)]
This simplifies the energy quantisation by converting to the log2() scale
directly instead of converting to dB and later dividing by 6.

10 years agoIndent options
Jean-Marc Valin [Fri, 5 Jun 2009 22:10:17 +0000 (18:10 -0400)]
Indent options

10 years agoMerge commit 'greg/master'
Jean-Marc Valin [Fri, 5 Jun 2009 21:21:17 +0000 (17:21 -0400)]
Merge commit 'greg/master'

Conflicts:
libcelt/celt.c
libcelt/celt.h

10 years agoIETF doc update, including better source code formatting
Jean-Marc Valin [Fri, 5 Jun 2009 21:17:25 +0000 (17:17 -0400)]
IETF doc update, including better source code formatting

10 years agoFor celt_encoder_ctl CELT_SET_LTP is replaced with CELT_SET_PREDICTION
Gregory Maxwell [Fri, 5 Jun 2009 18:05:51 +0000 (14:05 -0400)]
For celt_encoder_ctl CELT_SET_LTP is replaced with CELT_SET_PREDICTION
which allows the caller to request that frames be independent.

10 years agoFix non-C90 declaration after statement
Jean-Marc Valin [Fri, 5 Jun 2009 15:07:31 +0000 (11:07 -0400)]
Fix non-C90 declaration after statement

10 years agoImproving code conversion to publishable form.
Jean-Marc Valin [Fri, 5 Jun 2009 04:02:56 +0000 (00:02 -0400)]
Improving code conversion to publishable form.

10 years agoHandle malloc failure in mode_create gracefully without leaking memory.
Gregory Maxwell [Thu, 4 Jun 2009 21:17:35 +0000 (17:17 -0400)]
Handle malloc failure in mode_create gracefully without leaking memory.

10 years agoAdd paranoid checking for the validity of the encoder and the decoder
Gregory Maxwell [Thu, 4 Jun 2009 19:15:34 +0000 (15:15 -0400)]
Add paranoid checking for the validity of the encoder and the decoder
state before using it. Handle malloc failures for the encoder and
decoder setup gracefully and without leaks.

10 years agoFixes for the tests in pseudo-stack mode.
Gregory Maxwell [Thu, 4 Jun 2009 00:02:53 +0000 (20:02 -0400)]
Fixes for the tests in pseudo-stack mode.

10 years agoUpdated scripts for converting the source code to something more publishable
Jean-Marc Valin [Thu, 4 Jun 2009 20:39:38 +0000 (16:39 -0400)]
Updated scripts for converting the source code to something more publishable

10 years agoAdd get_mode CTL for the encoder and decoder.
Gregory Maxwell [Wed, 3 Jun 2009 17:37:45 +0000 (13:37 -0400)]
Add get_mode CTL for the encoder and decoder.

10 years agoRemoved support for band-per-band stereo_mode that was never really used
Jean-Marc Valin [Wed, 3 Jun 2009 00:21:53 +0000 (20:21 -0400)]
Removed support for band-per-band stereo_mode that was never really used

10 years agoUpdating DISABLE_STEREO to the new stereo code (i.e. disabling more stuff)
Jean-Marc Valin [Wed, 3 Jun 2009 00:07:25 +0000 (20:07 -0400)]
Updating DISABLE_STEREO to the new stereo code (i.e. disabling more stuff)

10 years agoDisabling K>128 until it can be shown to be useful.
Jean-Marc Valin [Tue, 2 Jun 2009 12:02:41 +0000 (08:02 -0400)]
Disabling K>128 until it can be shown to be useful.

10 years agoIt is no longer necessary to have a minimum of one bit for fine energy
Jean-Marc Valin [Tue, 2 Jun 2009 11:59:32 +0000 (07:59 -0400)]
It is no longer necessary to have a minimum of one bit for fine energy
allocation

10 years agoAdding a decision mechanism for turning folding on or off depending on the
Jean-Marc Valin [Tue, 2 Jun 2009 11:56:19 +0000 (07:56 -0400)]
Adding a decision mechanism for turning folding on or off depending on the
signal characteristics

10 years agoAdd a mode_info call to obtain the sampling rate of the current mode.
Gregory Maxwell [Sat, 30 May 2009 21:04:02 +0000 (17:04 -0400)]
Add a mode_info call to obtain the sampling rate of the current mode.

10 years agoMaking the modified transient code work with stereo as well
Jean-Marc Valin [Sat, 30 May 2009 14:09:06 +0000 (10:09 -0400)]
Making the modified transient code work with stereo as well

10 years agoFix for a mode memory leak -- was still allocating memory for the energy
Jean-Marc Valin [Sat, 30 May 2009 13:50:47 +0000 (09:50 -0400)]
Fix for a mode memory leak -- was still allocating memory for the energy
allocator which was removed a while ago.

10 years agoNew transient handling code that weights the MDCTs directly unless there's
Jean-Marc Valin [Sat, 30 May 2009 02:14:20 +0000 (22:14 -0400)]
New transient handling code that weights the MDCTs directly unless there's
a really big amplitude change, in which case the original time-domain window
is used.

10 years ago1024 pulses ought to be enough for everybody
Jean-Marc Valin [Wed, 27 May 2009 04:05:27 +0000 (00:05 -0400)]
1024 pulses ought to be enough for everybody

10 years agoMinor optimisation -- using do-while() instead of for() in isqrt32()
Timothy B. Terriberry [Wed, 27 May 2009 03:15:05 +0000 (23:15 -0400)]
Minor optimisation -- using do-while() instead of for() in isqrt32()