opus.git
8 years agoFixes problems with unstable filter detection
J-M Valin (rewritten by T.B. Terriberry) [Fri, 30 Sep 2011 22:12:13 +0000 (18:12 -0400)]
Fixes problems with unstable filter detection

LPC_inverse_pred_gain_QA() was failing to detect unstable filters
because of insufficient numerical precision. Precision was increased
to Q24 for LPC coefs and the reciprocal now uses all the precision
available (variable shift right from the start).

8 years agodon't allow the user to override the bandwidth so that it's above what Fs allows
Jean-Marc Valin [Fri, 30 Sep 2011 02:02:37 +0000 (22:02 -0400)]
don't allow the user to override the bandwidth so that it's above what Fs allows

8 years agoMake silk_assert calls work with the autotools --enable-assertions.
Gregory Maxwell [Thu, 29 Sep 2011 21:43:44 +0000 (17:43 -0400)]
Make silk_assert calls work with the autotools --enable-assertions.

8 years agoRemove an unreachable block in silk/float/pitch_analysis_core_FLP.c
Gregory Maxwell [Thu, 29 Sep 2011 20:57:56 +0000 (16:57 -0400)]
Remove an unreachable block in silk/float/pitch_analysis_core_FLP.c
(Fs_kHz is always 8/12/16 in Opus and also enforced by the assert on line 112)

8 years agoMore silk/ resampler cleanup.
Gregory Maxwell [Thu, 29 Sep 2011 20:20:38 +0000 (16:20 -0400)]
More silk/ resampler cleanup.

8 years agotest_opus had skip uninitialized for decode-only
Jean-Marc Valin [Thu, 29 Sep 2011 16:42:55 +0000 (12:42 -0400)]
test_opus had skip uninitialized for decode-only

8 years agoEliminate signed overflow in constant, minor makefile.draft updates.
Gregory Maxwell [Wed, 28 Sep 2011 21:09:23 +0000 (17:09 -0400)]
Eliminate signed overflow in constant, minor makefile.draft updates.

8 years agoMisc. silk/ cleanups: static inline things which are only used in one file.
Gregory Maxwell [Wed, 28 Sep 2011 19:44:53 +0000 (15:44 -0400)]
Misc. silk/ cleanups: static inline things which are only used in one file.

8 years agoCleans up some leaking opus_custom symbols in celt/
Gregory Maxwell [Wed, 28 Sep 2011 19:13:26 +0000 (15:13 -0400)]
Cleans up some leaking opus_custom symbols in celt/

8 years agoFixes a bug introduced while fixing the original 60-ms stereo bug
Jean-Marc Valin [Wed, 28 Sep 2011 20:24:01 +0000 (16:24 -0400)]
Fixes a bug introduced while fixing the original 60-ms stereo bug

8 years agoFixes a bug that was falsely triggering DTX for 60 ms stereo
Jean-Marc Valin [Wed, 28 Sep 2011 18:23:01 +0000 (14:23 -0400)]
Fixes a bug that was falsely triggering DTX for 60 ms stereo

There's still a range coder mismatch on the first frame when using FEC.

8 years agoMore resampler cleanups.
Gregory Maxwell [Wed, 28 Sep 2011 16:40:06 +0000 (12:40 -0400)]
More resampler cleanups.

8 years agoEliminate function pointers from the resampler.
Gregory Maxwell [Wed, 28 Sep 2011 06:26:45 +0000 (02:26 -0400)]
Eliminate function pointers from the resampler.

8 years agoHelp JM's eclipse understand that silk_NLSF_del_dec_quant returns.
Gregory Maxwell [Wed, 28 Sep 2011 03:49:08 +0000 (23:49 -0400)]
Help JM's eclipse understand that silk_NLSF_del_dec_quant returns.

8 years agoSilence the remaining silk/ GCC warnings.
Gregory Maxwell [Wed, 28 Sep 2011 03:30:18 +0000 (23:30 -0400)]
Silence the remaining silk/ GCC warnings.

8 years agoFix some GCC warings in the silk/ directory.
Gregory Maxwell [Wed, 28 Sep 2011 01:33:14 +0000 (21:33 -0400)]
Fix some GCC warings in the silk/ directory.

8 years agoAdd support for coding signs with 0 pulses.
Timothy B. Terriberry [Sat, 17 Sep 2011 19:44:19 +0000 (12:44 -0700)]
Add support for coding signs with 0 pulses.

The SILK bitstream allowed coding 0 pulses in a shell block, but a
 non-zero number of LSb's, meaning some excitation coefficients
 could be non-zero, but would not have a corresponding sign.
To fix this without breaking already-encoded bitstreams, this patch
 adds a set of sign PDFs for the 0 pulses case.

This is occasionally more efficient than the normal encoding if
 there are a large number of coefficients with positive signs,
 since these cost more than 1 bit when using the > 0 pulse PDFs.
It only saves 0.33 bits per second (on average: it does better at
 high rates), but that's probably enough to justify the two
 redundant ways of coding things (and it's too late now to remove
 the second one entirely, anyway).
This patch does not include the encoder modifications required to
 check if this coding method is more efficient and switch to it.

8 years agoFixes a glitch on SILK frame size switching
Jean-Marc Valin [Tue, 27 Sep 2011 21:12:23 +0000 (17:12 -0400)]
Fixes a glitch on SILK frame size switching

We no longer reset the decoder predictors when switching only the
frame size and not the sampling rate. The encoder already doesn't reset.

8 years agoFixes a glitch in SILK mono->stereo switching
Jean-Marc Valin [Tue, 27 Sep 2011 18:10:23 +0000 (14:10 -0400)]
Fixes a glitch in SILK mono->stereo switching

For these transitions, we now start the left and right resamplers
from the same state.

8 years agoCommenting on the implementation-defined behaviour we rely on
Jean-Marc Valin [Tue, 27 Sep 2011 04:01:08 +0000 (00:01 -0400)]
Commenting on the implementation-defined behaviour we rely on

8 years agoDraft clean-ups and additions.
Timothy B. Terriberry [Tue, 27 Sep 2011 03:53:26 +0000 (20:53 -0700)]
Draft clean-ups and additions.

8 years agoUpdate text regarding PLC and add a new section on clock drift.
Benjamin M. Schwartz [Wed, 14 Sep 2011 18:53:11 +0000 (14:53 -0400)]
Update text regarding PLC and add a new section on clock drift.

The PLC section has been moved from under CELT to the top
level and expanded to cover both SILK and CELT.  The clock drift
text provides some advice and explanation of the new GET_PITCH API.

8 years agoAvoiding more left shifts of negative values
Jean-Marc Valin [Sun, 25 Sep 2011 04:11:46 +0000 (00:11 -0400)]
Avoiding more left shifts of negative values

8 years agoAvoiding left shifts of negative values
Jean-Marc Valin [Sat, 24 Sep 2011 03:48:40 +0000 (23:48 -0400)]
Avoiding left shifts of negative values

8 years agominor draft fixes
Jean-Marc Valin [Sat, 24 Sep 2011 03:29:40 +0000 (23:29 -0400)]
minor draft fixes

8 years agoCELT decoder figure, some more acknowledgements
Jean-Marc Valin [Sat, 24 Sep 2011 03:05:21 +0000 (23:05 -0400)]
CELT decoder figure, some more acknowledgements

8 years agoMaking the left shift macros use unsigned to avoid undefined behaviour
Jean-Marc Valin [Fri, 23 Sep 2011 17:08:04 +0000 (13:08 -0400)]
Making the left shift macros use unsigned to avoid undefined behaviour

Result should be bit-identical on most machines/compilers, minus the undefined
behaviour

8 years agoFixes a decoder overflow on random input
Koen Vos [Fri, 23 Sep 2011 17:05:22 +0000 (13:05 -0400)]
Fixes a decoder overflow on random input

Also some MSVC build fixes

8 years agoAPI doc improvements
Jean-Marc Valin [Fri, 23 Sep 2011 02:13:46 +0000 (22:13 -0400)]
API doc improvements

8 years agoImproved doxygen doc for opus.h
Jean-Marc Valin [Thu, 22 Sep 2011 21:59:22 +0000 (17:59 -0400)]
Improved doxygen doc for opus.h

8 years agoFixes an integer overflow caused by uninitialized values in LTP scaling
Koen Vos [Wed, 21 Sep 2011 18:50:17 +0000 (14:50 -0400)]
Fixes an integer overflow caused by uninitialized values in LTP scaling

8 years agoDraft build fixes, some more details
Jean-Marc Valin [Tue, 20 Sep 2011 19:15:49 +0000 (15:15 -0400)]
Draft build fixes, some more details

8 years agoPatch from Tim to avoid a spurious uninitialized warning in test_opus.c.
Gregory Maxwell [Mon, 19 Sep 2011 20:40:12 +0000 (16:40 -0400)]
Patch from Tim to avoid a spurious uninitialized warning in test_opus.c.

8 years agoSome fixes for C89 builds.
Gregory Maxwell [Mon, 19 Sep 2011 19:49:43 +0000 (15:49 -0400)]
Some fixes for C89 builds.

8 years agoUse fold instead of passing a wrap length to base64.
Ralph Giles [Sat, 17 Sep 2011 05:53:48 +0000 (22:53 -0700)]
Use fold instead of passing a wrap length to base64.

The base64 implementation included with MacOS 10.7 doesn't
support the -w option for wrapping lines. Using the fold
command is more portable.

8 years agoRemoved all the silk_ prefixes in source file names (not symbols)
Jean-Marc Valin [Fri, 16 Sep 2011 08:16:53 +0000 (01:16 -0700)]
Removed all the silk_ prefixes in source file names (not symbols)

8 years agoRenaming the SKP_ prefix to silk_
Jean-Marc Valin [Fri, 16 Sep 2011 07:58:26 +0000 (00:58 -0700)]
Renaming the SKP_ prefix to silk_

8 years agoMaking sure to avoid undefined behaviour
Jean-Marc Valin [Fri, 16 Sep 2011 00:18:33 +0000 (17:18 -0700)]
Making sure to avoid undefined behaviour

Mainly implementing signed overflow behaviour in a way that isn't
undefined in the C standard

8 years agoMoves opus_compare to the same base64 tar.gz as the rest of the code
Jean-Marc Valin [Thu, 15 Sep 2011 17:10:40 +0000 (10:10 -0700)]
Moves opus_compare to the same base64 tar.gz as the rest of the code

8 years agoDocumentation and build script updates.
Gregory Maxwell [Thu, 15 Sep 2011 15:33:18 +0000 (11:33 -0400)]
Documentation and build script updates.

8 years agoImplements OPUS_GET_PITCH that queries the decoded pitch
Jean-Marc Valin [Wed, 14 Sep 2011 16:50:06 +0000 (09:50 -0700)]
Implements OPUS_GET_PITCH that queries the decoded pitch

8 years agoRemove redundant API parameter comments from opus_multistream.c.
Ralph Giles [Wed, 14 Sep 2011 07:04:24 +0000 (00:04 -0700)]
Remove redundant API parameter comments from opus_multistream.c.

The parameters for public API calls are already documented
in opus_multistream.h. It's better not to have separate
copies of those comments in the implementation.

8 years agoMore documentation for the multistream API.
Ralph Giles [Wed, 14 Sep 2011 06:56:42 +0000 (23:56 -0700)]
More documentation for the multistream API.

Correct member comments copied from the non-multistream api,
and document the remaining undocumented members. Still very
rough.

8 years agomore libcelt->celt renames
Jean-Marc Valin [Wed, 14 Sep 2011 07:06:47 +0000 (00:06 -0700)]
more libcelt->celt renames

8 years agorenames the libcelt/ directory to celt/
Jean-Marc Valin [Wed, 14 Sep 2011 01:21:18 +0000 (18:21 -0700)]
renames the libcelt/ directory to celt/

8 years agoChanging some TODOs that were really future optimization hints
Jean-Marc Valin [Mon, 12 Sep 2011 02:00:46 +0000 (22:00 -0400)]
Changing some TODOs that were really future optimization hints

8 years agoImplements OPUS_MULTISTREAM_{EN|DE}CODER_GET_STATE
Jean-Marc Valin [Mon, 12 Sep 2011 00:13:47 +0000 (20:13 -0400)]
Implements OPUS_MULTISTREAM_{EN|DE}CODER_GET_STATE

Untested

8 years agoImplements multi-stream encoder requests the best we can
Jean-Marc Valin [Sun, 11 Sep 2011 23:51:44 +0000 (19:51 -0400)]
Implements multi-stream encoder requests the best we can

8 years agoProperly implementing the multistream decoder ctl()s
Jean-Marc Valin [Sun, 11 Sep 2011 22:12:31 +0000 (18:12 -0400)]
Properly implementing the multistream decoder ctl()s

Not tested

8 years agoTF decoding details
Jean-Marc Valin [Sun, 11 Sep 2011 20:12:36 +0000 (16:12 -0400)]
TF decoding details

8 years agoAdds a bound on the SILK rate to prevent it from busting the byte limit
Jean-Marc Valin [Sun, 11 Sep 2011 18:29:46 +0000 (14:29 -0400)]
Adds a bound on the SILK rate to prevent it from busting the byte limit

8 years agointeger type fixes
Jean-Marc Valin [Sun, 11 Sep 2011 01:56:34 +0000 (21:56 -0400)]
integer type fixes

8 years agominor doc update
Jean-Marc Valin [Sat, 10 Sep 2011 05:11:50 +0000 (01:11 -0400)]
minor doc update

8 years agoDocumentation updates.
Gregory Maxwell [Fri, 9 Sep 2011 21:11:43 +0000 (17:11 -0400)]
Documentation updates.

8 years agoDoxygen comment fixes
Jean-Marc Valin [Fri, 9 Sep 2011 19:19:18 +0000 (15:19 -0400)]
Doxygen comment fixes

8 years agoOpus now default to VBR
Jean-Marc Valin [Fri, 9 Sep 2011 18:57:43 +0000 (14:57 -0400)]
Opus now default to VBR

8 years agoMaking complexity default to 10 for the CELT part too
Jean-Marc Valin [Fri, 9 Sep 2011 18:50:15 +0000 (14:50 -0400)]
Making complexity default to 10 for the CELT part too

8 years agoDocumentation updates.
Gregory Maxwell [Fri, 9 Sep 2011 18:24:49 +0000 (14:24 -0400)]
Documentation updates.

8 years agoMakes multi-stream encoding code use the repacketizer
Jean-Marc Valin [Fri, 9 Sep 2011 17:56:09 +0000 (13:56 -0400)]
Makes multi-stream encoding code use the repacketizer

8 years agoFixes multi-stream bug exposed in e335065a1ba72
Jean-Marc Valin [Fri, 9 Sep 2011 17:49:43 +0000 (13:49 -0400)]
Fixes multi-stream bug exposed in e335065a1ba72

8 years agotest_opus now uses a string for the application
Jean-Marc Valin [Fri, 9 Sep 2011 15:31:03 +0000 (11:31 -0400)]
test_opus now uses a string for the application

when using -d, application and bitrate are no longer needed

8 years agoMaking RESTRICTED_LOWDELAY an "application" that's set at init time
Jean-Marc Valin [Fri, 9 Sep 2011 15:10:48 +0000 (11:10 -0400)]
Making RESTRICTED_LOWDELAY an "application" that's set at init time

Also ./test_opus now takes a string for the application

8 years agoUsing opus_repacketizer_init() instead of opus_repacketizer_create() in the encoder
Jean-Marc Valin [Fri, 9 Sep 2011 01:41:29 +0000 (21:41 -0400)]
Using opus_repacketizer_init() instead of opus_repacketizer_create() in the encoder

8 years agoEncoder can now produce 40- and 60-ms frames even for CELT-only and hybrid
Jean-Marc Valin [Thu, 8 Sep 2011 22:19:50 +0000 (18:19 -0400)]
Encoder can now produce 40- and 60-ms frames even for CELT-only and hybrid

8 years agoFixes silly CBR/VBR inversion bug from 7954065c77
Jean-Marc Valin [Thu, 8 Sep 2011 20:26:54 +0000 (16:26 -0400)]
Fixes silly CBR/VBR inversion bug from 7954065c77

8 years agoAdds OPUS_SET_RESTRICTED_LOWDELAY() encoder ctl
Jean-Marc Valin [Thu, 8 Sep 2011 19:13:46 +0000 (15:13 -0400)]
Adds OPUS_SET_RESTRICTED_LOWDELAY() encoder ctl

Right now it will uncleanly switch to SILK if asked for 40 or 60 ms frames

8 years agoAdds ctl() requests for forcing any operating mode in the encoder
Jean-Marc Valin [Thu, 8 Sep 2011 17:53:20 +0000 (13:53 -0400)]
Adds ctl() requests for forcing any operating mode in the encoder

Also merges all the OPUS_*_AUTO into a single OPUS_AUTO parameter

8 years agoAdds doxygen documentation for opus_defines.h.
Gregory Maxwell [Thu, 8 Sep 2011 12:13:16 +0000 (08:13 -0400)]
Adds doxygen documentation for opus_defines.h.

8 years agoMulti-stage VQ for SILK is no longer relevant
Jean-Marc Valin [Thu, 8 Sep 2011 03:26:52 +0000 (23:26 -0400)]
Multi-stage VQ for SILK is no longer relevant

8 years agoOops, remove duplicate description of the MDCT
Jean-Marc Valin [Wed, 7 Sep 2011 21:15:34 +0000 (17:15 -0400)]
Oops, remove duplicate description of the MDCT

8 years agoAdds missing details about reserving the anticollapse/skip/stereo bits
Jean-Marc Valin [Wed, 7 Sep 2011 21:06:17 +0000 (17:06 -0400)]
Adds missing details about reserving the anticollapse/skip/stereo bits

8 years agoMove the fallback OPUS_VERSION to libcelt.
Ralph Giles [Wed, 7 Sep 2011 20:16:29 +0000 (13:16 -0700)]
Move the fallback OPUS_VERSION to libcelt.

In f9265ddf25cc opus_get_version_string() was moved
to libcelt, but the fallback definition for OPUS_VERSION
stayed in src/opus.c. This is helpful for those using
and external build system, which may not duplicate
all the defines from the included build files.

8 years agoMore work on the CELT encoder description, fixed Opus figures
Jean-Marc Valin [Wed, 7 Sep 2011 19:42:43 +0000 (15:42 -0400)]
More work on the CELT encoder description, fixed Opus figures

8 years agoMaking the sampling rate an int32 in the multi-stream API
Jean-Marc Valin [Wed, 7 Sep 2011 18:47:48 +0000 (14:47 -0400)]
Making the sampling rate an int32 in the multi-stream API

8 years agoFixes a warning about assignment in an if()
Jean-Marc Valin [Wed, 7 Sep 2011 18:23:12 +0000 (14:23 -0400)]
Fixes a warning about assignment in an if()

8 years agoSecurity Considerations update
Jean-Marc Valin [Wed, 7 Sep 2011 16:28:03 +0000 (12:28 -0400)]
Security Considerations update

8 years agoTell automake to clean the doxygen output.
Ralph Giles [Wed, 7 Sep 2011 18:18:23 +0000 (11:18 -0700)]
Tell automake to clean the doxygen output.

Without the extra clean, 'make distcheck' fails because
the distclean target doesn't remove all generated files.

8 years agoAdd minimal doxygen markup to the public headers.
Ralph Giles [Wed, 7 Sep 2011 17:40:25 +0000 (10:40 -0700)]
Add minimal doxygen markup to the public headers.

Doxygen uses comments in the source code to generate documentation.
This commit just adds the descriptive headers and marks current
comments and appropriate for inclusion in the API docs. Many
symbols remain undocumented. See the warnings from the build output.

8 years agoAdd initial Doxygen support for generating api documentation.
Ralph Giles [Wed, 7 Sep 2011 06:18:00 +0000 (23:18 -0700)]
Add initial Doxygen support for generating api documentation.

Doxygen is a tool for generating programming documentation
based on comments in header and source files. This commit
adds the necessary configuration file and associated support
in the autotools build.

Right now it doesn't generate much documentation because our
public header files aren't marked up. Warnings are printed
for undocumented members and arguments.

8 years agoUpdate Makefile.draft warnings to match configure.ac.
Gregory Maxwell [Wed, 7 Sep 2011 06:25:55 +0000 (02:25 -0400)]
Update Makefile.draft warnings to match configure.ac.

8 years agoMaking the encoder more robust against extreme bitrate requests
Jean-Marc Valin [Wed, 7 Sep 2011 06:43:23 +0000 (02:43 -0400)]
Making the encoder more robust against extreme bitrate requests

8 years agoImprove encoder bust test from 5f089d22.
Timothy B. Terriberry [Wed, 7 Sep 2011 05:39:52 +0000 (22:39 -0700)]
Improve encoder bust test from 5f089d22.

Change the constants so simply ORing the raw bits into the range
 coder data won't pass the test.

8 years agoPrevents the SILK encoder from failing below 600 kb/s stereo.
Jean-Marc Valin [Wed, 7 Sep 2011 05:37:58 +0000 (01:37 -0400)]
Prevents the SILK encoder from failing below 600 kb/s stereo.

Not that it actually reaches the target, but it should no longer cause
a range coder mismatch

8 years agoAdd an encoder busting test.
Timothy B. Terriberry [Wed, 7 Sep 2011 05:28:26 +0000 (22:28 -0700)]
Add an encoder busting test.

This tests the behavior when merging the last few raw bits into
 the final range coder byte causes a bust.
This is mostly to make Greg Maxwell happy about his code coverage.
In theory the code in question should never be hit (we should only
 bust if the user buffer is too small for SILK, which doesn't use
 raw bits).

8 years agoEliminate the last non-static pointer from the LPC-mode encoder structures.
Gregory Maxwell [Wed, 7 Sep 2011 02:58:01 +0000 (22:58 -0400)]
Eliminate the last non-static pointer from the LPC-mode encoder structures.
The API permits the caller to freely copy the codec state on their
own, but this can't work if there are any any position dependant pointers
in the codec state.

8 years agoSanitize input to opus_en/decoder_get_size.
Gregory Maxwell [Sun, 4 Sep 2011 14:47:15 +0000 (10:47 -0400)]
Sanitize input to opus_en/decoder_get_size.

8 years agoMaking redundancy length decoding errors non-fatal
Jean-Marc Valin [Tue, 6 Sep 2011 19:19:04 +0000 (15:19 -0400)]
Making redundancy length decoding errors non-fatal

8 years agos/OPUS_CORRUPTED_DATA/OPUS_INVALID_PACKET/
Jean-Marc Valin [Tue, 6 Sep 2011 18:30:19 +0000 (14:30 -0400)]
s/OPUS_CORRUPTED_DATA/OPUS_INVALID_PACKET/

8 years agoDefining OPUS_BITRATE_MAX and moving some defines to opus_defines.h
Jean-Marc Valin [Tue, 6 Sep 2011 18:05:19 +0000 (14:05 -0400)]
Defining OPUS_BITRATE_MAX and moving some defines to opus_defines.h

8 years agoRotation wip
Jean-Marc Valin [Tue, 6 Sep 2011 12:03:38 +0000 (08:03 -0400)]
Rotation wip

8 years agoRenumbering the ctl() calls to make programming errors more obvious
Jean-Marc Valin [Tue, 6 Sep 2011 01:13:53 +0000 (21:13 -0400)]
Renumbering the ctl() calls to make programming errors more obvious

8 years agoCompleting the OpusCustom rename
Jean-Marc Valin [Tue, 6 Sep 2011 00:53:33 +0000 (20:53 -0400)]
Completing the OpusCustom rename

8 years agoFix corner-case hybrid encoding desync introduced by e5736ae2
Gregory Maxwell [Mon, 5 Sep 2011 15:28:28 +0000 (11:28 -0400)]
Fix corner-case hybrid encoding desync introduced by e5736ae2

8 years agoMaking sure redundant frames can never bust the buget
Jean-Marc Valin [Mon, 5 Sep 2011 14:28:27 +0000 (10:28 -0400)]
Making sure redundant frames can never bust the buget

This is now part of the bit-stream

8 years agoFixes a buffering bug introduced in 2f0ca7618
Jean-Marc Valin [Sun, 4 Sep 2011 15:00:29 +0000 (11:00 -0400)]
Fixes a buffering bug introduced in 2f0ca7618

8 years agoMake opus_decode() reject crazy decode_fec values.
Gregory Maxwell [Sun, 4 Sep 2011 13:14:55 +0000 (09:14 -0400)]
Make opus_decode() reject crazy decode_fec values.

8 years agoPrevents OPUS_RESET_STATE from causing segfault.
Gregory Maxwell [Sun, 4 Sep 2011 11:48:20 +0000 (07:48 -0400)]
Prevents OPUS_RESET_STATE from causing segfault.

8 years agoPrevent double free on encoder/decoder init failure.
Gregory Maxwell [Sun, 4 Sep 2011 08:43:11 +0000 (04:43 -0400)]
Prevent double free on encoder/decoder init failure.

8 years agoMake opus_decoder_create set its error code.
Gregory Maxwell [Sun, 4 Sep 2011 08:25:12 +0000 (04:25 -0400)]
Make opus_decoder_create set its error code.

8 years agoFix the 'distclean' target.
Ralph Giles [Sat, 3 Sep 2011 23:34:51 +0000 (16:34 -0700)]
Fix the 'distclean' target.

With subdir-objects, both the top-level makefile, and
libcelt/Makefile, which runs celt-specific unit tests,
were sharing libcelt/.deps for generated dependencies.

Each thought it owned the directory, and so would remove
the files it created in that directory, followed by the
directory itself. The second makefile would then fail to
because the files it created weren't there to remove,
blocking a successful 'make distcheck' with in runs
'make distclean' as part of its verification tests.

We can work around the problem by generating the makefile
for the tests in the actual test directory, so it doesn't
share autotools scratch space with the top level makefile.