Commit Graph

37446 Commits

Author SHA1 Message Date
1adcde9dfe Use active ICE controller in P2PTransportChannel with an adapter (#6/n)
Controlled by a field trial, P2PTransportChannel can now use an active ICE controller instead of a legacy ICE controller.

P2PTransportChannel unit tests need non-trivial changes to exercise the refactored code path, so the testing changes are added in a follow-up CL.

Bug: webrtc:14367, webrtc:14131
Change-Id: I00d4930a5692c7d6d331ea9d6c2a2199304e363c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/274701
Commit-Queue: Sameer Vijaykar <samvi@google.com>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38114}
2022-09-19 09:41:30 +00:00
b555e83395 add ccmni as cellular type
"ccmni" is the cellular interface name in MTK platform.
The accurate name may be ccmni0, ccmni1 ...etc. We would like
to add it in order to provide correct adapter type when user
invokes webrtc function GetAdapterTypeFromName.

Bug: b/246680543, webrtc:14438
Change-Id: I30074a442b3c02b93bc72a044675718955bd96f4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275860
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38113}
2022-09-19 07:53:18 +00:00
1306ad4bd7 Keep old checksums for older version of opus
Bug: b/247070183
Change-Id: I9731ba64b9334bd51ae69f8468c987de7824a7b0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275764
Auto-Submit: Christoffer Jansson <jansson@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38112}
2022-09-19 07:05:58 +00:00
6432576a6b Update WebRTC code version (2022-09-19T04:07:26).
Bug: None
Change-Id: I7185792d5813dd40000ad0bc945bb267c1793ce2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275840
Bot-Commit: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38111}
2022-09-19 04:56:38 +00:00
7f1fa1f1ac Update WebRTC code version (2022-09-18T04:03:12).
Bug: None
Change-Id: Ib9725ab2ca1c10d36b61b25a71f97668e0095ddb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275826
Bot-Commit: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38110}
2022-09-18 05:31:16 +00:00
7db44a4dd3 Update WebRTC code version (2022-09-17T04:02:51).
Bug: None
Change-Id: Id228393b5280cbd598660ef7b83e199635bac110
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275801
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Bot-Commit: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38109}
2022-09-17 04:58:20 +00:00
c82783b70f Roll chromium_revision 355422f3e0..59ad47fe43 (1048217:1048328)
Change log: 355422f3e0..59ad47fe43
Full diff: 355422f3e0..59ad47fe43

Changed dependencies
* src/buildtools: 813d569b26..92ea83be5d
* src/buildtools/third_party/libc++/trunk: e2f63a1a48..e73c465224
* src/ios: ff4b2b1849..61caa65fc7
* src/testing: 4985eb57b8..5bf9e1ff8d
* src/third_party: 55fe14bb50..4c323a286c
* src/third_party/androidx: Is8uteQpDOZkyPAYfFDv2xzhwkI22rad5XI774XLUqMC..t9JpmXB7WnNcqmS_a_S1Kj6oXo0GGgo1R7ba8dTZXKgC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/14d227abed..fcf15b9b7b
* src/third_party/depot_tools: dca14bc463..421c4fe8d0
* src/third_party/freetype/src: 8e68439a6f..33ceac2afc
* src/tools: bb199c860a..37a4ba4b6b
DEPS diff: 355422f3e0..59ad47fe43/DEPS

No update to Clang.

BUG=None

Change-Id: Ie6aaedcbae0a11686af842fe62971b7a9cad117e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275800
Bot-Commit: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38108}
2022-09-17 02:38:48 +00:00
27f91afa38 Introduce MetricsExporter API with stdout implementation
Bug: b/246095034
Change-Id: I9979fb03b9a02e76808145f43910420524fe633a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/274880
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38107}
2022-09-17 00:56:29 +00:00
acd375723b Roll chromium_revision ea8a94b309..355422f3e0 (1048110:1048217)
Change log: ea8a94b309..355422f3e0
Full diff: ea8a94b309..355422f3e0

Changed dependencies
* src/base: ca4eeacb2c..9e7775a4b1
* src/build: 48abf311f6..843261bc54
* src/ios: a39bf788d4..ff4b2b1849
* src/testing: 7b1540d785..4985eb57b8
* src/third_party: 7fef8181f7..55fe14bb50
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/c067655636..14d227abed
* src/third_party/fuchsia-sdk/sdk: version:9.20220915.3.1..version:9.20220916.1.1
* src/third_party/perfetto: de4b5d49c1..cd3e2b402e
* src/tools: bdc9e5f900..bb199c860a
* src/tools/luci-go: git_revision:c93fd3c5ebdc3999eea86a7623dbd1ed4b40bc78..git_revision:78063b01b53dd33a541938207b785cc86d34be37
* src/tools/luci-go: git_revision:c93fd3c5ebdc3999eea86a7623dbd1ed4b40bc78..git_revision:78063b01b53dd33a541938207b785cc86d34be37
DEPS diff: ea8a94b309..355422f3e0/DEPS

No update to Clang.

BUG=None

Change-Id: Ic9b8e718b5c2a175995808666a048a2c3fca814c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275782
Bot-Commit: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38106}
2022-09-16 22:31:14 +00:00
b7531ef7ef Roll chromium_revision 5f70135093..ea8a94b309 (1047943:1048110)
Change log: 5f70135093..ea8a94b309
Full diff: 5f70135093..ea8a94b309

Changed dependencies
* src/base: b9c7aac9b1..ca4eeacb2c
* src/build: 809ce4b9ec..48abf311f6
* src/buildtools/linux64: git_revision:e70d8c3d5620bc0ddcbad23a36b1b26f815ca90a..git_revision:cc28efe62ef0c2fb32455f414a29c4a55bb7fbc4
* src/buildtools/mac: git_revision:e70d8c3d5620bc0ddcbad23a36b1b26f815ca90a..git_revision:cc28efe62ef0c2fb32455f414a29c4a55bb7fbc4
* src/buildtools/third_party/libunwind/trunk: 60a480ee18..77b82eb53f
* src/buildtools/win: git_revision:e70d8c3d5620bc0ddcbad23a36b1b26f815ca90a..git_revision:cc28efe62ef0c2fb32455f414a29c4a55bb7fbc4
* src/ios: 2bbe76d6e2..a39bf788d4
* src/testing: 6235452f8c..7b1540d785
* src/third_party: 8819efcddb..7fef8181f7
* src/third_party/androidx: JhE-AIohCaCjpsq8dv30ZYeZmDQ4qebqPEvXPcbNsScC..Is8uteQpDOZkyPAYfFDv2xzhwkI22rad5XI774XLUqMC
* src/third_party/perfetto: deca583af1..de4b5d49c1
* src/third_party/r8/d8: 4DSZMtRXZITDo6YY90ljp92vzRT0eY52akTTR-2Jh7kC..9D5mlKXcvEeq8EeDZf3NXnhO5BuGy0eDy5q1hLou4WwC
* src/tools: 1b73b1f06a..bdc9e5f900
DEPS diff: 5f70135093..ea8a94b309/DEPS

No update to Clang.

BUG=None

Change-Id: Id60ba8b56b0a83b8a946523ae6271a3730b851b7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275745
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Bot-Commit: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38105}
2022-09-16 18:47:28 +00:00
53a762a857 Roll chromium_revision 6ccdf1a255..5f70135093 (1046947:1047943)
Change log: 6ccdf1a255..5f70135093
Full diff: 6ccdf1a255..5f70135093

Changed dependencies
* src/base: ebdf2642c3..9f6376cc6b
* src/build: b7148ee91d..48abf311f6
* src/buildtools: e713c13e2f..813d569b26
* src/buildtools/linux64: git_revision:b4851eb2062f76a880c07f7fa0d12913beb6d79e..git_revision:e70d8c3d5620bc0ddcbad23a36b1b26f815ca90a
* src/buildtools/mac: git_revision:b4851eb2062f76a880c07f7fa0d12913beb6d79e..git_revision:e70d8c3d5620bc0ddcbad23a36b1b26f815ca90a
* src/buildtools/third_party/libc++/trunk: c1e647c7c3..e2f63a1a48
* src/buildtools/win: git_revision:b4851eb2062f76a880c07f7fa0d12913beb6d79e..git_revision:e70d8c3d5620bc0ddcbad23a36b1b26f815ca90a
* src/ios: 7dd3e07106..4d3e2e3d24
* src/testing: 70b311279f..6235452f8c
* src/third_party: fba1719f4f..8819efcddb
* src/third_party/androidx: ZdhBYngU8wyq5rvMrY4fNAijgdagR98QnLw9JFadQgQC..JhE-AIohCaCjpsq8dv30ZYeZmDQ4qebqPEvXPcbNsScC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/37391a1619..c067655636
* src/third_party/depot_tools: 9ebcfa6be1..dca14bc463
* src/third_party/ffmpeg: 64d7d8d0e5..3dd1a90db3
* src/third_party/fuchsia-sdk/sdk: version:9.20220914.1.1..version:9.20220915.3.1
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/ff7b753a63..fd35001068
* src/third_party/perfetto: a8b5c6144d..38a2594dee
* src/third_party/r8/d8: M3EMkYB8eJSrmuVBALj8iJw_ysvzFKniQRYFZ7d61XkC..4DSZMtRXZITDo6YY90ljp92vzRT0eY52akTTR-2Jh7kC
* src/tools: 13c574e103..1b73b1f06a
Added dependencies
* src/third_party/android_deps/libs/net_bytebuddy_byte_buddy
* src/third_party/android_deps/libs/org_objenesis_objenesis
* src/third_party/android_deps/libs/net_bytebuddy_byte_buddy_agent
DEPS diff: 6ccdf1a255..5f70135093/DEPS

Clang version changed llvmorg-16-init-4438-gc922cac8:llvmorg-16-init-4609-g025a5b22
Details: 6ccdf1a255..5f70135093/tools/clang/scripts/update.py

BUG=None

Change-Id: Ide422b8875b7ac5ff5264197f61038715ed6b284
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275744
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Christoffer Jansson <jansson@webrtc.org>
Owners-Override: Christoffer Jansson <jansson@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38104}
2022-09-16 15:41:28 +00:00
babdaa8623 Unbind VirtualSocket from rtc::MessageHandler
Instead protect pending tasks with a shared object.
Some tests destroy VirtualSocket on a different thread than it is used on,
Some tests destroy VirtualSocket together with VirtualSocketServer after
associated thread is deleted, thus complicated check is used to ensure
VirtualSockets are safe to use.

Bug: webrtc:9702
Change-Id: I1a19cd24ac6a598a1cde64434104cad0b750096e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/274460
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38103}
2022-09-16 14:13:41 +00:00
e16e3e2cb8 Delete MessageHandlerAutoCleanup and ThreadManager::Clear
Bug: webrtc:11988
Change-Id: Ic54d37fb802c9e55d417d65aa735fb07097d1b71
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275768
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38102}
2022-09-16 14:12:38 +00:00
9a6a087f37 Remove forward declares
This was missed in https://webrtc-review.googlesource.com/c/src/+/275482.

Bug: webrtc:14111
Change-Id: Id5efcc6838fc3ce4745074b8888c733939e4478d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275767
Reviewed-by: Johannes Kron <kron@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38101}
2022-09-16 13:33:08 +00:00
e4bc975a8a JitterEstimator: add field trial for not estimating noise for congested frames
The reason for rejecting the congested frames in the first place, is
that they do not obey a Gaussian distribution around the line from the
Kalman filter. It therefore also does not make sense to include them
in the noise (*) estimation.

(*) noise = variation around the line from the Kalman filter.

Bug: webrtc:14151
Change-Id: Id8a44ba5f13bf9787ab54848109430ef7657f67a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275762
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38100}
2022-09-16 12:40:38 +00:00
f6332f29c0 Add python grpc to .vpython3 for ios test runner
Bug: b/247047419
Change-Id: I3dad5037cfd91c55838db0144138a151edcbe870
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275760
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38099}
2022-09-16 12:26:48 +00:00
4cdc9effac Revert "Update checksums for some Opus bit-exactness tests."
This reverts commit 44c6ce1bf6545b599c0b82bbecfd1eed65b34f48.

Reason for revert: Breaks downstream projects

Original change's description:
> Update checksums for some Opus bit-exactness tests.
>
> Opus was recently updated in Chromium (https://crbug.com/1347531), resulting in these failing for a non-SSE build.
>
> Bug: None
> Change-Id: I6c4124192f98f9358e7cc2241aec16a5338e689a
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/274760
> Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
> Commit-Queue: Felicia Lim <flim@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#38095}

Bug: None
Change-Id: I290226d96e3183f3b4188fd7d80229e104138c3a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275765
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Christoffer Jansson <jansson@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38098}
2022-09-16 11:21:28 +00:00
03e6cccc28 Revert "rtp sender: don't send BYE on deactivating streams"
This reverts commit a22c2a0c581cbe3f612f7a7d9fb9840186cc1e06.

Reason for revert: breaks upstream project

Original change's description:
> rtp sender: don't send BYE on deactivating streams
>
> as this breaks RTCP assumptions about SSRCs being no longer
> active as defined in
>   https://www.rfc-editor.org/rfc/rfc3550#section-6.6
>
> This should not be sent in reaction to temporarily disabling
> a stream via RTCRtpParameters.active as this does not mean that
> the participant is leaving the session as defined in
>   https://www.rfc-editor.org/rfc/rfc3550#section-6.3.7
> and does not indicate end of participation as defined in
>   https://www.rfc-editor.org/rfc/rfc3550#section-6.1
> which stipulates BYE should be the last packet sent from this SSRC.
>
> BUG=webrtc:11082
>
> Change-Id: Ia5144857f85303643146b0759184f0f3f50b66e4
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/273348
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Philipp Hancke <phancke@microsoft.com>
> Cr-Commit-Position: refs/heads/main@{#38059}

Bug: webrtc:11082
Change-Id: Iaaff0c0d7bb857fe9ce78ebcc716f3c6f1bc5c4a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275640
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38097}
2022-09-16 09:40:18 +00:00
2720dc5b3b Update WebRTC code version (2022-09-16T04:07:59).
Bug: None
Change-Id: I0b63150e7c56b871aafe31aad8511bbf6494605e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275740
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Bot-Commit: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38096}
2022-09-16 05:34:18 +00:00
44c6ce1bf6 Update checksums for some Opus bit-exactness tests.
Opus was recently updated in Chromium (https://crbug.com/1347531), resulting in these failing for a non-SSE build.

Bug: None
Change-Id: I6c4124192f98f9358e7cc2241aec16a5338e689a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/274760
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Felicia Lim <flim@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38095}
2022-09-16 05:24:08 +00:00
1a59cb6108 Renamed methods.
Renaming inputSampleRate, outputSampleRate, terminate to avoid triggering Apple's private API check.

Change-Id: I9857fb374bf30c4a6ef937fb183ef4858af7e0c1
Bug: webrtc:14193
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275641
Commit-Queue: Peter Hanspers <peterhanspers@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38094}
2022-09-15 14:08:22 +00:00
bcf24f5bcd Move TimestampExtrapolator closer to its single user
The `TimestampExtrapolator` is only used by the `VCMTiming`
class, despite there being references to it from both
`modules/rtp_rtcp/BUILD.gn` and `modules/video_coding/BUILD.gn`.

Bug: webrtc:14111
Change-Id: If1a02a56a0c83b13d619ca08dc76c884fa829369
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275482
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Johannes Kron <kron@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38093}
2022-09-15 13:49:18 +00:00
624f2eb1aa JitterEstimator: add field trial for overriding frame delay variation clamping
Bug: webrtc:14151
Change-Id: Ib1f26cfaf92ca56000d5904432901d5db225b05a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275203
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38092}
2022-09-15 12:38:13 +00:00
e1a198b41d VideoStreamEncoder: set at target quality based on codec.
The Chromium RTCVideoEncoder unfortunately doesn't set if the
result is at target quality, and the definition of the threshold
is buried in libvpx_vp8_encoder.h.

This change
* Updates VideoStreamEncoder to postprocess an incoming EncodedImage
by interpreting the incoming QP information instead.
* Updates the related VideoStreamEncoder test to simulate an encoder
producing images around the QP threshold.
* Updates the steady state VP8 screencast QP threshold to a central
include file.
* Moves this and previously existing EncodedImage post-processing to a
new method AugmentEncodedImage.

Bug: b/245029833
Change-Id: I69ae29ffe501e84f28908f7d9a8cfd066ba82b43
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275380
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38091}
2022-09-15 12:15:17 +00:00
7d704739d7 JitterEstimator: add input validation to field trials
This functionality should have been added as part of the original CLs,
but was missed. The purpose of the validation is avoid catastrophic
failures due to misconfiguration (such as RTC_CHECK crashes).
The purpose is not to always provide practically reasonable values.

Bug: webrtc:14151
Change-Id: Icbddade865bd6a868f467a1df7055026935f36f2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275560
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38090}
2022-09-15 11:30:37 +00:00
bd0e8ef946 Make it possible to set the packet size needed to trigger a probe.
The value is today set to 200 which is too low for an audio packet to trigger sending probes.

For the initial probing, it would be good if audio packets, that may arrive before the first video frame can trigger sending a probe.

Also fix field trial parsing of required number of probes.

Bug: webrc:14392
Change-Id: I1f3cebcda38b71446e3602eef9cfa76de61a1ccf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275620
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Diep Bui <diepbp@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38089}
2022-09-15 10:13:57 +00:00
282de03603 Fix P2PTransportChannel unit tests to not rely on connections ordering
Tests currently rely on the sorted order of connections held within the ICE controller, which sorts the connections by usability. The internal ordering is not part of the ICE controller contract.

Tests use the ordering as a proxy for certain expectations, so changed the tests to explicitly test the expectations.

Bug: webrtc:14367, webrtc:1413
Change-Id: Iaf33c61f6eb968c2c93a0265b6c48ad6218e23a8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275304
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Commit-Queue: Sameer Vijaykar <samvi@google.com>
Cr-Commit-Position: refs/heads/main@{#38088}
2022-09-15 08:15:47 +00:00
a01e7275c2 Fix race at destruction in StunServerTests and reenable them on tsan
Bug: webrtc:2517
Change-Id: I3d4c65f250fe5048def68cbae45b5637a9ce68a1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275483
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38087}
2022-09-15 08:04:37 +00:00
664d8a76b4 Update WebRTC code version (2022-09-15T04:10:56).
Bug: None
Change-Id: I87d660411e177d402b219cc1406feab4eb4bd84d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275602
Bot-Commit: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38086}
2022-09-15 07:43:30 +00:00
31996f48f4 RtpSource: remove deprecated ctor, use designated initializers
Bug: webrtc:10739, b/246753278
Change-Id: I215483709e1f415170bc42ea6d523ffad8eb1e76
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275561
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38085}
2022-09-15 07:42:27 +00:00
ca27f1a1a0 Make ScreenCastPortal::CaptureSourceType private
https://crrev.com/c/3885576 removed the last downstream consumer of the
constructor which took a ScreenCastPortal::CaptureSourceType. Now that
it has been removed, that constructor definition can also be removed and
the CaptureSourceType enum can be made private. There's still benefit in
storing and using this internally as the enum, since it's values match
that of the underlying system API.

The previously anonymous-namespaced function |ToCaptureSourceType| had
to be converted to a private static method as part of this change, since
it would be unable to access the type otherwise.

Fixed: chromium:1359411
Change-Id: I81ff24fbdddf9db02c9c5152d007dd82c194865a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/274680
Auto-Submit: Alexander Cooper <alcooper@chromium.org>
Commit-Queue: Alexander Cooper <alcooper@chromium.org>
Commit-Queue: Mark Foltz <mfoltz@chromium.org>
Reviewed-by: Mark Foltz <mfoltz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#38084}
2022-09-15 02:21:08 +00:00
024bd84ca1 Roll chromium_revision 6e61ef84b1..6ccdf1a255 (1046816:1046947)
Change log: 6e61ef84b1..6ccdf1a255
Full diff: 6e61ef84b1..6ccdf1a255

Changed dependencies
* src/base: a2202933ca..ebdf2642c3
* src/ios: af037ea36a..7dd3e07106
* src/testing: 6b803972c9..70b311279f
* src/third_party: 250f81aa11..fba1719f4f
* src/third_party/fuchsia-sdk/sdk: version:9.20220913.3.1..version:9.20220914.1.1
* src/third_party/perfetto: b910084bb4..a8b5c6144d
* src/third_party/r8/d8: DbVJ-oYhMQRvNqZYr37TP1-U_0vkeVNii078zhzdUmUC..M3EMkYB8eJSrmuVBALj8iJw_ysvzFKniQRYFZ7d61XkC
* src/tools: 658257b49f..13c574e103
DEPS diff: 6e61ef84b1..6ccdf1a255/DEPS

No update to Clang.

BUG=None

Change-Id: I6ca87fdb3f102a4f5e0be691ad7c14fe6b8bf3da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275581
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Bot-Commit: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38083}
2022-09-14 16:55:36 +00:00
916648107b Generalize MovingMedianFilter to MovingPercentileFilter
* Make `percentile` configurable and rename class.
* Introduce convenience type `MovingMedianFilter` that
  maintains the behaviour of the old class with that name.
* Move home grown moving 95th percentile filter in
  `JitterEstimator` to this new utility class.

Bug: webrtc:14151
Change-Id: I17d525b6e0bc98c28568c7dfe94b72eeab4a1ca2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275311
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38082}
2022-09-14 15:32:06 +00:00
64edb15e1e Make P2PTransportChannel implement IceAgentInterface (#5/n)
This functionally no-op change adds the methods to allow an active ICE controller to manipulate the connection used by the ICE transport. Most methods reuse existing code, this will be explicitly marked for cleanup with a follow-up CL which adds active ICE controller support.

Non-trivial changes are needed for P2PTransportChannel unit tests to cover the new code, and these are also being added in a follow-up CL.

Bug: webrtc:14367, webrtc:14131
Change-Id: I4f012efcd8cb5766eb8c6f0872de50f8375f3a73
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275301
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Commit-Queue: Sameer Vijaykar <samvi@google.com>
Cr-Commit-Position: refs/heads/main@{#38081}
2022-09-14 14:18:46 +00:00
18408391ad Keep state internally of connections added to P2PTransportChannel (#4/n)
P2PTransportChannel currently relies on the ICE controller to keep track of this, even though P2PTransportChannel is actually supposed to hold the mutable connections.

Reading connections from the ICE controller also leaks some internal state from the ICE controller through the ordering of connections, which isn't strictly part of the interface. This change is a step towards fixing this.

This change is functionally no-op for now. The internal state will be used behind a field-trial in a future CL. That is also when some tests will be updated to work with the new internal state.

Bug: webrtc:14367, webrtc:1413
Change-Id: I6f8c5d805c780411fe940926f192fd2d6ce86d29
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275081
Commit-Queue: Sameer Vijaykar <samvi@google.com>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38080}
2022-09-14 14:11:09 +00:00
80ed9b8eb9 Remove unused VP9 TemporalStructureMode
kTemporalStructureMode4 is not used anywhere in the code.

Bug: None
Change-Id: I9a396f6706d26940fae68d1318942b5f31afa3bf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/274380
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Daniel.L (Byoungchan) Lee <daniel.l@hpcnt.com>
Cr-Commit-Position: refs/heads/main@{#38079}
2022-09-14 13:33:59 +00:00
c898c82884 Introduce Metric object for new perf metrics logging system
Bug: b/246095034
Change-Id: I854ee8e5ea93e4046837ae9f54a652a8c92dd1bc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/274861
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38078}
2022-09-14 12:32:16 +00:00
0a617882df JitterEstimator: add field trial overrides for avg frame filter
This change adds a median filter that can replace the
IIR filter that is currently used to estimate the
avg frame size (in bytes). It is enabled through a boolean,
and reuses the window length from the max percentile filter.

The median filter is only used by the delay calculation in
`CalculateEstimate()`. It does not replaced the use of the
IIR estimate in the size outlier rejection heuristic.

Bug: webrtc:14151
Change-Id: I519b6b57a8bee3c41a300ed2e92a1981c61cca15
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275121
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38077}
2022-09-14 12:12:27 +00:00
6fa8a759b4 Add an active ICE controller factory to IceTransportInit (#3/n)
P2PTransportChannel can then use either of the ICE controller factories configured with field trials.

Bug: webrtc:14367, webrtc:14131
Change-Id: I09ab99673d6ef81f56abe88987f5b67d84c24cb5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/271292
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Sameer Vijaykar <samvi@google.com>
Cr-Commit-Position: refs/heads/main@{#38076}
2022-09-14 11:40:36 +00:00
fc3b67f707 Roll chromium_revision 634d852d69..6e61ef84b1 (1042444:1046816)
Change log: 634d852d69..6e61ef84b1
Full diff: 634d852d69..6e61ef84b1

Changed dependencies
* src/base: 4740e2c0f5..a2202933ca
* src/build: 15f3aedda7..b7148ee91d
* src/buildtools: 734683a3d6..e713c13e2f
* src/buildtools/linux64: git_revision:00b741b1568d56cf4e117dcb9f70cd42653b4c78..git_revision:b4851eb2062f76a880c07f7fa0d12913beb6d79e
* src/buildtools/mac: git_revision:00b741b1568d56cf4e117dcb9f70cd42653b4c78..git_revision:b4851eb2062f76a880c07f7fa0d12913beb6d79e
* src/buildtools/reclient: re_client_version:0.77.2.9cc22cf-gomaip..re_client_version:0.78.0.6f1e751-gomaip
* src/buildtools/third_party/libc++/trunk: 84f06932d7..c1e647c7c3
* src/buildtools/third_party/libc++abi/trunk: 48afced8aa..5c3e02e92a
* src/buildtools/third_party/libunwind/trunk: 42aa6de554..60a480ee18
* src/buildtools/win: git_revision:00b741b1568d56cf4e117dcb9f70cd42653b4c78..git_revision:b4851eb2062f76a880c07f7fa0d12913beb6d79e
* src/ios: eeefca2111..af037ea36a
* src/testing: 579c4c34ac..6b803972c9
* src/third_party: 2b69b08490..250f81aa11
* src/third_party/android_build_tools/bundletool: qLkNwA6wjoqznVqaa151GelgGBP4X495n0z-jluACPcC..IEZQhHFQzO9Ci1QxWZmssKqGmt2r_nCDMKr8t4cKY34C
* src/third_party/android_deps/libs/com_google_android_apps_common_testing_accessibility_framework_accessibility_test_framework: version:2@3.1.2.cr1..version:2@4.0.0.cr1
* src/third_party/android_deps/libs/com_google_errorprone_error_prone_annotations: version:2@2.11.0.cr1..version:2@2.14.0.cr1
* src/third_party/android_deps/libs/org_checkerframework_checker_qual: version:2@3.12.0.cr1..version:2@3.22.1.cr1
* src/third_party/android_deps/libs/org_jsoup_jsoup: version:2@1.14.3.cr1..version:2@1.15.1.cr1
* src/third_party/androidx: 32V52h3rlrpZqQ85cpCUJYyonyvMwplznzMVsLdWcosC..ZdhBYngU8wyq5rvMrY4fNAijgdagR98QnLw9JFadQgQC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/7ee071132a..37391a1619
* src/third_party/depot_tools: 8cdc635be8..9ebcfa6be1
* src/third_party/freetype/src: dd91f6e7f5..8e68439a6f
* src/third_party/fuchsia-sdk/sdk: version:9.20220912.3.1..version:9.20220913.3.1
* src/third_party/icu: bbdc7d8936..20f8ac695a
* src/third_party/libjpeg_turbo: 22f1a22c99..ed683925e4
* src/third_party/perfetto: 3a01865035..b910084bb4
* src/third_party/r8: k-rsF0crG3zBArTjEZbYn9ZKk1MGSMeSKp_ruAONHXAC..szXK3tCGU7smsNs4r2mGqxme7d9KWLaOk0_ghbCJxUQC
* src/third_party/r8/d8: PWja-vUPRluhUOsoIZey_Dmxkw106_xQR7NM_Z8aZxIC..DbVJ-oYhMQRvNqZYr37TP1-U_0vkeVNii078zhzdUmUC
* src/third_party/turbine: cMFT-KTiKSkVefC3nASLc0KQv9JrVmwmFUgJlo6jOosC..RXO2k7-PyXvbDjiK9EjbsheQfxXme2n0ABNX-MxR0JcC
* src/tools: 5ac6e1525c..658257b49f
* src/tools/luci-go: git_revision:3226112a79a7c2de84c3186191e24dd61680a77d..git_revision:c93fd3c5ebdc3999eea86a7623dbd1ed4b40bc78
* src/tools/luci-go: git_revision:3226112a79a7c2de84c3186191e24dd61680a77d..git_revision:c93fd3c5ebdc3999eea86a7623dbd1ed4b40bc78
Added dependency
* src/third_party/android_deps/libs/org_mockito_mockito_core
Removed dependency
* src/third_party/android_deps/libs/com_google_protobuf_protobuf_lite
DEPS diff: 634d852d69..6e61ef84b1/DEPS

Clang version changed llvmorg-16-init-3375-gfed71b04:llvmorg-16-init-4438-gc922cac8
Details: 634d852d69..6e61ef84b1/tools/clang/scripts/update.py

BUG=None

Change-Id: Ic1d3d1a75393f3f9c0cea2cd10a95d7aa24e775a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275462
Bot-Commit: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38075}
2022-09-14 10:34:36 +00:00
8c725f368c Fix several UBsan issues with memcpy
Most of the changes are trivial.

Bug: webrtc:14432
Change-Id: I0444527bf57c72c8d65f69754b4a4a1c1d7b2e92
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275340
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38074}
2022-09-14 09:35:39 +00:00
a0adeb7059 Set Fuchsia Api level + update SDK version
Based on https://chromium-review.googlesource.com/c/chromium/src/+/3858115/

No-Try: True
Bug: b/232740856
Change-Id: Ia489f330cfc5984d887cccdbcf9722331750420d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275481
Commit-Queue: Christoffer Jansson <jansson@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38073}
2022-09-14 08:49:56 +00:00
f21ec6bd05 Reset cache on Windows bots.
Bug: None
Change-Id: Id2ae9c6a778174836fb99e070f0b62c1ae7b79ff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275480
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38072}
2022-09-14 07:07:30 +00:00
ca1454a9c2 Delete rtc::Thread::Send in favor of rtc::Thread::BlockingCall
Bug: webrtc:9702
Change-Id: Ie425c99e8d05ad84801b527207732e4d45494dbd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275242
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38071}
2022-09-13 16:05:40 +00:00
565e5b0829 Ensure Lossbased BWE v2 target rate is updated before updating probe controller
Loss based BWE v2 rate is updated immediately when transport feedback is received.
This ensure that when GoogCcNetworkController::MaybeTriggerOnNetworkChanged is invoked, the loss based estimate is updated.

Bug: webrtc:14392
Change-Id: If404576c5793a29096cea52884862807cde8b615
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275306
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Diep Bui <diepbp@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38070}
2022-09-13 14:47:18 +00:00
41263fab8f Delete UMA histograms relating to Plan B vs Unified Plan.
Plan B having been deleted from Chrome, there is no need to collect UMAs
relating to Plan B vs Unified Plan setups.

Bug: chromium:1357994
Change-Id: Icb5d16823ea9d849798583cd1c82683014b8a15c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275309
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38069}
2022-09-13 14:19:29 +00:00
39f216bf1d Reset cache on Windows bots.
No-Try: True
Bug: None
Change-Id: I32d298e8504195ecc21b8d64241bd42c18a77b0c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275310
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38068}
2022-09-13 13:39:28 +00:00
842858c6d0 loongarch: Add loongarch architecture support.
Copied from chromium's build/build_config.h

No-Try: True
Bug: webrtc:14433
Change-Id: I5ab4dbb49bd74aa8f6f6054776d9f1f3d606d914
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275288
Owners-Override: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Andrey Logvin <landrey@google.com>
Cr-Commit-Position: refs/heads/main@{#38067}
2022-09-13 10:44:59 +00:00
094ee30504 Add an active ICE controller interface (#2/n)
This interface will be implemented by "new" ICE controllers that actively manage the connection used by the transport.

Bug: webrtc:14367, webrtc:14131
Change-Id: I0858884b0decd2a17ae9ca8617a043a085c61d54
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/271291
Commit-Queue: Sameer Vijaykar <samvi@google.com>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38066}
2022-09-13 07:45:39 +00:00
0a426f8fcf Update WebRTC code version (2022-09-13T04:12:13).
Bug: None
Change-Id: Ic07ca653f9d5607b3e8490a8b41392379c164a00
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/275285
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Bot-Commit: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#38065}
2022-09-13 06:52:38 +00:00