3f87250a4f
Revert "Remove RTC_DISALLOW_COPY_AND_ASSIGN usages completely"
...
This reverts commit 5f0eb93d2a44cec2102fc8c3757d5bb814bd145f.
Reason for revert: Breaks downstream project. I'm going to fix that one and create a reland of this CL after.
Original change's description:
> Remove RTC_DISALLOW_COPY_AND_ASSIGN usages completely
>
> Bug: webrtc:13555, webrtc:13082
> Change-Id: Iff2cda6f516739419e97e975e03f77a98f74be03
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/249260
> Reviewed-by: Harald Alvestrand <hta@webrtc.org >
> Reviewed-by: Artem Titov <titovartem@webrtc.org >
> Commit-Queue: (Daniel.L) Byoungchan Lee <daniel.l@hpcnt.com >
> Cr-Commit-Position: refs/heads/main@{#35805}
TBR=hta@webrtc.org ,titovartem@webrtc.org ,daniel.l@hpcnt.com ,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com
Change-Id: I33d497f1132adfe6d151023195a388d9b7d548f9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:13555, webrtc:13082
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/249364
Reviewed-by: Artem Titov <titovartem@webrtc.org >
Owners-Override: Artem Titov <titovartem@webrtc.org >
Reviewed-by: Andrey Logvin <landrey@webrtc.org >
Reviewed-by: Björn Terelius <terelius@webrtc.org >
Commit-Queue: Artem Titov <titovartem@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35807}
2022-01-26 14:56:14 +00:00
5f0eb93d2a
Remove RTC_DISALLOW_COPY_AND_ASSIGN usages completely
...
Bug: webrtc:13555, webrtc:13082
Change-Id: Iff2cda6f516739419e97e975e03f77a98f74be03
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/249260
Reviewed-by: Harald Alvestrand <hta@webrtc.org >
Reviewed-by: Artem Titov <titovartem@webrtc.org >
Commit-Queue: (Daniel.L) Byoungchan Lee <daniel.l@hpcnt.com >
Cr-Commit-Position: refs/heads/main@{#35805}
2022-01-26 14:22:16 +00:00
62238097c9
Remove top-level const from parameters in function declarations.
...
This is a safe cleanup change since top-level const applied to
parameters in function declarations (that are not also
definitions) are ignored by the compiler. Hence, such changes do
not change the type of the declared functions and are simply
no-ops.
Bug: webrtc:13610
Change-Id: Ibafb92c45119a6d8bdb6f9109aa8dad6385163a9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/249086
Reviewed-by: Niels Moller <nisse@webrtc.org >
Reviewed-by: Harald Alvestrand <hta@webrtc.org >
Commit-Queue: Ali Tofigh <alito@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35802}
2022-01-26 11:05:25 +00:00
027c793c57
Replace most explicit new RefCountedObject... with make_ref_counted
...
Bug: webrtc:12701
Change-Id: Iab91f1e96715eed7f9ddcfe1ca55510a18c817eb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224544
Reviewed-by: Artem Titov <titovartem@webrtc.org >
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org >
Commit-Queue: Niels Moller <nisse@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35786}
2022-01-25 14:28:12 +00:00
7abf45fe2c
LSC: Apply clang-tidy's modernize-use-bool-literals
...
The check finds implicit conversions of integer literals to bools:
bool b1 = 1;
bool b2 = static_cast<bool>(1);
and transforms them to:
bool b1 = true;
bool b2 = true;
Bug: chromium:1290142
Change-Id: I6819a0bd2ca84ecadae08ed9389c17d2652589f4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/248166
Auto-Submit: Anton Bikineev <bikineev@chromium.org >
Reviewed-by: Magnus Flodman <mflodman@webrtc.org >
Commit-Queue: Anton Bikineev <bikineev@chromium.org >
Cr-Commit-Position: refs/heads/main@{#35778}
2022-01-24 20:42:01 +00:00
604fd2f1ab
Remove RTC_DISALLOW_COPY_AND_ASSIGN from modules/
...
Bug: webrtc:13555, webrtc:13082
Change-Id: I2c2cbcbd918f0cfa970c1a964893220ba11d4b41
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/247960
Reviewed-by: Artem Titov <titovartem@webrtc.org >
Reviewed-by: Harald Alvestrand <hta@webrtc.org >
Commit-Queue: (Daniel.L) Byoungchan Lee <daniel.l@hpcnt.com >
Cr-Commit-Position: refs/heads/main@{#35771}
2022-01-24 11:50:20 +00:00
a3361ff2f5
Update audio code to not use implicit T* --> scoped_refptr<T> conversion
...
Bug: webrtc:13464
Change-Id: Ida1694537b47c62ce327eb5c77897af451a63ae7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/246202
Reviewed-by: Henrik Andreassson <henrika@webrtc.org >
Commit-Queue: Niels Moller <nisse@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35688}
2022-01-13 15:49:49 +00:00
47ff35db61
Delete some unneeded references to module.h and module_api target.
...
Bug: None
Change-Id: Iad983efa8666ca29b5e1ac22b3ade8987dbb2841
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/242371
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org >
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35648}
2022-01-10 13:40:24 +00:00
67b0a4476b
Remove perf test isac_fix_test.
...
Bug: b/210641670
Change-Id: If562d1b2aa3486a51efffb4dec471ed7064c5261
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/241360
Reviewed-by: Christoffer Jansson <jansson@webrtc.org >
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Commit-Queue: Jeremy Leconte <jleconte@google.com >
Cr-Commit-Position: refs/heads/main@{#35533}
2021-12-14 16:52:58 +00:00
500d6e7f14
Return kSampleUnderrun if the number of samples does not fit in an AudioFrame.
...
If the number of samples does not fit in an AudioFrame, we should return
kSampleUnderrun to avoid crashes further downstream.
Bug: chromium:1265806
Change-Id: Ie94e1de53810167fd9b52ade72b3cb669a2a4f06
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238666
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org >
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Ivo Creusen <ivoc@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35459}
2021-12-02 11:48:17 +00:00
deb1b1bc70
Always call IsOk() to ensure audio codec configuration is valid when negotiating.
...
We should avoid creating codecs with invalid parameters, since this can
expose security issues. For many codecs the IsOk() method to check the
codec config is only called in DCHECKs. This CL ensures IsOk() is always
called, also in non-debug builds.
Bug: chromium:1265806
Change-Id: Ibd3c6c65d3bb547cd2603e11808ac40ac693a8b1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238801
Reviewed-by: Harald Alvestrand <hta@webrtc.org >
Commit-Queue: Ivo Creusen <ivoc@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35422}
2021-11-26 10:11:21 +00:00
e1bbef1e6b
Add options to only NACK if there is a valid RTT and if loss rate is below a configured value.
...
Bug: webrtc:10178
Change-Id: I16a74ed6fb380cecaf82a303bb14bf215c944a73
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238988
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35419}
2021-11-25 16:30:17 +00:00
5f34130f26
Declare LERROR deprecated and remove all usage in webrtc
...
Bug: webrtc:13362
Change-Id: I1c6c6eccd950d73be616b34f96db7832ff94377e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238804
Commit-Queue: Harald Alvestrand <hta@webrtc.org >
Reviewed-by: Niels Moller <nisse@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35416}
2021-11-24 14:34:24 +00:00
624fb67bbc
Revert "Fix out-of-bounds memory access due to large number of audio channels."
...
This reverts commit 4cbfe4192cd5b8289f7896ce14e0bd8c4ae41a97.
Reason for revert: The fix in this CL is ineffective. A better one has been created here: https://webrtc-review.googlesource.com/c/src/+/238666
Original change's description:
> Fix out-of-bounds memory access due to large number of audio channels.
>
> The number of audio channels can be configured in SDP, and can thus be
> set to arbitrary values by an attacker. This CL fixes an out-of-bounds
> memory access that could occur when the number of channels is set to a
> large number.
>
> Bug: chromium:1265806
> Change-Id: Ic88ff6d85b978b8eb99bf03cc52457a4552e8c24
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237808
> Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org >
> Commit-Queue: Ivo Creusen <ivoc@webrtc.org >
> Cr-Commit-Position: refs/heads/main@{#35354}
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: chromium:1265806
Change-Id: If695ed92f831c2a9631efdf47f1568f5a15c1841
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238803
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org >
Commit-Queue: Ivo Creusen <ivoc@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35413}
2021-11-24 11:45:55 +00:00
d823259c7f
Set the maximum number of audio channels to 24
...
The number of audio channels can be configured in SDP, and can thus be
set to arbitrary values. However, the audio code has limitations that
prevent a high number of channels from working well in practice.
Bug: chromium:1265806
Change-Id: I6f6c3f68a3791bb189a614eece6bd0ed7874f252
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237807
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org >
Reviewed-by: Harald Alvestrand <hta@webrtc.org >
Commit-Queue: Ivo Creusen <ivoc@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35359}
2021-11-16 17:01:54 +00:00
4cbfe4192c
Fix out-of-bounds memory access due to large number of audio channels.
...
The number of audio channels can be configured in SDP, and can thus be
set to arbitrary values by an attacker. This CL fixes an out-of-bounds
memory access that could occur when the number of channels is set to a
large number.
Bug: chromium:1265806
Change-Id: Ic88ff6d85b978b8eb99bf03cc52457a4552e8c24
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237808
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org >
Commit-Queue: Ivo Creusen <ivoc@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35354}
2021-11-16 12:32:41 +00:00
d3251968d1
Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED
...
Add implementation of RTC_DCHECK_NOTREACHED equal to the RTC_NOTREACHED.
The new macros will replace the old one when old one's usage will be
removed. The idea of the renaming to provide a clear signal that this
is debug build only macros and will be stripped in the production build.
Bug: webrtc:9065
Change-Id: I4c35d8b03e74a4b3fd1ae75dba2f9c05643101db
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237802
Reviewed-by: Harald Alvestrand <hta@webrtc.org >
Commit-Queue: Artem Titov <titovartem@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35348}
2021-11-15 21:44:59 +00:00
bf0874568c
Implement RTCOutboundRtpStreamStats.targetBitrate for audio.
...
Spec: https://w3c.github.io/webrtc-stats/#dom-rtcoutboundrtpstreamstats-targetbitrate
Bug: webrtc:13377
Change-Id: I98dd263e0b9d6e2ca94969d2a91857b14cd65f70
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237402
Reviewed-by: Henrik Boström <hbos@webrtc.org >
Reviewed-by: Minyue Li <minyue@webrtc.org >
Reviewed-by: Sam Zackrisson <saza@webrtc.org >
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35337}
2021-11-12 09:24:34 +00:00
4a97d7281f
Remove NetEq extra delay option.
...
Bug: b/156734419
Change-Id: I787e6961ad283990d633029c0cf296e10b825875
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237403
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org >
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35326}
2021-11-09 17:25:46 +00:00
fa68ac0c4e
Reland "Remove legacy delay manger field trial and update default config."
...
This is a reland of 93849d4b2a976b0a46059d6f74d9efd8f12eab92
Original change's description:
> Remove legacy delay manger field trial and update default config.
>
> Bug: webrtc:10333
> Change-Id: I20e55d8d111d93657d1afe556fe3a325337c074c
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/232820
> Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
> Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
> Cr-Commit-Position: refs/heads/main@{#35321}
Bug: webrtc:10333
Change-Id: I9b3c732309d32640d15c372a4dde37d5d44c95d1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237502
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35325}
2021-11-09 14:49:56 +00:00
46814941f2
Revert "Remove legacy delay manger field trial and update default config."
...
This reverts commit 93849d4b2a976b0a46059d6f74d9efd8f12eab92.
Reason for revert: AcmReceiverBitExactnessOldApi tests failing on MacARM64; first failing build https://ci.chromium.org/ui/p/webrtc/builders/ci/MacARM64%20M1%20Release/1038/overview
Example faliure
[ RUN ] AcmReceiverBitExactnessOldApi.8kHzOutput
...
(rtp_file_reader.cc:165): Failed to read
../../modules/audio_coding/acm2/audio_coding_module_unittest.cc:912: Failure
Expected equality of these values:
checksum_ref
Which is: "636efe6d0a148f22c5383f356da3deac"
checksum_string
Which is: "6a288942d67e82076b38b17777cdaee4"
Original change's description:
> Remove legacy delay manger field trial and update default config.
>
> Bug: webrtc:10333
> Change-Id: I20e55d8d111d93657d1afe556fe3a325337c074c
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/232820
> Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
> Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
> Cr-Commit-Position: refs/heads/main@{#35321}
TBR=ivoc@webrtc.org ,jakobi@webrtc.org ,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com
Change-Id: I0bd3832aacba8dcd8e836650786cea20b4c083be
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10333
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237441
Reviewed-by: Olga Sharonova <olka@webrtc.org >
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org >
Commit-Queue: Olga Sharonova <olka@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35324}
2021-11-09 09:10:39 +00:00
93849d4b2a
Remove legacy delay manger field trial and update default config.
...
Bug: webrtc:10333
Change-Id: I20e55d8d111d93657d1afe556fe3a325337c074c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/232820
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35321}
2021-11-08 11:14:09 +00:00
e5e78c4521
Fix -Wunused-but-set-variable.
...
Bug: None
Change-Id: I8943227108e46c4c942895e4bd8fb276947502e0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/236525
Reviewed-by: Harald Alvestrand <hta@webrtc.org >
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org >
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org >
Reviewed-by: Niels Moller <nisse@webrtc.org >
Reviewed-by: Björn Terelius <terelius@webrtc.org >
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35272}
2021-10-28 12:53:49 +00:00
d67e75a45d
Update m1 arm64 audio bitexactness tests hashes. Followup.
...
Update hashes that weren't updated at
https://webrtc-review.googlesource.com/c/src/+/232220
Bug: b/199885455
Change-Id: I4f9327fa48a9d5656f57c5dcbc6438f20f919acd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/232320
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Andrey Logvin <landrey@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35023}
2021-09-17 10:19:01 +00:00
d14f98f635
Update m1 arm64 audio bitexactness tests hashes
...
Follow up for https://webrtc-review.googlesource.com/c/src/+/232061/5 . Updated mac M1 tests that was missed because they are not part of CQ
Bug: b/199885455
Change-Id: I77618ac2869ba601f322857f4391b63220d20252
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/232220
Reviewed-by: Artem Titov <titovartem@webrtc.org >
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Andrey Logvin <landrey@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35021}
2021-09-17 08:59:05 +00:00
e742d8c163
Updae bitexactness tests to match new canonical results
...
This CL has to be submitted together with chromium roll
Roll chromium_revision 48501b3f18..a098e1265b (917742:921682)
Change log: 48501b3f18..a098e1265b
Full diff: 48501b3f18..a098e1265b
Changed dependencies
* src/base: bdbd6f899c..ecf6ff89bf
* src/build: f90eed6a5e..fabb3638a7
* src/buildtools/third_party/libc++abi/trunk: 7de86cbf37..a5b6419452
* src/buildtools/third_party/libunwind/trunk: edf77b2d2d..44ea7aba6a
* src/ios: 1b17fd57e6..e8d5d843cf
* src/testing: 59835db543..7adcb6a6bf
* src/third_party: a299c990bc..21d7875bec
* src/third_party/android_deps/libs/com_google_auto_auto_common: version:2@0.10.cr0 ..version:2@1.1.2.cr0
* src/third_party/android_deps/libs/com_google_errorprone_error_prone_annotation: version:2@2.7.1.cr0..version:2@2.9.0.cr0
* src/third_party/android_deps/libs/com_google_errorprone_error_prone_annotations: version:2@2.7.1.cr0..version:2@2.9.0.cr0
* src/third_party/android_deps/libs/com_google_errorprone_error_prone_check_api: version:2@2.7.1.cr0..version:2@2.9.0.cr0
* src/third_party/android_deps/libs/com_google_errorprone_error_prone_core: version:2@2.7.1.cr0..version:2@2.9.0.cr0
* src/third_party/android_deps/libs/com_google_errorprone_error_prone_type_annotations: version:2@2.7.1.cr0..version:2@2.9.0.cr0
* src/third_party/android_deps/libs/com_google_guava_guava: version:2@30.1-jre.cr0..version:2@30.1.1-jre.cr0
* src/third_party/androidx: TnotTDnWGUJDh0mSOMrgnIwzbfWFiwo2NTtr2SlUJ0MC..QRXHawrfyCC8nr_u3VCPoilYsqHO01yv1EiduoQUPcgC
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/dddb60eb97..27a3328a37
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/d9a9ebbe89..6b072fac88
* src/third_party/depot_tools: 789dfc223b..9c67b23020
* src/third_party/freetype/src: 7482c98f15..5b626281f1
* src/third_party/googletest/src: 955c7f837e..159c9ad23e
* src/third_party/harfbuzz-ng/src: 280366ba6a..6602cbb706
* src/third_party/icu: ece15d049f..3f443830bd
* src/third_party/libvpx/source/libvpx: 15a75b4530..65a1751e5b
* src/third_party/libyuv: 49ebc996aa..0896c34873
* src/third_party/perfetto: 8420673b4c..de98afcd4a
* src/third_party/r8: dvPOJ_8iAF6OHGO79d86VbJjyKj7Xn0SFxlVVC9LHdcC..j4P6kTwiJeMkYRbaOqRCB-ZrYyISP0NrcyNNAd8MRM0C
* src/third_party/usrsctp/usrsctplib: bdf3dd3f28..62d7d0c928
* src/tools: e3721e5cf9..a27c09f45b
* src/tools/luci-go: git_revision:7f42370cb3b75398bdb9ae0aabe215a70d40cd31..git_revision:dc21267f89df3981e809fe9566591d6916ae758b
* src/tools/luci-go: git_revision:7f42370cb3b75398bdb9ae0aabe215a70d40cd31..git_revision:dc21267f89df3981e809fe9566591d6916ae758b
* src/tools/luci-go: git_revision:7f42370cb3b75398bdb9ae0aabe215a70d40cd31..git_revision:dc21267f89df3981e809fe9566591d6916ae758b
Added dependency
* src/third_party/android_deps/libs/org_checkerframework_dataflow_errorprone
Removed dependency
* src/third_party/android_deps/libs/org_checkerframework_dataflow_shaded
DEPS diff: 48501b3f18..a098e1265b /DEPS
Clang version changed llvmorg-14-init-2175-g945cde8b:llvmorg-14-init-3710-gd11a0c5d
Details: 48501b3f18..a098e1265b /tools/clang/scripts/update.py
TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com ,marpan@webrtc.org , jianj@chromium.org ,
Bug: b/199885455
Change-Id: I64329c57949e9233f5cf65167f012db0637fe4fc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/232061
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org >
Commit-Queue: Andrey Logvin <landrey@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35008}
2021-09-15 18:38:41 +00:00
1061686107
red: handle opus dtx 400ms timestamp gap
...
by not encoding redundancy. The timestamp gap of 400ms means a
rtp timestamp difference of 19200 which would overflow the 14 bit
RED timestamp difference field.
To test in Chrome, go to
https://webrtc.github.io/samples/src/content/peerconnection/audio/
set `useDtx = true` in the console and be very quiet.
BUG=webrtc:13182,webrtc:11640
Change-Id: I1cedc7d846ac7ae821bb7cb5c0f37a17511ac727
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231940
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#35005}
2021-09-15 15:09:28 +00:00
bc503c95b5
Remove support for nack threshold.
...
The nack threshold feature is unlikely to provide any value, since
reordered packets are rare. This CL also removes the factory method
from the NackTracker class, since it did not add much value.
Bug: webrtc:10178
Change-Id: Ib6bece4a2d9f95bd4298799aaa15627f5c014b61
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231953
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org >
Commit-Queue: Ivo Creusen <ivoc@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#34993}
2021-09-14 16:51:17 +00:00
018cd3d6fc
Avoid NACKing after DTX.
...
This is done by not adding missing packets to the NACK list if the number of samples per packet is too large.
Bug: webrtc:10178
Change-Id: If46398d6d05ea35f30d7028040d3b808559e950b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231841
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#34984}
2021-09-13 16:31:42 +00:00
7a4ab1a063
red: handle 0-redundancy encoding case
...
which is a "degenerated" case that just adds a one-byte header.
BUG=webrtc:11640
Change-Id: I173f4cb56270e0090219e4450b036bbe1b51756a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231696
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org >
Reviewed-by: Harald Alvestrand <hta@webrtc.org >
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#34976}
2021-09-13 07:23:11 +00:00
3a9640a5aa
Improve nacking logic
...
Requesting nacks in more cases allows the delay adaptation to better
predict if it's worth it to increase the jitter buffer delay to wait for
the nacked packets to arrive.
Bug: webrtc:10178
Change-Id: I46adb76c013dbb8df0b99eb3f7a398f8f21c2bf6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231648
Commit-Queue: Ivo Creusen <ivoc@webrtc.org >
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#34970}
2021-09-10 14:21:22 +00:00
552c83171b
Update nack tracker when receiving empty packets.
...
Bug: webrtc:7611
Change-Id: Ied50829f245ea99f8d737cffdf9a3d646de3fbaf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231641
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#34958}
2021-09-09 10:40:35 +00:00
58ed02eae3
Improve adaptation to reordered packets in delay manager.
...
This is done by adding a reorder optimizer that estimates the probability of receiving reordered packets.
The optimal delay is decided by balancing the cost of increasing the delay against the probability of missing a reordered packet, resulting in a loss. This balance is decided using the `ms_per_loss_percent` parameter.
The usage and parameters can be controlled via field trial.
Bug: webrtc:10178
Change-Id: Ic484df0412af35610e74b3a6070f2bac7a926a63
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231541
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#34954}
2021-09-08 16:41:27 +00:00
74158ff761
Refactor delay manager.
...
Split out `RelativeArrivalDelayTracker` and `DelayOptimizer` logic.
This is in preparation for adding another `DelayOptimizer` specialized in handling reordered packets.
Bug: webrtc:10178
Change-Id: Id3c1746d91980b171fa524f9b2b71cf11fc75f64
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231224
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#34938}
2021-09-07 13:45:47 +00:00
7cca016721
Hard code rtx handling option in NetEq.
...
This allows NetEq to adapt to late reordered packets which are common when using retransmissions.
Remaining cleanup of the plumbing from WebRTC API will be done in a follow-up cl.
Bug: webrtc:10178
Change-Id: Ia9911eaafdabd3b69441dc089116d79e24f1b2b2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231002
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#34898}
2021-09-01 18:18:59 +00:00
25edb62a94
Calculate relative arrival delay for reordered packets.
...
This changes behavior slightly but results in a better delay estimate and cleaner code.
Bug: webrtc:10178
Change-Id: If150258bc1ea58149940f17c5660733ff61159c3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/230740
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/main@{#34883}
2021-08-31 12:26:41 +00:00
1039392209
Add a unittest to NetEq StatisticsCalculator for discarded packets counter.
...
Bug: webrtc:8199
Change-Id: I32127af1ae6692717f28dbf2d820cd67c0b6a66a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229300
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org >
Commit-Queue: Minyue Li <minyue@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34808}
2021-08-19 17:17:37 +00:00
57d13105e5
A test to verify counter on discarded packet upon reordering.
...
Bug: webrtc:8199
Change-Id: Ia8c545e4ae0ff98c22031b633d1bca4ba58e9e7b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229380
Commit-Queue: Minyue Li <minyue@webrtc.org >
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34804}
2021-08-19 14:13:30 +00:00
9367cff59b
red: change default redundancy level to 1
...
BUG=webrtc:11640
Change-Id: Ide66ae4803349ebb908d372e811efd9ef93d51e5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228424
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com >
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org >
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34720}
2021-08-11 12:59:13 +00:00
e9655736e5
Reland "red: remove special-casing of no-redundancy"
...
This is a reland of 320c57b7c6bf68d8612a4f135f44b3d29e802113
Original change's description:
> red: remove special-casing of no-redundancy
>
> removes the special-casing of not sending a RED header when there is no redundant payload.
> This avoids switching back and forth between the primary and the red payload format (primarily at the start of the connection).
>
> BUG=webrtc:11640
>
> Change-Id: I8e0044bef1ed7c4168d9527645522392db2ed068
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/220932
> Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org >
> Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
> Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org >
> Cr-Commit-Position: refs/heads/master@{#34703}
Bug: webrtc:11640
Change-Id: I5e5687be575183ee16d74df4a8170e4fedad739f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228422
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org >
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34713}
2021-08-11 08:26:59 +00:00
1118ebac0a
Revert "red: remove special-casing of no-redundancy"
...
This reverts commit 320c57b7c6bf68d8612a4f135f44b3d29e802113.
Reason for revert:
Breaks CI tests: https://ci.chromium.org/ui/p/webrtc/builders/ci/Linux32%20Release/27236/overview
All CI tests: https://ci.chromium.org/p/webrtc/g/ci/console
Error is of the following type:
```
../../modules/audio_coding/codecs/red/audio_encoder_copy_red_unittest.cc:195: Failure
Expected equality of these values:
1u
Which is: 1
encoded_info_.encoded_bytes
Which is: 2
Stack trace:
0x56b298d9: webrtc::AudioEncoderCopyRedTest_CheckPayloadSizesSingle_Test::TestBody()
0x572fe317: testing::internal::HandleExceptionsInMethodIfSupported<>()
0x572fe1d4: testing::Test::Run()
0x572ff2ee: testing::TestInfo::Run()
```
Original change's description:
> red: remove special-casing of no-redundancy
>
> removes the special-casing of not sending a RED header when there is no redundant payload.
> This avoids switching back and forth between the primary and the red payload format (primarily at the start of the connection).
>
> BUG=webrtc:11640
>
> Change-Id: I8e0044bef1ed7c4168d9527645522392db2ed068
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/220932
> Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org >
> Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
> Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org >
> Cr-Commit-Position: refs/heads/master@{#34703}
TBR=henrik.lundin@webrtc.org ,devicentepena@webrtc.org ,minyue@webrtc.org ,philipp.hancke@googlemail.com ,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com
Change-Id: Ide409232720df32b24022f99228f3b6ae81f06fe
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:11640
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228421
Reviewed-by: Andrey Logvin <landrey@webrtc.org >
Commit-Queue: Andrey Logvin <landrey@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34707}
2021-08-10 18:09:16 +00:00
320c57b7c6
red: remove special-casing of no-redundancy
...
removes the special-casing of not sending a RED header when there is no redundant payload.
This avoids switching back and forth between the primary and the red payload format (primarily at the start of the connection).
BUG=webrtc:11640
Change-Id: I8e0044bef1ed7c4168d9527645522392db2ed068
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/220932
Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org >
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34703}
2021-08-10 16:56:05 +00:00
43f25e36f7
red: fix redundancy shift and add tests
...
fixes an incorrect redundancy shift and add tests that would have caught this bug.
BUG=webrtc:11640
Change-Id: I6fe2fb21587fffc5fee4d403ac898e12d525a1cd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224120
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34702}
2021-08-10 16:51:06 +00:00
3abd10889f
Fix define if chain in audio decoder unittest
...
Follow up https://webrtc-review.googlesource.com/c/src/+/228247 . Turned out "#elif defined(WEBRTC_MAC) && defined(WEBRTC_ARCH_ARM64) // M1 Mac" branch was unreachable
Bug: webrtc:13053
Change-Id: Icf1aa5147347a1fad0dce8cca893bb3c598f658e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228381
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Commit-Queue: Andrey Logvin <landrey@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34699}
2021-08-10 13:00:33 +00:00
8c654aa059
Update bit exactness tests to match changes
...
Follow up for https://webrtc-review.googlesource.com/c/src/+/227773 , updating M1 checksums that were not updated in the previous CL.
Example M1 failed run: https://ci.chromium.org/ui/p/webrtc/builders/ci/MacARM64%20M1%20Release/401/overview
Bug: webrtc:13053
Change-Id: I111d1d3c4bf5828ee499f20799b527ca916d77e7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228247
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org >
Commit-Queue: Andrey Logvin <landrey@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34697}
2021-08-10 12:19:13 +00:00
cfea2182f8
Use backticks not vertical bars to denote variables in comments
...
Bug: webrtc:12338
Change-Id: I89c8b3a328d04203177522cbdfd9e606fd4bce4c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228246
Reviewed-by: Harald Alvestrand <hta@webrtc.org >
Commit-Queue: Artem Titov <titovartem@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34696}
2021-08-10 10:40:03 +00:00
5ce7d14f81
Delete legacy rtp header parser as no longer used
...
Bug: None
Change-Id: I3c532eee7f2d9e5295874dd538730625c8d423ff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227086
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org >
Reviewed-by: Minyue Li <minyue@google.com >
Reviewed-by: Minyue Li <minyue@webrtc.org >
Reviewed-by: Erik Språng <sprang@webrtc.org >
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34676}
2021-08-09 12:14:52 +00:00
ee96675eda
Reland "Roll chromium_revision de0d050e64..42d795c24f (908789:908899)"
...
This is a reland of e369928e040623340e04390ce933e5dc491af22f
Original change's description:
> Roll chromium_revision de0d050e64..42d795c24f (908789:908899)
>
> Change log: de0d050e64..42d795c24f
> Full diff: de0d050e64..42d795c24f
>
> Changed dependencies
> * src/base: f14f1b7600..6551b66fbf
> * src/build: e360729c13..496f4dc82b
> * src/ios: 2965e1969a..fda9d90178
> * src/testing: 36299f559a..cb835b4820
> * src/third_party: e99cff4446..aec4ec11c2
> * src/third_party/androidx: 6YnvOFZqQbSfmq9Bknb9CSKuND84c-TqnEATwNlvhqwC..iS9uLbt1ks96lnB9FgzCbsDit0AaQS7PqWyWdVJ3mggC
> * src/third_party/depot_tools: 0a4dd4181a..cc487710bb
> * src/third_party/perfetto: 00e6f338d0..7d0822e5b1
> * src/tools: 5219d6859a..667c51bbca
> DEPS diff: de0d050e64..42d795c24f /DEPS
>
> Clang version changed llvmorg-13-init-15561-gf98ed74f:llvmorg-14-init-591-g7d9d926a
> Details: de0d050e64..42d795c24f /tools/clang/scripts/update.py
>
> BUG=None
>
> Change-Id: Ibc203c4808885594a4316d8ce0e0a82bacebe51b
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227770
> Commit-Queue: Artem Titov <titovartem@webrtc.org >
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org >
> Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
> Cr-Commit-Position: refs/heads/master@{#34658}
Bug: None
Change-Id: Ibc843ef6e4e50d9d62b6b3550d5cde6eaebc02e6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227773
Commit-Queue: Artem Titov <titovartem@webrtc.org >
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34662}
2021-08-06 13:51:07 +00:00
d937f50e20
Revert "Roll chromium_revision de0d050e64..42d795c24f (908789:908899)"
...
This reverts commit e369928e040623340e04390ce933e5dc491af22f.
Reason for revert: Breaks downstream project
Original change's description:
> Roll chromium_revision de0d050e64..42d795c24f (908789:908899)
>
> Change log: de0d050e64..42d795c24f
> Full diff: de0d050e64..42d795c24f
>
> Changed dependencies
> * src/base: f14f1b7600..6551b66fbf
> * src/build: e360729c13..496f4dc82b
> * src/ios: 2965e1969a..fda9d90178
> * src/testing: 36299f559a..cb835b4820
> * src/third_party: e99cff4446..aec4ec11c2
> * src/third_party/androidx: 6YnvOFZqQbSfmq9Bknb9CSKuND84c-TqnEATwNlvhqwC..iS9uLbt1ks96lnB9FgzCbsDit0AaQS7PqWyWdVJ3mggC
> * src/third_party/depot_tools: 0a4dd4181a..cc487710bb
> * src/third_party/perfetto: 00e6f338d0..7d0822e5b1
> * src/tools: 5219d6859a..667c51bbca
> DEPS diff: de0d050e64..42d795c24f /DEPS
>
> Clang version changed llvmorg-13-init-15561-gf98ed74f:llvmorg-14-init-591-g7d9d926a
> Details: de0d050e64..42d795c24f /tools/clang/scripts/update.py
>
> BUG=None
>
> Change-Id: Ibc203c4808885594a4316d8ce0e0a82bacebe51b
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227770
> Commit-Queue: Artem Titov <titovartem@webrtc.org >
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org >
> Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
> Cr-Commit-Position: refs/heads/master@{#34658}
TBR=mbonadei@webrtc.org ,ivoc@webrtc.org ,titovartem@webrtc.org ,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com
Change-Id: Id01cdb6a6344d7d08ee38fb152cb209a4705aa39
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227772
Reviewed-by: Artem Titov <titovartem@webrtc.org >
Commit-Queue: Artem Titov <titovartem@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34659}
2021-08-06 11:07:58 +00:00
e369928e04
Roll chromium_revision de0d050e64..42d795c24f (908789:908899)
...
Change log: de0d050e64..42d795c24f
Full diff: de0d050e64..42d795c24f
Changed dependencies
* src/base: f14f1b7600..6551b66fbf
* src/build: e360729c13..496f4dc82b
* src/ios: 2965e1969a..fda9d90178
* src/testing: 36299f559a..cb835b4820
* src/third_party: e99cff4446..aec4ec11c2
* src/third_party/androidx: 6YnvOFZqQbSfmq9Bknb9CSKuND84c-TqnEATwNlvhqwC..iS9uLbt1ks96lnB9FgzCbsDit0AaQS7PqWyWdVJ3mggC
* src/third_party/depot_tools: 0a4dd4181a..cc487710bb
* src/third_party/perfetto: 00e6f338d0..7d0822e5b1
* src/tools: 5219d6859a..667c51bbca
DEPS diff: de0d050e64..42d795c24f /DEPS
Clang version changed llvmorg-13-init-15561-gf98ed74f:llvmorg-14-init-591-g7d9d926a
Details: de0d050e64..42d795c24f /tools/clang/scripts/update.py
BUG=None
Change-Id: Ibc203c4808885594a4316d8ce0e0a82bacebe51b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227770
Commit-Queue: Artem Titov <titovartem@webrtc.org >
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org >
Reviewed-by: Ivo Creusen <ivoc@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#34658}
2021-08-06 10:51:58 +00:00