Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-02-13 | Fixes analysis buffering for silence and complexity changes | Jean-Marc Valin | |
The previous code would go out of sync in those cases. | |||
2018-07-26 | Remove ambisonics experimental flag | Jean-Marc Valin | |
2017-12-07 | Fix memory issues in Projection API. | Andrew Allen | |
Modified by Jean-Marc Valin Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca> | |||
2017-11-07 | Support for Channel Mapping 253 | Andrew Allen | |
OpusProjection* classes MixingMatrix class Projection tests Change-Id: I98644466abf4ffd36e48bdecad1204d69e1539b9 Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca> | |||
2016-11-04 | Removes OPUS_FRAMESIZE_VARIABLE | Jean-Marc Valin | |
That experiment never actually worked | |||
2015-08-04 | Eliminate signed division overhead in align() | Mark Harris | |
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org> | |||
2015-08-04 | Simplify and generalize implementation of align(). Should be very efficient ↵ | Jonathan Lennox | |
on sensible platforms, and correct everywhere. | |||
2015-08-04 | Make align() work even on machines with 32-bit chars | Jean-Marc Valin | |
2015-08-03 | More conservative alignment | Jean-Marc Valin | |
Based on max size of void*, opus_int32 and opus_val32, rounded up to the nearest power of two | |||
2013-12-10 | Fixes code that was doing arithmetic on a void pointer. | Jean-Marc Valin | |
Thanks to Kevin O'Connor for reporting this. | |||
2013-12-09 | Optimizes encoder NaN detection and clipping by only running them when needed | Jean-Marc Valin | |
NaN detection should now be able to catch values that would create NaNs further down. | |||
2013-11-13 | Adds packet padding that works for all codes and fixes 40/60 ms CBR. | Jean-Marc Valin | |
Padding is now handled by the repacketizer. | |||
2013-11-13 | Variable frame size fixes (still not exposed in the API) | Jean-Marc Valin | |
This fixes an actual error in the downmix (using the float version even for the int API), as well as a bunch of conversion warnings. | |||
2013-10-28 | Fixes DISABLE_FLOAT_API build | Jean-Marc Valin | |
2013-10-28 | Replace "inline" with OPUS_INLINE. | Gregory Maxwell | |
Newer versions of MSVC are unhappy with the strategy of the build environment redefining "inline" (even though they don't support the actual keyword). Instead we define OPUS_INLINE to the right thing in opus_defines.h. This is the same approach we use for restrict. | |||
2013-10-14 | Surround encoder can now produce hard CBR streams again. | Jean-Marc Valin | |
Even when using SILK/hybrid. | |||
2013-10-14 | Oops, thanks to Mark Harris for spotting this! | Jean-Marc Valin | |
2013-10-14 | opus_packet_parse_impl() now computes the packet size with padding | Jean-Marc Valin | |
This should fix decoding of padded multistream packets and (hopefully) multistream fec. | |||
2013-10-11 | Do up-front validation of multistream packets | Jean-Marc Valin | |
Prevents the decoder from being out-of-sync on an invalid packet. Also returns OPUS_INVALID_PACKET on a corrupted FEC packet. | |||
2013-09-16 | Moves frame size selection back out of opus_encode_native() | Jean-Marc Valin | |
Should fix delayed decision on surround, but not well tested. | |||
2013-09-06 | First pass at making the analysis code run with FIXED_POINT | Jean-Marc Valin | |
Code is still float, but at least tonality esitmation seems to work. Speech/music analysis is still disabled. | |||
2013-09-05 | Moves the analysis back to opus_encode_native() to it runs for all streams. | Jean-Marc Valin | |
I checked that it's not *completely* busted, but it probably needs more testing. | |||
2013-05-18 | Change few remaining instances of short to opus_int16 | Jean-Marc Valin | |
2013-03-08 | Merge branch 'exp_analysis' | Jean-Marc Valin | |
Conflicts: celt/celt_encoder.c | |||
2013-03-01 | Applies soft-clipping to the int decoder API. | Jean-Marc Valin | |
opus_decode() and opus_multistream_decode() now apply soft clipping before converting to 16-bit int. This should produce better a higher quality result than hard clipping like we were doing before. The _float() API isn't affected, but the clipping function is exported so users can manually apply the soft clipping. | |||
2013-02-20 | Adds support for delayed decision | Jean-Marc Valin | |
Variable duration option renamed to OPUS_SET_EXPERT_FRAME_DURATION, with new API. Also moves up the analysis to avoid having to do int->float conversion on large buffers. | |||
2013-02-10 | Making multistream variable duration work for both the float and int API | Jean-Marc Valin | |
2013-02-10 | Multistream support for variable frame duration | Jean-Marc Valin | |
Also fixes a bug with stereo streams where the initial memory was only using the left channel. | |||
2012-12-21 | Capping lsb_depth to 16 unless using the float API of a float build | Jean-Marc Valin | |
2012-11-07 | Splits out the Opus multi-stream encoder and decoder | Jean-Marc Valin | |
2012-10-10 | Attenuates the HF in hybrid mode to match what SILK does below the cutoff | Koen Vos | |
Conflicts: src/opus_multistream.c src/opus_private.h | |||
2012-08-17 | Fix an MSVC warning. | Ralph Giles | |
Microsoft Visual Studio 2010 warns about 'C4146: unary minus operator applied to unsigned type, result still unsigned' because of the '&-sizeof(void*)' in align(). This commit works around the warning by casting the size_t to int before negation. Patch by Hauke, who reported the issue on the opus mailing list. Reviewed by derf. | |||
2012-05-04 | Increase alignment of the internal state structures to sizeof(void *) from 4 ↵ | Gregory Maxwell | |
bytes. OpusCustomMode begins with a pointer and was getting misaligned on 64 bit arches. | |||
2012-04-24 | Merge commit '390c89225d' | Jean-Marc Valin | |
2012-04-20 | s/FOUNDATION/COPYRIGHT OWNER/ in CELT code and "glue code" | Jean-Marc Valin | |
Also added 3rd clause to "master" COPYING file | |||
2012-03-08 | Fixes int vs opus_int32 compile errors on C5x | Jean-Marc Valin | |
2012-03-05 | More consistent types for 16-bit architectures | Jean-Marc Valin | |
2011-12-02 | Rename '_FOO' to avoid potentional collisions with reserved identifiers. | Ralph Giles | |
C reserves identifiers of the from _[A-Z]+ and we have a number of those in the code. This patch renames the various function arguments, MACROS and preprocessor symbols to avoid the reserved form. It also removes the CHANNELS() macro altogether. This was a minor optimization for TI DSP to force a mono-only build, as were the associated local 'const' versions. Since stereo support is manditory, it wasn't worth keeping. Thanks to John Ridges for raising the issue, and Jean-Marc Valin and Greg Maxwell for reviewing the changes. | |||
2011-10-27 | Gives the Opus code direct access to (non-opaque) OpusRepacketizer | Jean-Marc Valin | |
This avoids potential alignment issues with allocating a char array on the stack. | |||
2011-10-27 | Makes OPUS_SET_VOICE_RATIO private | Jean-Marc Valin | |
Let's put it back in if/when we have a clearer view of voice/music detection | |||
2011-09-09 | Makes multi-stream encoding code use the repacketizer | Jean-Marc Valin | |
2011-09-08 | Adds ctl() requests for forcing any operating mode in the encoder | Jean-Marc Valin | |
Also merges all the OPUS_*_AUTO into a single OPUS_AUTO parameter | |||
2011-08-28 | Making sure that everything in opus.h has a opus prefix | Jean-Marc Valin | |
2011-08-27 | Adds support for multi-stream encoding/decoding | Jean-Marc Valin | |
Only tested for the single-stream case! | |||
2011-08-23 | encode_size() moved out of opus_encoder.c | Jean-Marc Valin | |
2011-08-22 | Moves align() to a single header | Jean-Marc Valin | |