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

gitlab.xiph.org/xiph/opus.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2022-07-06Fix warnings when compiling with FUZZING enabledJean-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-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-26Correct redundancy handling with lost/DTX framesMark Harris
In https://github.com/xiph/opus/issues/253, the encoder generates a Hybrid frame with redundancy, to switch to CELT-only mode, and then activates DTX immediately afterwards. The decoder ran Hybrid PLC, which isn't right. Use CELT PLC instead if there was already a transition to CELT via redundancy at the end of the previous frame. Also do not use a stale CELT decoder to decode a second redundancy frame when the first redundancy frame for a transition from SILK-only mode was lost. Instead of mixing in old audio from the last time that CELT was used, ignore the second redundancy frame in this case. Alternatively the CELT decoder could be reset before decoding, but it would not be ready until after the 2.5 ms of audio that is needed. Reviewed by Jean-Marc Valin.
2021-09-28Check channels/stream counts and mapping when creating the multistreamFelicia Lim
encoder
2021-05-12Fix trailing whitespace.Ralph Giles
This was introduced in February, and fails the corresponding check in gitlab ci runs. Also indent the subsequent lines to match and correct typos. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2021-02-20Sending refresh DTX packets every 400 ms independently of the encoded frame ↵Jesús de Vicente Peña
size. Signed-off-by: Felicia Lim <flim@google.com>
2020-10-28Add support for Meson build systemTim-Philipp Müller
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
2020-08-22repacketizer_demo: check for read errors to fix compiler warningsNirbheek Chauhan
Actually check for read errors instead of just storing the return value in a variable that then never gets checked. Also fixes "conversion from 'size_t' to 'int', possible loss of data" compiler warnings on Windows with MSVC caused by storing the size_t returned by fread() into an int variable. Signed-off-by: Mark Harris <mark.hsj@gmail.com>
2020-06-14Silence clang silk_encoder alignment warningMark Harris
2020-06-12Build time improvement, for MSVC use intrin0.h instead of intrin.h and ↵Marcus Asteborg
remove usage of stdio.h in production code Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2020-02-15Fix for an assertion when running the fixed point testsJesús de Vicente Peña
Signed-off-by: Felicia Lim <flim@google.com>
2020-02-15Reland "Fixes to the the activity flag that is passed to Silk so it ↵Jesús de Vicente Peña
represents the final activity flag used in the DTX decision" This flag was modified after calling the Silk encoder function. This commit corrects that behavior by introducing those modifications before calling the Silk encoder. Slightly modified comments by Felicia Lim Signed-off-by: Felicia Lim <flim@google.com>
2020-02-11Revert "Fixes to the the activity flag that is passed to Silk so it ↵Felicia Lim
represents the final activity flag used in the DTX decision" This reverts commit ea3b30f946d0e3a8d5b88d1b71cac56fb87955fd.
2020-02-10Fixes to the the activity flag that is passed to Silk so it represents the ↵Jesús de Vicente Peña
final activity flag used in the DTX decision This flag was modified after calling the Silk encoder function. This commit corrects that behavior by introducing those modifications before calling the Silk encoder. Slightly modified comments by Felicia Lim Signed-off-by: Felicia Lim <flim@google.com>
2019-12-04OPUS_GET_IN_DTX handles Silk middle channel onlyGustaf Ullberg
Signed-off-by: Felicia Lim <flim@google.com>
2019-12-03Don't update null data pointer after each multistream decoderFelicia Lim
The data pointer could be null in the case of DTX or packet loss.
2019-04-11API for checking whether the encoder is in DTXGustaf Ullberg
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2019-04-09Correctly enable/disable SILK DTX with forced modeMark Harris
2019-03-02Fix mismatching arg names in function declaration and definitionFelicia Lim
2019-02-14Reset nb_no_activity_frames when analysis DTX isn't usedanalysis_fix2Jean-Marc Valin
2019-02-14Improve silence handlingJean-Marc Valin
Copy the previous analysis data instead of flagging as invalid
2019-02-13Fixing initialization issues on small frame sizesJean-Marc Valin
2019-02-13Fixes analysis buffering for silence and complexity changesJean-Marc Valin
The previous code would go out of sync in those cases.
2019-02-13Avoiding problems with x87Jean-Marc Valin
logE[b] can end up slightly larger than tonal->highE[b] due to rounding
2019-01-23Properly handle a bad stream_id in OPUS_MULTISTREAM_GET_*_STATE_REQUESTJean-Marc Valin
Thanks to Dmitriy for reporting this.
2018-11-22Refactoring: Isolating the matrix-vector product in gemm_accum()Jean-Marc Valin
2018-10-30Remove useless OPUS_SET_EXPERT_FRAME_DURATION() on CELTJean-Marc Valin
frame diration is only handled at the Opus layer. There's no change in behaviour, just less puzzling code. Thanks to Dmitriy <dmilvdv@gmail.com> for reporting this.
2018-09-25Retrain RNN classifier weights to include reverberated speechJean-Marc Valin
2018-09-14Fixes packet parsing for 16-bit CPUsv1.3-rc2Jean-Marc Valin
Without that change, a very long (> 682 ms) illegal packet could trigger a wrap-around in the test and be accepted as valid. Only 16-bit architectures (e.g. TI C5x) were affected.
2018-09-10Avoiding get_demixing_matrix() symbol clash on unified buildJean-Marc Valin
2018-09-10OpusMSDecoder does not have an arch fieldJean-Marc Valin
2018-08-31Apply equal bit allocation to ambisonic channelsMarcin Gorzel
Fixes issue #95 on GitHub. Signed-off-by: Felicia Lim <flim@google.com>
2018-07-28Fixing arithmetic problems for 16-bit CPUs in ambisonics_rate_allocation()Jean-Marc Valin
2018-07-28Fix bitrate allocation for channel mapping 2Felicia Lim
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2018-07-27Fixes C90 "mixed declarations and code" errorJean-Marc Valin
2018-07-27Remove ambisonics experimental flagJean-Marc Valin
2018-07-26Use ambisonics families 2 and 3 instead of 254 and 253Jean-Marc Valin
2018-07-22Validate multistream/projection decoder frame_sizeMark Harris
2018-07-22Silence compiler warningsMark Harris
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
2018-06-14Make bandwidth detection more conservative to avoid low-passing framesJean-Marc Valin
2018-05-29Avoiding arithmetic on NULL pointerv1.3-rcJean-Marc Valin
Causes a warning with -Wnull-pointer-arithmetic and the code wasn't doing anything anyway (the ctl call ignores NULLs)
2018-05-29Avoiding leaks when opus_demo exits with an errorJean-Marc Valin
This gets rid of false positives in static analysis (see https://trac.webkit.org/changeset/232236/webkit)
2018-05-28Only call isqrt32() with a positive argumentMark Harris
Fixes test_opus_projection failure under ubsan, due to clz(0).
2018-05-24Switch from narrowband to wideband at 9 kb/s, don't use mediumbandexp_bandwidth_fix4Jean-Marc Valin
2018-05-24Fix decision thresholds for larger frame sizesexp_bandwidth_fix3Jean-Marc Valin
Don't assume that frames larger than 20 ms save any overhead compared to 20 ms.
2018-05-24Fixes a SILK bandwidth switching regressionJean-Marc Valin
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.
2018-05-14Silk makes use of Opus VADGustaf Ullberg
Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2018-03-27Misc assertion cleanupJean-Marc Valin
2018-03-27Some missing checksJean-Marc Valin