Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/xiph/opus.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-09-06Fix typo in MacroDebug.h comment.HEADmasterNathan E. Egge
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2022-08-05Change pitch scaling behavior wrt nFramesPerPacketJean-Marc Valin
Not sure if it was the original intent, but we now reduce the loss percentage threshold for pitch scaling as 1/nFramesPerPacket since only the first frame will have pitch scaling anyway. As a side effect, this brings back the original behavior of disabling pitch scaling for 0% loss.
2022-07-24Smooth out the LBRR rate estimateJean-Marc Valin
Reduces fluctuations in the non-FEC target bitrate.
2022-07-24More FEC tuning: lowering the LBRR bitrate a bitJean-Marc Valin
2022-07-24Re-tuning the use of LTP scalingJean-Marc Valin
Making LTP scaling depend on the bitrate and whether FEC is on. The thresholds for scaling 1 and 2 are now independent.
2022-07-22Ensuring we can see where crashes occurJean-Marc Valin
Reviewed by Mark Harris
2022-07-22More ubsan fixes for the debug macros themselvesJean-Marc Valin
Reviewed by Mark Harris
2022-07-22Using saturating round to fix some wrap-aroundsJean-Marc Valin
Reviewed by Mark Harris
2022-07-22Relaxing checks for MULT16_32_QX()Jean-Marc Valin
MULT16_32_QX() is now implemented using a signed-unsigned multiply, so the second argument can now have one extra bit compared to the old signed-signed implementation. Reviewed by Mark Harris
2022-07-15Fix NORM_ALIASING_HACKJean-Marc Valin
We need to move the history out of the way before we write to the shape array X, or else we get corruption of the audio. Signed-off-by: Jean-Marc Valin <jmvalin@amazon.com>
2022-07-13Silence MSVC C4244 warningMarcus Asteborg
When building with FLOAT_APPROX. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2022-07-11Silence Clang 13+ null-pointer-subtraction warningMark Harris
2022-07-10Only build platform RTCD sources when enabled.Timothy B. Terriberry
To avoid issues with empty compilation units.
2022-07-10Don't compile x86 cpu detection without RTCD.Timothy B. Terriberry
Also #error if RTCD is enabled without a detection method, like Arm. A number of SILK functions also still used the lookup tables, even when RTCD was disabled. Fix those, too.
2022-07-10Make silk/x86 header indentation consistent.Timothy B. Terriberry
The indentation for nested #ifs was all over the place.
2022-07-09Fix C90-related warningsexp_warnings1Jean-Marc Valin
2022-07-09update doc on custom modeMarcus Asteborg
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2022-07-08cmake - move warning C4244 to level 4Marcus Asteborg
Opus compare is used to generate test vectors so no cosmetic changes is taken. Hence we move this warning to level 4 for opus compare. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2022-07-08cmake - fix rtcd detection on x86 non windowsMarcus Asteborg
Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2022-07-08cmake - fix lrintf, lrint detectionMarcus Asteborg
This commit addresses the issues of not finding lrintf and lrint. We switch to check_symbol_exists instead per cmake documentation. Also make sure to link math lib for detection for nix. For MSVC the issue for non x86 builds was that the standard was set to default which is 199409L. This resulted in not using lrintf even that it was found. To address this we set the C standard to C11 and it will only apply to newer versions of MSVC where the /std flag is supported. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2022-07-08Fix uninitialized field on custom mode malloc failMark Harris
2022-07-06meson: Fix reporting of cpu family if intrinsics not supportedDoug Nazar
Signed-off-by: Doug Nazar <nazard@nazar.ca>
2022-07-06Update x86 CPU detection configure check.Timothy B. Terriberry
Commit 6577534a80c8 switched from using __get_cpuid() to __get_cpuid_count(), but the corresponding configure check was not updated. Since __get_cpuid_count() was introduced much later, make sure we check for the function we actually use. Thanks to Mark Harris for the report.
2022-07-06Fix warnings when compiling with FUZZING enabledJean-Marc Valin
2022-07-06cmake - Add OPUS_BUILD to test targetsMarcus Asteborg
Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2022-07-06doc: Use consistent alternative notationMark Harris
Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2022-07-06Fix opus.h for doxygen when referencing alternative valuesAlexander Traud
Doxygen was not able to resolve the references because it looked for OPUS_APPLICATION_VOIP/@ref. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2022-07-06Remove unused variable in testsMarcus Asteborg
Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2022-07-06Replace assert with test_failed function in testMarcus Asteborg
This will fix -Wunused-but-set-variable on gcc 9.3 release build. Also remove unused assert.h. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2022-07-06Fix warning with --disable-rfc8251Jean-Marc Valin
2022-07-06Fix quoting and whitespace errors in build testMark Harris
Reviewed by Jean-Marc Valin.
2022-07-06Silence GCC 11+ -Wmaybe-uninitialized warningsMark Harris
Reviewed by Timothy B. Terriberry.
2022-07-06Avoids incrementing uninitialized valuesJean-Marc Valin
The values were never used, but ubsan + valgrind would complain. Reviewed by Mark Harris
2022-07-06Avoid undefined behaviour within the debug macrosJean-Marc Valin
Even when the macro itself would overflow. Reviewed by Mark Harris
2022-07-06Fix fixed-point overflow in pitch downsamplingJean-Marc Valin
Reviewed by Mark Harris
2022-07-06Fix some 16-bit overflows (using 32-bit macros)Jean-Marc Valin
Reviewed by Mark Harris
2022-07-06Avoid left shifts of negative values in debug macrosJean-Marc Valin
Reviewed by Mark Harris
2022-07-06Work around UBSan unaligned access errors.Timothy B. Terriberry
The underlying objects are all 8-bit integers. Verified that the generated assembly still just uses MOVD. Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2022-07-06Add asan/ubsan support in random testsJean-Marc Valin
2022-07-01Adds OPUS_SET_INBAND_FEC(2) optionJean-Marc Valin
Unlike OPUS_SET_INBAND_FEC(1), the encoder does not necessarily switch to SILK if we have music.
2022-06-30Estimate the inner product accuracy to fix check-asmJean-Marc Valin
Estimate the rounding error so that we can have a useful margin of error when checking the asm against the C code even when the float operations get reordered due to -ffast-math.
2022-06-30Adds fuzzing to CPU detectionJean-Marc Valin
Makes ti possible to randomize (with --enable-fuzzing) the CPU flags so we can better test all the intrinsics implementations.
2022-06-29Work around a valgrind false-positive in CPUID.Timothy B. Terriberry
Valgrind versions prior to 3.17.0 assume that an uninitialized value in ECX causes the whole output of CPUID to be uninitialized, even though ECX is only "read" by CPUID for certain values of EAX. Work around that by guaranteeing that ECX is initialized.
2022-06-29Check the return value of __get_cpuid().Timothy B. Terriberry
This function can fail if CPUID is not supported or the maximum supported value of EAX is less than the requested one. Check the return value and explicitly disable all SIMD if it does fail. This was happening before implicitly because of the initialization of info[] to zero, but being explicit about it makes it less likely someone will break this behavior because they did not realize what was going on.
2022-06-28Fixes valgrind failure caused by silk_find_pred_coefs_*()Jean-Marc Valin
The function copies NLSFs from the stack to the state which for order 10 means we were copying uninitialized values. That in turn breaks check-asm when comparing the state under valgrind. Reviewed by Timothy B. Terriberry.
2022-06-28Fixes --disable-rtcdJean-Marc Valin
Make sure we don't try to use the rtcd table when rtcd is disabled. That code still needs a lot more cleaning up.
2022-06-28Silence some warnings for fixed-point debug buildsJean-Marc Valin
Reviewed by Timothy B. Terriberry.
2022-06-28Fixes wrap-around in silk_inner_prod16_sse4_1()Jean-Marc Valin
Thanks Tim
2022-06-27Fix 8101b33 to decode ignored redundancyMark Harris
Even if the redundancy is ignored, the final range from the decoder is needed for testing. Reviewed by Timothy B. Terriberry.
2022-06-26Improve background noise estimation for CELT DTXJean-Marc Valin
We now update the background noise estimate even in frames classified as transient. It shouldn't be a problem because we're using min statistics. Also, it avoids problems when update frames get missclassified as transient. In addition, we now use the duration of losses rather than the number of lost packets to make decisions. That should make PLC/DTX behaviour more consistent across frame sizes.