Skip to content
Open
Show file tree
Hide file tree
Changes from 49 commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
324b618
Add an audio limiter based on AGC2 from webrtc
Oct 21, 2025
f42cf45
fix clamping
Oct 22, 2025
82b0cd3
include math.h
Oct 22, 2025
f750159
added missing commas -_-'
Oct 22, 2025
e9bcc0a
Merge remote-tracking branch 'origin/master' into ab_limiter
Oct 22, 2025
7d76913
fixing typos
Oct 22, 2025
5af1ec8
remove unused variable
Oct 22, 2025
aa0f276
Added WebRTC license text (not sure if the place is correct)
Oct 23, 2025
11c45d9
Move LICENSE.webrtc next to audiobridge code
Oct 23, 2025
1a0d93e
Adjust copyright comment for the code adapted from WebRTC project
Oct 24, 2025
901a2a8
Merge remote-tracking branch 'origin/master' into ab_limiter
Oct 24, 2025
1ab2b5b
AST-35514
Oct 24, 2025
21603ca
extract initialization into a separate function (force inline)
Oct 27, 2025
e75e9b0
extract some parts into a separate files, vectorize (AVX2, SSE4.2)
Oct 28, 2025
2247042
fix compilation
Oct 28, 2025
5bef9c0
Added info log about used version of limiter (AVX2/SSE4.2 or scalar)
Oct 28, 2025
7006830
Adjust cpuid checks
Oct 28, 2025
f151694
Update limiter.h and limiter.c
Oct 29, 2025
bf81fe2
use scale_buffer and clamp_buffer
Oct 29, 2025
f531e0e
fix declarations
Oct 29, 2025
8f9dc93
fix declarations
Oct 29, 2025
c91af23
Cleanup
Oct 29, 2025
89306ce
cleanup
Oct 29, 2025
e5e6f2c
use int
Oct 29, 2025
b621fc4
add some hints for compiler
Oct 29, 2025
2cc2e4c
fixing compilation
Oct 29, 2025
6278ec3
trying to avoid a false UB warning in some builds
Oct 29, 2025
f225554
Declare envelope fixed size
Oct 29, 2025
04a2013
Fixed sizes where possible
Oct 29, 2025
9ebeac2
avoid subtraction to not confuse gcc
Oct 29, 2025
1e5767c
use int for counter
Oct 30, 2025
9c54543
trying to help some versions of gcc to figure out that i < K_SUB_FRAM…
Oct 30, 2025
6601515
now gcc must be satisfied
Oct 30, 2025
42471c0
proper and optimized clamping
Oct 30, 2025
08879c4
add tests
Oct 31, 2025
6c690ab
Merge remote-tracking branch 'origin/master' into ab_limiter
Oct 31, 2025
c62005b
fix conditional compilation
Oct 31, 2025
8dc55a0
Merge branch 'meetecho:master' into ab_limiter
m08pvv Nov 5, 2025
5a93caf
License info
Nov 6, 2025
2119b21
remove mistakenly added param
Nov 6, 2025
c101d9f
Add fullMixBuffer, so we calculate it only once for all silent partic…
Nov 6, 2025
7943fc3
fix type
Nov 6, 2025
66fff69
Merge branch 'meetecho:master' into ab_limiter
m08pvv Nov 6, 2025
401ad3e
set silence if decoded packet length is 0
Nov 10, 2025
362132a
set silence if decoded packet length is 0
Nov 10, 2025
51c08b1
Additional cases when we have silent participants and need to calcula…
Nov 11, 2025
c7c600b
Log info about enabled limiter when starting audiobridge
Nov 11, 2025
3e53540
cleanup
Nov 13, 2025
07442c9
fix indentation
Nov 13, 2025
bb8f45b
Added links to repository and directory with C++ sources that were us…
Feb 11, 2026
9883f20
Merge remote-tracking branch 'origin/master' into ab_limiter
Feb 11, 2026
68c0a57
Fix condition for limiter initialization
Feb 11, 2026
569a388
Simplified condition
Feb 11, 2026
0e4f4a0
Simplify initialization logic and use fullmix_buffer where needed
Feb 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -397,6 +397,7 @@ plugins_libadd = \
if ENABLE_PLUGIN_AUDIOBRIDGE
plugin_LTLIBRARIES += plugins/libjanus_audiobridge.la
plugins_libjanus_audiobridge_la_SOURCES = plugins/janus_audiobridge.c \
plugins/audiobridge-deps/limiter/limiter.h plugins/audiobridge-deps/limiter/limiter.c \
plugins/audiobridge-deps/jitter.c plugins/audiobridge-deps/resample.c plugins/audiobridge-deps/arch.h \
plugins/audiobridge-deps/os_support.h plugins/audiobridge-deps/speex/speex_jitter.h plugins/audiobridge-deps/speex/speex_resampler.h \
plugins/audiobridge-deps/speex/speexdsp_types.h plugins/audiobridge-deps/speex/speexdsp_config_types.h
Expand Down
29 changes: 29 additions & 0 deletions src/plugins/audiobridge-deps/limiter/LICENSE.webrtc
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
Copyright (c) 2011, The WebRTC project authors. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.

* Neither the name of Google nor the names of its contributors may
be used to endorse or promote products derived from this software
without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Loading