opus.git
3 years agomerge back in the LTP gain safety limiter
Koen Vos [Fri, 3 Jun 2016 06:18:03 +0000 (14:18 +0800)]
merge back in the LTP gain safety limiter

3 years agoCBR: Using the same gain increase for fixed-point as for float
Jean-Marc Valin [Fri, 3 Jun 2016 19:26:47 +0000 (15:26 -0400)]
CBR: Using the same gain increase for fixed-point as for float

3 years agoOops, edited the wrong comment in the previous commit
Jean-Marc Valin [Thu, 2 Jun 2016 23:08:01 +0000 (19:08 -0400)]
Oops, edited the wrong comment in the previous commit

3 years agoRe-tuning compute_equiv_rate()
Jean-Marc Valin [Thu, 2 Jun 2016 22:15:00 +0000 (18:15 -0400)]
Re-tuning compute_equiv_rate()

3 years agoGetting rid of the SILK penalty for hybrid CBR.
Jean-Marc Valin [Thu, 2 Jun 2016 22:11:33 +0000 (18:11 -0400)]
Getting rid of the SILK penalty for hybrid CBR.

That was likely a mistake from a misunderstanding on the SILK bit allocation

3 years agoImproving CBR for hybrid mode
Jean-Marc Valin [Thu, 2 Jun 2016 21:54:14 +0000 (17:54 -0400)]
Improving CBR for hybrid mode

Hybrid CBR now simply forces the SILK CBR rate to the "target" value. Also,
we're getting rid of the -2 kb/s offset for CBR, which appeared to be harmful.
In the case of hybrid constrained VBR, the cap is computed in the same way
as the target.

3 years agoMaking the encoder more aggressive at using wider bandwidths
Jean-Marc Valin [Thu, 2 Jun 2016 19:50:22 +0000 (15:50 -0400)]
Making the encoder more aggressive at using wider bandwidths

3 years agocomment about reduced codelength component in LTP quantizer error metric
Koen Vos [Thu, 2 Jun 2016 15:03:27 +0000 (23:03 +0800)]
comment about reduced codelength component in LTP quantizer error metric

3 years agoavoid double if statement for finding best quantized LTP coefs
Koen Vos [Thu, 2 Jun 2016 14:35:58 +0000 (22:35 +0800)]
avoid double if statement for finding best quantized LTP coefs

3 years agoincrease NSQ decision delay from 32 to 40
Koen Vos [Wed, 1 Jun 2016 13:49:11 +0000 (21:49 +0800)]
increase NSQ decision delay from 32 to 40

3 years agoreduced noise floor in noise shaping analysis by 2 dB
Koen Vos [Wed, 1 Jun 2016 08:29:47 +0000 (16:29 +0800)]
reduced noise floor in noise shaping analysis by 2 dB

3 years agoincrease order of noise shaping filter
Koen Vos [Wed, 1 Jun 2016 08:10:57 +0000 (16:10 +0800)]
increase order of noise shaping filter

3 years agomore conservative scaling of LTP corrs; remove assert that checks for negative residu...
Koen Vos [Wed, 1 Jun 2016 05:14:32 +0000 (13:14 +0800)]
more conservative scaling of LTP corrs; remove assert that checks for negative residual energy; discard CB entries leading to such negative energies

3 years agoClean up: alignment of comments
Koen Vos [Sun, 21 Feb 2016 15:10:46 +0000 (23:10 +0800)]
Clean up: alignment of comments

3 years agoClean up: replace tabs by spaces
Koen Vos [Sun, 21 Feb 2016 08:21:03 +0000 (16:21 +0800)]
Clean up: replace tabs by spaces

3 years agoremoved prefilter
Koen Vos [Sun, 21 Feb 2016 03:34:11 +0000 (11:34 +0800)]
removed prefilter

The NSQ SSE optimizations are disabled for now because they need to be updated

3 years agoslight clean up
Koen Vos [Sat, 20 Feb 2016 13:29:03 +0000 (21:29 +0800)]
slight clean up

3 years agoundo some loop unrolling
Koen Vos [Fri, 19 Feb 2016 07:38:31 +0000 (15:38 +0800)]
undo some loop unrolling

3 years agopitch analysis (in FIX) now scales the input down at the start, instead of at every...
Koen Vos [Fri, 19 Feb 2016 03:11:20 +0000 (11:11 +0800)]
pitch analysis (in FIX) now scales the input down at the start, instead of at every stage

3 years agominor clean up of pointer offsets
Koen Vos [Fri, 19 Feb 2016 03:04:14 +0000 (11:04 +0800)]
minor clean up of pointer offsets

3 years agosimplified computation of LTP coefs
Koen Vos [Thu, 18 Feb 2016 13:01:43 +0000 (21:01 +0800)]
simplified computation of LTP coefs

3 years agoAttenuate SILK PLC gain only for unvoiced speech
Felicia Lim [Wed, 30 Mar 2016 13:46:59 +0000 (15:46 +0200)]
Attenuate SILK PLC gain only for unvoiced speech

3 years agoWe should now be able to be less conservative when using CBR
Jean-Marc Valin [Sun, 17 Apr 2016 07:20:46 +0000 (03:20 -0400)]
We should now be able to be less conservative when using CBR

3 years agoMakes the encoder more aggressive about meeting the rate target
Jean-Marc Valin [Wed, 20 Apr 2016 07:37:32 +0000 (03:37 -0400)]
Makes the encoder more aggressive about meeting the rate target

3 years agoUsing more fine-grained complexity settings for SILK
Jean-Marc Valin [Mon, 18 Apr 2016 17:39:41 +0000 (13:39 -0400)]
Using more fine-grained complexity settings for SILK

Only complexity 0-1 now uses the plain non-delayed-decision NSQ since its
quality is pretty bad. Previously 0-3 were using that plain NSQ.

3 years agoFixing bandwidth selection hysteresis
Jean-Marc Valin [Wed, 1 Jun 2016 00:49:41 +0000 (20:49 -0400)]
Fixing bandwidth selection hysteresis

Previously, the bandwidth detection could (e.g.) change the bandwidth
from fullband to superwideband, and the hysteresis would then cause
bandwidth to be stuck in superwideband.

3 years agoBoosting the high-band bitrate on transients for hybrid mode
Jean-Marc Valin [Tue, 31 May 2016 21:54:20 +0000 (17:54 -0400)]
Boosting the high-band bitrate on transients for hybrid mode

3 years agoFixes signed integer overlof in silk_ADD_POS_SAT32()
Jean-Marc Valin [Tue, 19 Apr 2016 20:21:08 +0000 (16:21 -0400)]
Fixes signed integer overlof in silk_ADD_POS_SAT32()

Removes unused 64-bit version

3 years agoTurn on DTX only when the noise is sufficiently quiet
Felicia Lim [Mon, 16 May 2016 13:52:44 +0000 (15:52 +0200)]
Turn on DTX only when the noise is sufficiently quiet

Computes a pseudo SNR as the ratio between the running peak signal
energy to instantaneous noise energy. DTX is turned on only if this is
higher than a pre-determined threshold.

Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
3 years agoNew DTX that works in all modes (SILK/CELT/HYBRID)
Felicia Lim [Mon, 16 May 2016 13:29:53 +0000 (15:29 +0200)]
New DTX that works in all modes (SILK/CELT/HYBRID)

A frame is marked as valid for DTX if it contains noise or only digital
silence. As before, there is an overhang period of 200 ms and a maximum
consecutive DTX period of 400 ms.

If the new DTX cannot be used because of the complexity setting and
sampling frequency chosen, the SILK DTX will be used instead.

Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
3 years agoSkip analysis if the frame contains only digital silence
Felicia Lim [Mon, 16 May 2016 13:11:10 +0000 (15:11 +0200)]
Skip analysis if the frame contains only digital silence

Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
3 years agoNLSF_VQ_MAX_SURVIVORS is no longer useful
Jean-Marc Valin [Sun, 22 May 2016 04:52:59 +0000 (00:52 -0400)]
NLSF_VQ_MAX_SURVIVORS is no longer useful

3 years agotake advantage of more efficient NLSF quantization by reducing number of survivors...
Koen Vos [Sun, 21 Feb 2016 06:27:11 +0000 (14:27 +0800)]
take advantage of more efficient NLSF quantization by reducing number of survivors in search

JMV: edited to be a little more conservative

3 years agoNLSF_del_dec_quant minor clean up
Koen Vos [Sun, 21 Feb 2016 05:52:21 +0000 (13:52 +0800)]
NLSF_del_dec_quant minor clean up

3 years agoNLSF_encode now also uses NLSF weights from table
Koen Vos [Sun, 21 Feb 2016 05:47:20 +0000 (13:47 +0800)]
NLSF_encode now also uses NLSF weights from table

3 years agoNLSF VQ now uses absolute error, and prediction
Koen Vos [Sun, 21 Feb 2016 05:31:19 +0000 (13:31 +0800)]
NLSF VQ now uses absolute error, and prediction

3 years agoNLSF decoding now uses tables for NLSF weights
Koen Vos [Sun, 21 Feb 2016 05:16:46 +0000 (13:16 +0800)]
NLSF decoding now uses tables for NLSF weights

3 years agoImplement sum_sqr_shift() using two passes with no branch inside the loops
Jean-Marc Valin [Fri, 19 Feb 2016 02:44:09 +0000 (10:44 +0800)]
Implement sum_sqr_shift() using two passes with no branch inside the loops

Slightly slower on x86, about the same speed on ARMv7, should be faster on
DSPs.

3 years agoSimplifying fast_atan2f()
Jean-Marc Valin [Wed, 11 May 2016 23:17:50 +0000 (19:17 -0400)]
Simplifying fast_atan2f()

3 years agoQuality: Increase CELT rate for voiced frames in hybrid mode
Jean-Marc Valin [Sat, 23 Apr 2016 04:34:53 +0000 (00:34 -0400)]
Quality: Increase CELT rate for voiced frames in hybrid mode

3 years agoBetter modeling of the effect of CBR and complexity
Jean-Marc Valin [Wed, 27 Apr 2016 08:04:50 +0000 (04:04 -0400)]
Better modeling of the effect of CBR and complexity

Should be able to make better mode/bandwidth decisions when CBR/complexity
are involved.

3 years agoRe-enabling high-band attenuation for hybrid mode
Jean-Marc Valin [Fri, 22 Apr 2016 20:13:46 +0000 (16:13 -0400)]
Re-enabling high-band attenuation for hybrid mode

The new attenuation is much smaller than previously.

3 years agoQuality: Retrained classifier MLP with better data
Jean-Marc Valin [Thu, 7 Jan 2016 20:49:36 +0000 (15:49 -0500)]
Quality: Retrained classifier MLP with better data

New MLP doesn't attempt to classify silence as speech/music

3 years agoUsing "hybrid" flag instead of "start!=0"
Jean-Marc Valin [Fri, 25 Dec 2015 18:12:58 +0000 (13:12 -0500)]
Using "hybrid" flag instead of "start!=0"

3 years agoQuality: Making the encoder more aggressive at using wider bandwidths
Jean-Marc Valin [Thu, 24 Dec 2015 19:45:53 +0000 (14:45 -0500)]
Quality: Making the encoder more aggressive at using wider bandwidths

3 years agoQuality: Removes high-band attenuation in hybrid mode -- at least for now
Jean-Marc Valin [Fri, 25 Dec 2015 18:40:54 +0000 (13:40 -0500)]
Quality: Removes high-band attenuation in hybrid mode -- at least for now

3 years agoQuality: Adds SILK rate interpolation function
Jean-Marc Valin [Thu, 24 Dec 2015 18:03:28 +0000 (13:03 -0500)]
Quality: Adds SILK rate interpolation function

3 years agoQuality: Makes real CELT VBR work for hybrid too
Jean-Marc Valin [Sun, 6 Dec 2015 15:50:15 +0000 (10:50 -0500)]
Quality: Makes real CELT VBR work for hybrid too

3 years agoQuality: Forces trim to 5 on hybrid mode
Jean-Marc Valin [Sat, 5 Dec 2015 19:31:54 +0000 (14:31 -0500)]
Quality: Forces trim to 5 on hybrid mode

This saves bits and makes more sense since alloc_trim_analysis()
mostly looks at the lower bands that are coded with SILK

3 years agoQuality: Encoding music in full-band stereo from 32 kb/s
Jean-Marc Valin [Sat, 28 Nov 2015 00:10:24 +0000 (19:10 -0500)]
Quality: Encoding music in full-band stereo from 32 kb/s

Gradual downmix now happens in the 24 kb/s to 32 kb/s range

3 years agoQuality: removes VBR attenuation at low bitrate
Jean-Marc Valin [Tue, 17 Nov 2015 04:03:17 +0000 (23:03 -0500)]
Quality: removes VBR attenuation at low bitrate

Turns out that even low bitrates benefit from VBR

3 years agoAdds checksum for 1.1.3
Jean-Marc Valin [Fri, 15 Jul 2016 20:03:47 +0000 (16:03 -0400)]
Adds checksum for 1.1.3

3 years agoSlightly increase the safety margin for opus_pcm_soft_clip() v1.1.3
Jean-Marc Valin [Fri, 15 Jul 2016 18:29:16 +0000 (14:29 -0400)]
Slightly increase the safety margin for opus_pcm_soft_clip()

No values outside of +/-1 detected now.

3 years agoFixes opus_pcm_soft_clip() returning values slightly larger than +/-1 with -ffast...
Jean-Marc Valin [Fri, 15 Jul 2016 14:57:21 +0000 (10:57 -0400)]
Fixes opus_pcm_soft_clip() returning values slightly larger than +/-1 with -ffast-math

3 years agoApply 02f3ac225f99 fix for divide-by-zero to the SSE4.1 version of silk_burg_modified()
Jean-Marc Valin [Fri, 15 Jul 2016 14:55:59 +0000 (10:55 -0400)]
Apply 02f3ac225f99 fix for divide-by-zero to the SSE4.1 version of silk_burg_modified()

3 years agoFix RTCD on ARM with Neon Intrinsics but not ASM.
Jonathan Lennox [Fri, 8 Jul 2016 22:30:19 +0000 (18:30 -0400)]
Fix RTCD on ARM with Neon Intrinsics but not ASM.

Notably, ARM floating-point build.

This maintains the invariant that we don't use later instruction
 sets if the OS claims an earlier one is not available.
However, it does not update configure to ensure that there is
 build support for all earlier instruction sets if NEON build
 support is enabled (though I am not aware of a build toolchain
 where this is actually a problem).

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agobump static PACKAGE_VERSION string in version.mk
Jean-Marc Valin [Fri, 8 Jul 2016 18:21:55 +0000 (14:21 -0400)]
bump static PACKAGE_VERSION string in version.mk

3 years agobump OPUS_LT_REVISION
Jean-Marc Valin [Fri, 8 Jul 2016 18:20:05 +0000 (14:20 -0400)]
bump OPUS_LT_REVISION

3 years agoPackets indicating DTX may be up to 2 bytes
Mark Harris [Fri, 8 Jul 2016 18:08:08 +0000 (11:08 -0700)]
Packets indicating DTX may be up to 2 bytes

3 years agoTest common configure switches on travis.
Ralph Giles [Fri, 8 Jul 2016 17:23:24 +0000 (10:23 -0700)]
Test common configure switches on travis.

Add a matrix build testing the most common options.

I don't see a way to also invoke Makefile.unix without
wrapping everything in a script, so leave that to jenkins
for now.

3 years agoAdd a minimal travis continuous integration script.
Ralph Giles [Fri, 8 Jul 2016 17:10:24 +0000 (10:10 -0700)]
Add a minimal travis continuous integration script.

3 years agoMakes CBR calculations more accurate for 60-ms frames
Jean-Marc Valin [Thu, 7 Jul 2016 15:54:10 +0000 (11:54 -0400)]
Makes CBR calculations more accurate for 60-ms frames

3 years agoRespect CBR even at ridiculourly low rate
Jean-Marc Valin [Thu, 7 Jul 2016 06:33:58 +0000 (02:33 -0400)]
Respect CBR even at ridiculourly low rate

3 years agoPrevents an invalid ToC to be generated at ridiculously low rate
Jean-Marc Valin [Thu, 7 Jul 2016 05:23:11 +0000 (01:23 -0400)]
Prevents an invalid ToC to be generated at ridiculously low rate

3 years agomake len==0 return OPUS_INVALID_PACKET rather than OPUS_BAD_ARG for opus_packet_parse...
Jean-Marc Valin [Thu, 7 Jul 2016 02:25:59 +0000 (22:25 -0400)]
make len==0 return OPUS_INVALID_PACKET rather than OPUS_BAD_ARG for opus_packet_parse_impl()

len<0 still returns OPUS_BAD_ARG

3 years agoCheck for len<1 in opus_packet_parse_impl()
Jean-Marc Valin [Thu, 7 Jul 2016 01:41:12 +0000 (21:41 -0400)]
Check for len<1 in opus_packet_parse_impl()

Rather than read invalid memory

3 years agoRemove tabs from source code.
Timothy B. Terriberry [Sat, 18 Jun 2016 17:05:57 +0000 (10:05 -0700)]
Remove tabs from source code.

There are no tabs in source code.

3 years agoAdd Aarch64 intrinsic for SIG2WORD16.
Jonathan Lennox [Sat, 21 Nov 2015 04:03:59 +0000 (23:03 -0500)]
Add Aarch64 intrinsic for SIG2WORD16.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoAdd Aarch64 intrinsics for saturated add/subtract.
Jonathan Lennox [Sat, 21 Nov 2015 04:03:58 +0000 (23:03 -0500)]
Add Aarch64 intrinsics for saturated add/subtract.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoAdd configure check for Aarch64-specific Neon intrinsics.
Jonathan Lennox [Sat, 21 Nov 2015 04:03:57 +0000 (23:03 -0500)]
Add configure check for Aarch64-specific Neon intrinsics.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoClean up formatting of configure output for ARM intrinsics detection.
Jonathan Lennox [Sat, 21 Nov 2015 04:03:56 +0000 (23:03 -0500)]
Clean up formatting of configure output for ARM intrinsics detection.

This makes it match the formatting of the output for ARM assembly
better, and removes some redundant repetition of the word
"intrinsics".  It also fixes the output if a compiler supports RTCD
for Neon intrinsics but not assembly.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoAdd OPUS_FAST_INT64 definition of silk_SMULWT.
Jonathan Lennox [Sat, 21 Nov 2015 04:03:55 +0000 (23:03 -0500)]
Add OPUS_FAST_INT64 definition of silk_SMULWT.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoExplicitly cast results of silk OPUS_FAST_INT64 macros back to opus_int32.
Jonathan Lennox [Sat, 21 Nov 2015 04:03:54 +0000 (23:03 -0500)]
Explicitly cast results of silk OPUS_FAST_INT64 macros back to opus_int32.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoAdd OPUS_FAST_INT64 flavors of celt/fixed_generic.h macros.
Jonathan Lennox [Sat, 21 Nov 2015 04:03:53 +0000 (23:03 -0500)]
Add OPUS_FAST_INT64 flavors of celt/fixed_generic.h macros.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoMove OPUS_FAST_INT64 definition to celt/arch.h.
Jonathan Lennox [Sat, 21 Nov 2015 04:03:52 +0000 (23:03 -0500)]
Move OPUS_FAST_INT64 definition to celt/arch.h.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoClean up some intrinsics-related wording in configure.
Jonathan Lennox [Sat, 21 Nov 2015 04:03:51 +0000 (23:03 -0500)]
Clean up some intrinsics-related wording in configure.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoEnable intrinsics by default.
Jonathan Lennox [Sat, 21 Nov 2015 04:03:01 +0000 (23:03 -0500)]
Enable intrinsics by default.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoAdd Neon fixed-point implementation of xcorr_kernel.
Jonathan Lennox [Wed, 23 Dec 2015 00:21:47 +0000 (19:21 -0500)]
Add Neon fixed-point implementation of xcorr_kernel.

Used for celt_pitch_xcorr on aarch64, and celt_fir and celt_iir on both armv7 and aarch64.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoAdd Neon intrinsics for Silk noise shape feedback loop.
Jonathan Lennox [Wed, 23 Dec 2015 00:21:46 +0000 (19:21 -0500)]
Add Neon intrinsics for Silk noise shape feedback loop.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoApply Neon short prediction optimization to silk_noise_shape_quantizer_del_dec.
Jonathan Lennox [Wed, 23 Dec 2015 00:21:45 +0000 (19:21 -0500)]
Apply Neon short prediction optimization to silk_noise_shape_quantizer_del_dec.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoAdd Neon intrinsics for Silk noise shape quantization.
Jonathan Lennox [Wed, 23 Dec 2015 00:21:44 +0000 (19:21 -0500)]
Add Neon intrinsics for Silk noise shape quantization.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoAdd named constants for ARM architecture variants.
Jonathan Lennox [Wed, 23 Dec 2015 00:21:43 +0000 (19:21 -0500)]
Add named constants for ARM architecture variants.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoEnable Neon intrinsics for aarch64.
Jonathan Lennox [Sat, 21 Nov 2015 04:02:56 +0000 (23:02 -0500)]
Enable Neon intrinsics for aarch64.

Enables existing Neon intrinsic optimizations to work on aarch64
targets.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoRename OPUS_ARM_NEON_INTR AM_CONDITIONAL as HAVE_ARM_NEON_INTR, for consistency with...
Jonathan Lennox [Sat, 21 Nov 2015 04:02:55 +0000 (23:02 -0500)]
Rename OPUS_ARM_NEON_INTR AM_CONDITIONAL as HAVE_ARM_NEON_INTR, for consistency with x86.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoReorganize ARM CPU #ifdefs.
Jonathan Lennox [Mon, 14 Dec 2015 21:06:32 +0000 (16:06 -0500)]
Reorganize ARM CPU #ifdefs.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoMove ARM-specific macro overrides to arm-specific file.
Jonathan Lennox [Sat, 21 Nov 2015 04:02:53 +0000 (23:02 -0500)]
Move ARM-specific macro overrides to arm-specific file.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
3 years agoUpdate URLs
Mark Harris [Wed, 6 Jul 2016 21:17:51 +0000 (14:17 -0700)]
Update URLs

3 years agoFix typo.
Ralph Giles [Wed, 6 Jul 2016 20:00:54 +0000 (13:00 -0700)]
Fix typo.

Thanks to RiCON for reporting this.

3 years agoUpdate links in release checklist.
Ralph Giles [Wed, 6 Jul 2016 19:45:08 +0000 (12:45 -0700)]
Update links in release checklist.

3 years agoAdd checksums for opusfile 0.8.
Ralph Giles [Wed, 6 Jul 2016 17:45:57 +0000 (10:45 -0700)]
Add checksums for opusfile 0.8.

3 years agoReplace another useless 32x16 multiply with 16x16
Jean-Marc Valin [Tue, 5 Jul 2016 16:07:02 +0000 (12:07 -0400)]
Replace another useless 32x16 multiply with 16x16

3 years agoReplacing some 32x16 multiplies with 16x16 when both operands are 16 bits
Jean-Marc Valin [Tue, 5 Jul 2016 15:47:05 +0000 (11:47 -0400)]
Replacing some 32x16 multiplies with 16x16 when both operands are 16 bits

3 years agoFix folding bug in draft too
Jean-Marc Valin [Mon, 4 Jul 2016 19:44:30 +0000 (15:44 -0400)]
Fix folding bug in draft too

3 years agoAssert non-overlapping memcpy. r=mark4o
Ralph Giles [Mon, 4 Jul 2016 17:39:31 +0000 (10:39 -0700)]
Assert non-overlapping memcpy. r=mark4o

Coverity warns about the possibly-overlappying memcpy in this
block, presumedly because it can't prove predictLPCOrder <= MAX_LPC_ORDER
here. Add an assert to make the intent clear in code as well
as in the comment.

3 years agoForgot to call RESTORE_STACK in 328953e1896432bc700b9b5c69ae2987c5d752f4
Jean-Marc Valin [Mon, 4 Jul 2016 14:45:15 +0000 (10:45 -0400)]
Forgot to call RESTORE_STACK in 328953e1896432bc700b9b5c69ae2987c5d752f4

3 years agoupdate draft fixes
Jean-Marc Valin [Mon, 4 Jul 2016 14:42:45 +0000 (10:42 -0400)]
update draft fixes

3 years agoMaking calls to opus_packet_pad() on a bad packet return OPUS_INVALID_PACKET
Jean-Marc Valin [Mon, 4 Jul 2016 05:29:23 +0000 (01:29 -0400)]
Making calls to opus_packet_pad() on a bad packet return OPUS_INVALID_PACKET

We were previously returning OPUS_BAD_ARG because the failure was
only detected in opus_repacketizer_out_range_impl() rather than in
opus_repacketizer_cat(). Checking the return value from opus_repacketizer_cat()
also addresses the last outstanding Coverity defect.

3 years agominor update draft update
Jean-Marc Valin [Fri, 1 Jul 2016 20:09:19 +0000 (16:09 -0400)]
minor update draft update

3 years agoAdding hybrid folding section and new testvectors to the update draft
Jean-Marc Valin [Thu, 30 Jun 2016 22:01:04 +0000 (18:01 -0400)]
Adding hybrid folding section and new testvectors to the update draft

3 years agoFix build error from comma at end of enum
Michael Graczyk [Thu, 30 Jun 2016 03:30:19 +0000 (20:30 -0700)]
Fix build error from comma at end of enum

Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>