Age | Commit message (Collapse) | Author |
|
Update silk/x86/NSQ_del_dec_sse4_1.c to match the remaining
silk/NSQ_del_dec.c changes made in
https://gitlab.xiph.org/xiph/opus/-/commit/c913dc38
|
|
Co-authored-by: James Zern <jzern@google.com>
|
|
|
|
Add dummy typedef to avoid the warning
|
|
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
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.
|
|
Reduces fluctuations in the non-FEC target bitrate.
|
|
|
|
Making LTP scaling depend on the bitrate and whether FEC is on.
The thresholds for scaling 1 and 2 are now independent.
|
|
Reviewed by Mark Harris
|
|
To avoid issues with empty compilation units.
|
|
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.
|
|
The indentation for nested #ifs was all over the place.
|
|
|
|
Reviewed by Timothy B. Terriberry.
|
|
Even when the macro itself would overflow.
Reviewed by Mark Harris
|
|
Reviewed by Mark Harris
|
|
Reviewed by Mark Harris
|
|
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.
|
|
Thanks Tim
|
|
|
|
saturating sum. This matches behavior in NSQ_del_dec.c.
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
The LPCs are computed in 32-bit, so increase the allowed range from +/-8
to +/-64 to avoid overflows caught during fuzzing. Before downshifting
back down to the +/-8 range in the final 16-bit output, perform bandwidth
extension to avoid any additional overflow issues.
|
|
Tested on:
- Linux/x86* with gcc
- Android armv7 arm64 x86 x86_64 with clang
- Windows x86 x86_64 with Visual Studio 2017
- Windows x86 x86_64 with MinGW
- macOS x86_64 with clang
- iOS arm64 x86_64 with clang
Co-authored by: Nirbheek Chauhan <nirbheek@centricular.com>
https://gitlab.xiph.org/xiph/opus/-/merge_requests/13
|
|
_WIN32 is defined on all Windows platforms by every compiler that
targets Windows. We do not need WIN32 at all.
Signed-off-by: Mark Harris <mark.hsj@gmail.com>
Resolves https://github.com/xiph/opus/pull/104
|
|
Signed-off-by: Mark Harris <mark.hsj@gmail.com>
|
|
remove usage of stdio.h in production code
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
in tests.
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
|
|
|
|
This reverts commit 4f5557c3095a1d212161609ff638cdae67a9b303.
Signed-off-by: Felicia Lim <flim@google.com>
|
|
Thanks to Ray Essick
|
|
|
|
|
|
Broken by earlier ARM optimizations.
|
|
|
|
or "just" 1 year and 4 months for 10-ms frames.
The overflow can eventually cause a divide-by-zero when counter == -16
Thanks to Dmitry Malinin for reporting the bug.
|
|
clang -Wcast-align warnings with ambisonics enabled
clang -Wnull-pointer-arithmetic warnings in test_opus_api.c
gcc -Wimplicit-fallthrough warnings on arm
msvc warning C4244 in celt_encoder.c with fixed point
|
|
The bug was triggered because f982b84d started using prefill for
SILK bandwidth changes, which reinitialized the encoder state and
prevented the variable lowpass from working properly. To fix the problem,
we preserve the sampling rate and variable low-pass when prefilling.
|
|
Using a finer table for the rate to SNR curves in silk_control_SNR().
It's now possible to have an SNR that reaches 0, so we can lower bitrate
down to ~5 kbps for narrowband and 5.5 kbps for wideband.
|
|
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
|
|
|
|
|
|
|
|
Only converted the ones that are really sure (not signal-dependent)
and that shouldn't add much run-time complexity
|
|
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
|
|
Reported by Chandrakala Madhira on the mailing list
|
|
SILK was being allocated too few bits for stereo hybrid, often resulting
in forced narrowing of the width. We now allocate more bits to SILK
and reduce the threshold for narrowing. This improves quality enough that
the bitrate threshold for switching to SILK can be increased to 44 kb/s.
|
|
Distinguish source files for the SSE 4.1 instruction
set extension consistently by their filename. This makes
it easier to check the correct flags are being set at
build time.
Signed-off-by: Jonathan Lennox <jonathan@vidyo.com>
|