Commit Graph

36455 Commits

Author SHA1 Message Date
e3b74f8e61 sctp: Fix data channel closing sequence
When an SCTP stream is closing, a stream reset needs
to be sent from both ends.
The remote was not sending a stream reset and quickly
opening another stream with the same StreamID could
cause SCTP errors.

Bug: webrtc:13994
Change-Id: I3abc74ddc88b3fcf7e6495d76e7d77f52280b5d1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260922
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36773}
2022-05-05 08:44:58 +00:00
95b1a3497c stats: implement iceLocalUsernameFragment
https://www.w3.org/TR/webrtc-stats/#dom-rtctransportstats-icelocalusernamefragment

BUG=webrtc:14022

Change-Id: If56ebe66d83f4e535c2245f2ca3848469914679f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261243
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
Cr-Commit-Position: refs/heads/main@{#36772}
2022-05-05 08:08:48 +00:00
d7fd0f9744 dcsctp: Handle rapid closing of streams
When streams were to be reset, but there was already an ongoing
stream reset command in-flight, those streams wouldn't be properly
reset. When multiple streams were reset close to each other (within
an RTT), some streams would not have their SSNs reset, which resulted
in the stream resuming the SSN sequence. This could result in ordered
streams not delivering all messages as the receiver wouldn't deliver any
messages with SSN different from the expected SSN=0.

In WebRTC data channels, this would be triggered if multiple channels
were closed at roughly the same time, then re-opened, and continued
to be used in ordered mode. Unordered messages would still be delivered,
but the stream state could be wrong as the DATA_CHANNEL_ACK message is
sent ordered, and possibly not delivered.

There were unit tests for this, but not on the socket level using
real components, but just on the stream reset handler using mocks,
where this issue wasn't found. Also, those mocks didn't validate that
the correct parameters were provided, so that's fixed now.

The root cause was the PrepareResetStreams was only called if there
wasn't an ongoing stream reset operation in progress. One may try to
solve it by always calling PrepareResetStreams also when there is an
ongoing request, or to call it when the request has finished. One would
then realize that when the response of the outgoing stream request is
received, and CommitResetStreams is called, it would reset all paused
and (prepared) to-be-reset streams - not just the ones in the outgoing
stream request.

One cause of this was the lack of a single source of truth of the stream
states. The SendQueue kept track of which streams that were paused, but
the stream reset handler kept track of which streams that were
resetting. As that's error prone, this CL moves the source of truth
completely to the SendQueue and defining explicit stream pause states. A
stream can be in one of these possible states:

  * Not paused. This is the default for an active stream.
  * Pending to be paused. This is when it's about to be reset, but
    there is a message that has been partly sent, with fragments
    remaining to be sent before it can be paused.
  * Paused, with no partly sent message. In this state, it's ready to
    be reset.
  * Resetting. A stream transitions into this state when it has been
    paused and has been included in an outgoing stream reset request.
    When this request has been responded to, the stream can really be
    reset (SSN=0, MID=0).

This CL also improves logging, and adds socket tests to catch this
issue.

Bug: webrtc:13994, chromium:1320194
Change-Id: I883570d1f277bc01e52b1afad62d6be2aca930a2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261180
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36771}
2022-05-05 07:30:58 +00:00
4ef2de6290 Remove the iOS internal try bots.
Bug: b/230708129
Change-Id: Ic4315997af0c01c5f5d987d13d88ada7d76ab0ea
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260191
Reviewed-by: Mirko Bonadei <mbonadei@google.com>
Commit-Queue: Jeremy Leconte <jleconte@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36770}
2022-05-05 07:20:49 +00:00
87088e79a3 Roll chromium_revision db1aa64adf..7e42d4ed1d (999661:999761)
Change log: db1aa64adf..7e42d4ed1d
Full diff: db1aa64adf..7e42d4ed1d

Changed dependencies
* src/base: 3a5974ffd9..ab1ba45f82
* src/build: e5f67a93f1..0c83e78c82
* src/ios: d2e1ba0157..8cb890dd90
* src/testing: d21684de84..2b0d8033e6
* src/third_party: 4b1d7ff497..b4f790e0d0
* src/third_party/androidx: Da4Gfq0cbANF8TBzxjWyFxNZLsHhNw0miO3ApOghW7YC..nWvCs11JIQtG7q6R1Vb1ySaYovfUvDCJnkXNXEsu9-0C
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/67079d94e0..58f3286ec2
* src/third_party/depot_tools: 08a30b20f2..b9dca865af
* src/third_party/perfetto: 268fb40af7..4951933ec6
* src/tools: a46e43eab2..2245c4814d
DEPS diff: db1aa64adf..7e42d4ed1d/DEPS

No update to Clang.

BUG=None

Change-Id: I7ea4436acaae4ded25e16cd58033b190b0bdb794
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261146
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@{#36769}
2022-05-05 07:07:48 +00:00
15a3c3fdca Split Windows code from rtc_base_approved to smaller targets
Bug: webrtc:9838
Change-Id: Ic463284fd68715fd9b8eadd50e1d25841cb60020
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261241
Auto-Submit: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36768}
2022-05-05 06:47:49 +00:00
d852d9c536 Update WebRTC code version (2022-05-05T04:02:39).
Bug: None
Change-Id: I3da3e7eb522fddf512ecc751f48223a30871f536
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261145
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@{#36767}
2022-05-05 05:54:08 +00:00
cc1b9b060d stats: implement iceRole
https://www.w3.org/TR/webrtc-stats/#dom-rtctransportstats-icerole

BUG=webrtc:14022

Change-Id: I88de2c843a2042ce99076d55ce41be22589e2d92
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261201
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
Cr-Commit-Position: refs/heads/main@{#36766}
2022-05-05 05:05:40 +00:00
eced0a1bb6 Roll chromium_revision 417b7ce146..db1aa64adf (999552:999661)
Change log: 417b7ce146..db1aa64adf
Full diff: 417b7ce146..db1aa64adf

Changed dependencies
* src/base: 0b272249b6..3a5974ffd9
* src/build: 01e3d9104d..e5f67a93f1
* src/ios: e248592443..d2e1ba0157
* src/testing: bad52baf02..d21684de84
* src/third_party: aa14c9b817..4b1d7ff497
* src/third_party/androidx: gA0vvkGrsh9eQymdSOfRTYnYJpY-Wq7wonB0rx2eiMcC..Da4Gfq0cbANF8TBzxjWyFxNZLsHhNw0miO3ApOghW7YC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/05b7cd33df..67079d94e0
* src/third_party/depot_tools: 23ddab2235..08a30b20f2
* src/third_party/perfetto: 69bc804a18..268fb40af7
* src/tools: fd5689b73c..a46e43eab2
DEPS diff: 417b7ce146..db1aa64adf/DEPS

No update to Clang.

BUG=None

Change-Id: I23729b9be1a247555b52e8e3a0268d4ad955c8f6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261222
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@{#36765}
2022-05-05 00:58:47 +00:00
2ea1502a2a Roll chromium_revision 45304a5b38..417b7ce146 (999433:999552)
Change log: 45304a5b38..417b7ce146
Full diff: 45304a5b38..417b7ce146

Changed dependencies
* src/build: c5ff734ecb..01e3d9104d
* src/buildtools: 113378f9b3..7208eddba1
* src/ios: 3170f27462..e248592443
* src/testing: fa918eb7ae..bad52baf02
* src/third_party: e3744eedbc..aa14c9b817
* src/third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_stdlib: version:2@1.6.20.cr1..version:2@1.6.21.cr1
* src/third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_stdlib_common: version:2@1.6.20.cr1..version:2@1.6.21.cr1
* src/third_party/depot_tools: 13acea3645..23ddab2235
* src/tools: ded0ab1e86..fd5689b73c
Added dependencies
* src/third_party/android_deps/libs/org_jsoup_jsoup
* src/third_party/android_deps/libs/com_google_android_apps_common_testing_accessibility_framework_accessibility_test_framework
* src/third_party/android_deps/libs/com_google_protobuf_protobuf_lite
* src/third_party/android_deps/libs/org_hamcrest_hamcrest
DEPS diff: 45304a5b38..417b7ce146/DEPS

No update to Clang.

BUG=None

Change-Id: I64b46dcefe03bceca69ee6f3ed1de85d01881340
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261142
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@{#36764}
2022-05-04 21:00:38 +00:00
69e7348dc6 Roll chromium_revision 6effd442e8..45304a5b38 (999303:999433)
Change log: 6effd442e8..45304a5b38
Full diff: 6effd442e8..45304a5b38

Changed dependencies
* src/base: 1eefedb688..0b272249b6
* src/build: d7c4eab611..c5ff734ecb
* src/buildtools/third_party/libunwind/trunk: 393e3eee99..f1108b6ba3
* src/ios: e0fba2731c..3170f27462
* src/testing: 3ac36968b2..fa918eb7ae
* src/third_party: dea6018eca..e3744eedbc
* src/third_party/perfetto: f8b405298b..69bc804a18
* src/tools: 42973cc977..ded0ab1e86
DEPS diff: 6effd442e8..45304a5b38/DEPS

No update to Clang.

BUG=None

Change-Id: I03f0b22baffe72169594e971adefc0401608079d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261141
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@{#36763}
2022-05-04 16:57:37 +00:00
9e334b7d99 Remove channel_manager.h from most .h files
This ensures that only the compilation units that actually need
ChannelManager details can see it.

Bug: webrtc:13931
Change-Id: Iddd37580c0ceceba5b7095e84b981e6a525b2800
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261200
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36762}
2022-05-04 16:35:17 +00:00
31e31c8c0a Adding jleconte to the tools_webrtc OWNERS file.
Bug: b/230708129
Change-Id: Id005a9a1bd88530ef92fed3f31a29d951405c168
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261182
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36761}
2022-05-04 14:26:07 +00:00
e487e440a7 Enable FrameBuffer3 by default
The field trial will remain as a kill-switch for a few weeks while
decisions about sync decoding are being made.

Change-Id: I6034d25a129404e94ab8830f51e83667e285c785
Bug: webrtc:14003
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260327
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36760}
2022-05-04 13:40:37 +00:00
6566bd5484 Add some more frame stats to PCLF
Metrics for calculating sent/recv key frame rate:
num_encoded_frames -- number of encoded frames
num_decoded_frames -- number of decoded frames
num_send_key_frames -- number of sent keyframes
num_recv_key_frames -- number of received keyframes

Metrics for frame size (in bytes) distribution:
recv_key_frame_size_bytes -- key frame size
recv_delta_frame_size_bytes -- delta frame size

The stats are only reported if the user so requests. This is
because the stats may not be useful for regression tracking,
but mainly for adhoc analysis.

Tested:
```
~/s/w/src (frame_stats↑1|✚1) $ autoninja -C out/Debug && out/Debug/test_support_unittests --gtest_filter="PeerConnectionE2EQualityTestSmokeTest.Smoke" 2>/dev/null
Note: Google Test filter = PeerConnectionE2EQualityTestSmokeTest.Smoke
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from PeerConnectionE2EQualityTestSmokeTest
[ RUN      ] PeerConnectionE2EQualityTestSmokeTest.Smoke
...
RESULT num_encoded_frames: Smoke/alice-video= 31 count_biggerIsBetter
RESULT num_decoded_frames: Smoke/alice-video= 31 count_biggerIsBetter
RESULT num_send_key_frames: Smoke/alice-video= 2 count_biggerIsBetter
RESULT num_recv_key_frames: Smoke/alice-video= 2 count_biggerIsBetter
RESULT recv_key_frame_size_bytes: Smoke/alice-video= {1847,126} count_biggerIsBetter
RESULT recv_delta_frame_size_bytes: Smoke/alice-video= {1150.1034,393.66329} count_biggerIsBetter
...
RESULT num_encoded_frames: Smoke/charlie-video= 31 count_biggerIsBetter
RESULT num_decoded_frames: Smoke/charlie-video= 31 count_biggerIsBetter
RESULT num_send_key_frames: Smoke/charlie-video= 2 count_biggerIsBetter
RESULT num_recv_key_frames: Smoke/charlie-video= 2 count_biggerIsBetter
RESULT recv_key_frame_size_bytes: Smoke/charlie-video= {1847,126} count_biggerIsBetter
RESULT recv_delta_frame_size_bytes: Smoke/charlie-video= {1150.1034,393.66329} count_biggerIsBetter
...
[----------] 1 test from PeerConnectionE2EQualityTestSmokeTest (2196 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (2196 ms total)
[  PASSED  ] 1 test.
```

Bug: webrtc:14019
Change-Id: I3d5ea0cf659a6299c6d94f5004cbf0c763b267e5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260924
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36759}
2022-05-04 12:23:27 +00:00
30ec725b6e Auxiliary liboam AV1 encoder settings.
Bug: none
Change-Id: I03e01ffbed2ec98953650847600016e4f80fdb50
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260861
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36758}
2022-05-04 11:59:29 +00:00
8f42992787 Move channel creation functions into RtpTransceiver
This breaks the link from sdp_offer_answer.cc to channel.h.

Bug: webrtc:13931
Change-Id: I75608f75713bf4e69013ac5f5b17c19e53d07519
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261060
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36757}
2022-05-04 11:57:50 +00:00
1bcd827e9b Merged FrameBuffer3 {Next,Last}DecodableTemporalUnitRtpTimestamp() function.
Bug: webrtc:13343
Change-Id: Ic21eddd38466e6b5fd8b912b3ee2d9dc47a0ba35
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260981
Reviewed-by: Evan Shrubsole <eshr@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36756}
2022-05-04 11:29:57 +00:00
44be579b4a Make all VideoReceiveStream2Test use simulated time
Adds matchers to webrtc::VideoFrame to help with the tests.

Bug: webrtc:14003
Change-Id: I62fc1c577bb76b21a96741ba829f6dcd53a308c1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260184
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36755}
2022-05-04 11:27:16 +00:00
49850c328c Fork test/ios/google_test_runner.mm from Chromium's //base
WebRTC should not depend on Chromium's //base.

Bug: webrtc:13662
Change-Id: I7ce7036c96b26a79de46a519ed24dd660a298433
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260925
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Andrey Logvin <landrey@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36754}
2022-05-04 11:26:07 +00:00
b0eb25f01c Roll chromium_revision 5d85a975a5..6effd442e8 (999193:999303)
Change log: 5d85a975a5..6effd442e8
Full diff: 5d85a975a5..6effd442e8

Changed dependencies
* src/base: e706c2f931..1eefedb688
* src/build: c812b8d227..d7c4eab611
* src/ios: d1ce413bae..e0fba2731c
* src/testing: 42bb98d9f6..3ac36968b2
* src/third_party: 34049d3f74..dea6018eca
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/d3c44146a6..05b7cd33df
* src/tools: f5ac564f9d..42973cc977
DEPS diff: 5d85a975a5..6effd442e8/DEPS

No update to Clang.

BUG=None

Change-Id: I79f8a7699cd90585be17a56b063a08ac7f2a40f1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261140
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@{#36753}
2022-05-04 11:24:57 +00:00
55c55c3c43 Reorder mb_config.pyl to fix 'mb.py validate'
This is a follow up of this CL: https://crrev.com/c/3611486.

Bug: b/231404336
Change-Id: I3b6f4b780aa1939b6b2d0f1d08d1746a3a6f86dc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261080
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Christoffer Jansson <jansson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36752}
2022-05-04 08:31:29 +00:00
3466511ee1 Migrate iOS simulator tests to Mac-12 machines.
Bug: b/227442116
Change-Id: I7b5157a735596616f9785391c40b8f26974c222d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260985
Reviewed-by: Christoffer Jansson <jansson@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#36751}
2022-05-04 07:27:25 +00:00
0dc2b7095f Update WebRTC code version (2022-05-04T04:04:14).
Bug: None
Change-Id: Ibbd8db1953d8406f864679b45563c644f2ef3fdd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261026
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@{#36750}
2022-05-04 05:16:37 +00:00
1cc01c3b18 Roll chromium_revision b59a320a3b..5d85a975a5 (999089:999193)
Change log: b59a320a3b..5d85a975a5
Full diff: b59a320a3b..5d85a975a5

Changed dependencies
* src/base: 15a28feff9..e706c2f931
* src/build: c5dc2c9629..c812b8d227
* src/ios: bd8b86ed2b..d1ce413bae
* src/testing: 66e2a04447..42bb98d9f6
* src/third_party: 90343e1d57..34049d3f74
* src/third_party/depot_tools: fb8cf9cc78..13acea3645
* src/third_party/ffmpeg: 32b2d1d526..e481fc655a
* src/tools: 3743fbdb22..f5ac564f9d
DEPS diff: b59a320a3b..5d85a975a5/DEPS

No update to Clang.

BUG=None

Change-Id: I81bbbf3ae3ad95b115c4340db1738fc36fa1f635
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261024
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@{#36749}
2022-05-04 02:29:08 +00:00
75dc112338 Roll chromium_revision cb4b2debf2..b59a320a3b (998895:999089)
Change log: cb4b2debf2..b59a320a3b
Full diff: cb4b2debf2..b59a320a3b

Changed dependencies
* src/base: 31d89ad0a1..15a28feff9
* src/build: dae9260114..c5dc2c9629
* src/ios: a7a192af80..bd8b86ed2b
* src/testing: 95047fa2c0..66e2a04447
* src/third_party: ec34c6fb1e..90343e1d57
* src/third_party/androidx: 5lNM3F4iN06ifNmpRsHMr0HuYciW6jkC2V6cduIaL64C..gA0vvkGrsh9eQymdSOfRTYnYJpY-Wq7wonB0rx2eiMcC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/eebb0a0e63..d3c44146a6
* src/third_party/depot_tools: e06e307750..fb8cf9cc78
* src/third_party/perfetto: f233f88ebb..f8b405298b
* src/tools: ce04993a19..3743fbdb22
DEPS diff: cb4b2debf2..b59a320a3b/DEPS

No update to Clang.

BUG=None

Change-Id: I161ca82ae420f955950144a57a1856526329fc72
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261022
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@{#36748}
2022-05-03 23:51:27 +00:00
b9f634497e Roll chromium_revision d1899b8072..cb4b2debf2 (998754:998895)
Change log: d1899b8072..cb4b2debf2
Full diff: d1899b8072..cb4b2debf2

Changed dependencies
* src/base: 3767de1d65..31d89ad0a1
* src/build: 15a156bdb5..dae9260114
* src/buildtools/third_party/libc++abi/trunk: c7888dd707..ce96725bdd
* src/ios: f274b4fe3c..a7a192af80
* src/testing: 56c3743b21..95047fa2c0
* src/third_party: 5b43f0d4da..ec34c6fb1e
* src/third_party/androidx: cp1B6hyQDc39i_ATBhaA65qxdkBiII9h1gxw0F_SdyMC..5lNM3F4iN06ifNmpRsHMr0HuYciW6jkC2V6cduIaL64C
* src/third_party/perfetto: 02f7958f65..f233f88ebb
* src/tools: 25ad985bf2..ce04993a19
DEPS diff: d1899b8072..cb4b2debf2/DEPS

No update to Clang.

BUG=None

Change-Id: Ide96f1be4ded147d428f316cdeb2f16cdcd5af76
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261020
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@{#36747}
2022-05-03 16:53:06 +00:00
25adc8e36b Eliminate channel.h from rtp_transmission_manager.cc
This also hides the existence of the classes VideoChannel and
VoiceChannel from anything that does not include "channel.h".

Bug: webrtc:13931
Change-Id: I080a692b6acfd5d2d0401ec20d59c3a684eddb05
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260944
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36746}
2022-05-03 14:46:36 +00:00
00579e8bce Use AlwaysValidPointer in connection_context
This extends AlwaysValidPointer to take a lambda for its default
rather than requesting a constructor.

Bug: none
Change-Id: Ied97968c3f511af15422a1eef9801d14d4ec5b96
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260580
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36745}
2022-05-03 13:39:06 +00:00
9a743179cf Eliminate need for stats to know of channel.h
Also eliminate FillBitrateInfo from the Channel object.

Bug: webrtc:13931
Change-Id: I5265b7629413a1ed04898272adf26708e2ee9b8d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260469
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36744}
2022-05-03 12:06:56 +00:00
a429ad06bc Roll chromium_revision 8adb72660d..d1899b8072 (998650:998754)
Change log: 8adb72660d..d1899b8072
Full diff: 8adb72660d..d1899b8072

Changed dependencies
* src/base: 28bb4c36ce..3767de1d65
* src/build: be173d9ec5..15a156bdb5
* src/ios: 6b184c2967..f274b4fe3c
* src/testing: d9eac53afa..56c3743b21
* src/third_party: e4157b9c7a..5b43f0d4da
* src/third_party/androidx: bT-nL-FwLGM0V4Ph-8S1BHbc7GRpldEjP72R4lWnydQC..cp1B6hyQDc39i_ATBhaA65qxdkBiII9h1gxw0F_SdyMC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/9ba02ee5ca..eebb0a0e63
* src/third_party/depot_tools: 5b13afcae3..e06e307750
* src/tools: e5064e056f..25ad985bf2
DEPS diff: 8adb72660d..d1899b8072/DEPS

No update to Clang.

BUG=None

Change-Id: I3c16f4a5f8d47565230762781136dfc6dc76887b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260911
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@{#36743}
2022-05-03 08:53:47 +00:00
eeffb6aaf7 Remove deprecated audio option residual_echo_detector
The feature is now enabled in other ways. See PSA or linked Monorail issue for details.
https://groups.google.com/g/discuss-webrtc/c/mJV5cDysBDI/m/7PTPBjVHCgAJ

Bug: webrtc:11539
Change-Id: I0f5816baf2bfa1508a1c85ddbd7b775417434c62
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260107
Auto-Submit: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36742}
2022-05-03 07:07:58 +00:00
3a9e6877e5 Cleanup rtc_base_approved target
Removed all unused or transitional parts

Bug: webrtc:9838
Change-Id: I6bc14e4e0ac09ab27e4d739ac76bb6a4dfff2cb7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260140
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36741}
2022-05-03 06:58:27 +00:00
777c48b553 Update WebRTC code version (2022-05-03T04:02:12).
Bug: None
Change-Id: Ibd8c9420236e6132eeb39dd6a96503ad14e9a678
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260908
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@{#36740}
2022-05-03 05:23:26 +00:00
c01a037105 Roll chromium_revision 423039e609..8adb72660d (998528:998650)
Change log: 423039e609..8adb72660d
Full diff: 423039e609..8adb72660d

Changed dependencies
* src/base: d01af52469..28bb4c36ce
* src/build: 56e01bffd1..be173d9ec5
* src/ios: 5b971a05e7..6b184c2967
* src/testing: 11573d49c6..d9eac53afa
* src/third_party: c8d7344da7..e4157b9c7a
* src/tools: 5a642f93bc..e5064e056f
DEPS diff: 423039e609..8adb72660d/DEPS

No update to Clang.

BUG=None

Change-Id: I4762c5c8f9246378e9aa58ebdbf43a272b1bf316
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260906
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@{#36739}
2022-05-03 01:00:36 +00:00
8dc10ffba5 Roll chromium_revision 6ab3fd62f5..423039e609 (998390:998528)
Change log: 6ab3fd62f5..423039e609
Full diff: 6ab3fd62f5..423039e609

Changed dependencies
* src/base: 7d24fc96eb..d01af52469
* src/build: 35387279e4..56e01bffd1
* src/ios: 867a173cf3..5b971a05e7
* src/testing: e49c8a1245..11573d49c6
* src/third_party: cf748b0908..c8d7344da7
* src/third_party/androidx: OwLHPgr8tmPkNe60ri6S6xd1dh9XnIGAIzfg_XOAdeIC..bT-nL-FwLGM0V4Ph-8S1BHbc7GRpldEjP72R4lWnydQC
* src/third_party/depot_tools: 9a7b7675ba..5b13afcae3
* src/tools: 178dda6301..5a642f93bc
DEPS diff: 6ab3fd62f5..423039e609/DEPS

No update to Clang.

BUG=None

Change-Id: I2d99a6d6743866c5989e9690268d7e18c215f18e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260904
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@{#36738}
2022-05-02 21:10:30 +00:00
b73c058702 Add new prioritized packet queue.
This queue is a more strict round robing queue, unlike the class
named RoundRobinPacketQueue. That is, we don't have the same logic to
prioritize lower-bitrate streams.

The queue time mechanism is essentially directly copied from the
previous implementation however.

Bug: webrtc:11340
Change-Id: Ie38ba8ce27c985f5f1e907cec068d6a365089bcc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260562
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36737}
2022-05-02 20:49:35 +00:00
869c87a2b9 Revert "Make deletion of Connection objects more deterministic."
This reverts commit 942cac2e9e6a205fd673dc003a051cfb3867f2e3.

Reason for revert: Reverting while downstream updates are made.

Original change's description:
> Make deletion of Connection objects more deterministic.
>
> This changes most deletion paths of Connection objects to go through
> the owner class of the Connection instances, Port.
>
> In situations where Connection objects still need to be deleted
> asynchronously, `async = true` can be passed to
> `Port::DestroyConnection` and get the same behavior as
> `Connection::Destroy` formerly gave.
>
> The `Destroy()` method still exists for downstream compatibility, but
> instead of deleting connection objects asynchronously, the deletion
> now happens synchronously via the Port class.
>
> Bug: webrtc:13892, webrtc:13865
> Change-Id: I07edb7bb5e5d93b33542581b4b09def548de9e12
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/259826
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#36676}

Bug: webrtc:13892, webrtc:13865
Change-Id: I37a15692c8201716402ba5c10f249e4d3754ce4c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260862
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36736}
2022-05-02 20:41:39 +00:00
edeeef24a6 Revert "Clear port_ before firing destroyed event."
This reverts commit ca94696ae257395b452048535b3b86e95dbf47c4.

Reason for revert: Downstream needs updating.

Original change's description:
> Clear port_ before firing destroyed event.
>
> This reverts a change introduced last week in [1] whereby the port_
> pointer would be valid while firing the `Destroyed` event.
>
> [1] https://webrtc-review.googlesource.com/c/src/+/259826
>
> Bug: webrtc:13892, webrtc:13865
> Change-Id: I9c7be8fa9a5603fbdbf0debd91e2d4e21b303270
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260860
> Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#36728}

Bug: webrtc:13892, webrtc:13865
Change-Id: Ic7571fa8433897b348ca9a8f73ceae68014fe0c6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260921
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#36735}
2022-05-02 19:06:37 +00:00
0a16276290 Restore FiredDirection and maybe fire OnTrack in Rollback.
Prior to this CL, rollback did not restore FiredDirection and remote
streams were only sometimes restored. This resulted in not firing
ontrack if a track was rolled back and then added again on the same
transceiver.

Rollback also never performed OnTrack, which is incorrect because a
transceiver that goes from sendrecv to inactive will cause OnRemoveTrack
and if this is rolled back (so we become sendrecv again) then we need
OnTrack to fire.

This CL improves rollback's "memory", fires ontrack in Rollback() and
adds test coverage.

Needed to solve similar bugs in the Chromium layers as well:
https://chromium-review.googlesource.com/c/chromium/src/+/3613313

Bug: chromium:1320669
Change-Id: I655dd7d8a6b86080fe0e7c32c9e8c6434062ae91
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260330
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36734}
2022-05-02 18:07:24 +00:00
548102642d Roll chromium_revision b0579bf7df..6ab3fd62f5 (998259:998390)
Change log: b0579bf7df..6ab3fd62f5
Full diff: b0579bf7df..6ab3fd62f5

Changed dependencies
* src/base: 93f872454a..7d24fc96eb
* src/buildtools/third_party/libunwind/trunk: d8a47466e3..393e3eee99
* src/ios: fe8021fccc..867a173cf3
* src/testing: e04b1ba07e..e49c8a1245
* src/third_party: e83b9e5544..cf748b0908
* src/third_party/depot_tools: fccf35cb8e..9a7b7675ba
* src/third_party/freetype/src: 6fb7b7a09d..e8ebfe988b
* src/third_party/turbine: y4x80kUnDOxC5QyG48MlVoiRIEn09eaHcIJQFavlqgMC..zB1ls771w8S0URcjvMWxOHJ33pmUKq5Zr8zkbIMfvcsC
* src/tools: 22ebf0451e..178dda6301
DEPS diff: b0579bf7df..6ab3fd62f5/DEPS

No update to Clang.

BUG=None

Change-Id: I0f5eea94be9046cfc6d4e87ed2cef611fe686d86
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260902
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@{#36733}
2022-05-02 16:39:23 +00:00
a16a6a6341 stats: implement inbound-rtp totalProcessingDelay for video
https://w3c.github.io/webrtc-stats/#dom-rtcinboundrtpstreamstats-totalprocessingdelay

BUG=webrtc:13984

Change-Id: Ifd821bd8553add46218f09a11366096d62f5d09f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/259768
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36732}
2022-05-02 10:56:22 +00:00
a63b6b7d40 [PCLF] Allow configuring RtpEncodingParameters with singlecast
With the encoding parameters in the SimulcastConfig objects, it wasn't
possible to configure explicit encoding parameters when using singlecast,
required for example to use the spec standard SVC API.

Bug: webrtc:11607
Change-Id: I92b1446e772e2ecec93379dc91a3da159b8bc209
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260002
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36731}
2022-05-02 10:30:14 +00:00
69c1df2f44 stats: add dtlsRole to transport
https://w3c.github.io/webrtc-stats/#dom-rtctransportstats-dtlsrole

BUG=webrtc:13978

Change-Id: Ib158427d2df0307884381bdd46c411f60f56a371
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/259761
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
Cr-Commit-Position: refs/heads/main@{#36730}
2022-05-02 10:13:54 +00:00
8c354882f8 Updated libaom AV1 encoder configuration.
New configuration parameters are:
  AV1E_SET_DISABLE_TRELLIS_QUANT = 1
  AV1E_SET_ENABLE_DIST_WTD_COMP = 0
  AV1E_SET_ENABLE_DIFF_WTD_COMP = 0
  AV1E_SET_ENABLE_DUAL_FILTER = 0
  AV1E_SET_ENABLE_INTERINTRA_COMP = 0
  AV1E_SET_ENABLE_INTERINTRA_WEDGE = 0
  AV1E_SET_ENABLE_INTRA_EDGE_FILTER = 0
  AV1E_SET_ENABLE_INTRABC = 0
  AV1E_SET_ENABLE_MASKED_COMP = 0
  AV1E_SET_ENABLE_PAETH_INTRA = 0
  AV1E_SET_ENABLE_QM = 0
  AV1E_SET_ENABLE_RECT_PARTITIONS = 0
  AV1E_SET_ENABLE_RESTORATION = 0
  AV1E_SET_ENABLE_SMOOTH_INTERINTRA = 0
  AV1E_SET_ENABLE_TX64 = 0
  AV1E_SET_MAX_REFERENCE_FRAMES = 3

Also added a SET_ENCODER_PARAM_OR_RETURN_ERROR convenience macro.

Bug: none
Change-Id: I7a683ec4ad36f33e13e669ba25db2ad81b9b5c86
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260463
Reviewed-by: Marco Paniconi <marpan@google.com>
Reviewed-by: Marco Paniconi <marpan@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36729}
2022-05-02 10:12:52 +00:00
ca94696ae2 Clear port_ before firing destroyed event.
This reverts a change introduced last week in [1] whereby the port_
pointer would be valid while firing the `Destroyed` event.

[1] https://webrtc-review.googlesource.com/c/src/+/259826

Bug: webrtc:13892, webrtc:13865
Change-Id: I9c7be8fa9a5603fbdbf0debd91e2d4e21b303270
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260860
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36728}
2022-05-02 09:56:42 +00:00
a4e9480279 Eliminate channel.h from rtc_stats_collector
This reduces the visibility of the implementation details
of cricket::ChannelInterface implementations.

Bug: webrtc:13931
Change-Id: Ia720a297821c1ddc242af2b04da4f52b1e04ab6b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260560
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36727}
2022-05-02 09:28:34 +00:00
4c29ca654b Remove mention of MSVC support from docs
Since MSVC bots has been removed, we can't say that MSVC is supported.

Bug: webrtc:13232
Change-Id: I39c6b8d9ef7af2aca6c6e5f2e5c44c9b1146145b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260521
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Daniel.L (Byoungchan) Lee <daniel.l@hpcnt.com>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36726}
2022-05-02 09:26:32 +00:00
2c761b2212 Eliminate channel.h from peer_connection.cc
This limits the exposure of the implementation of ChannelInterface.

Bug: webrtc:13931
Change-Id: Ifc0fa496c210413d81ad71f44fa4040b881d092c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260561
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36725}
2022-05-02 09:04:32 +00:00
5e354d9969 dcsctp: Improve fast retransmission support
Before this CL, fast retransmission didn't follow the SHOULDs:

https://datatracker.ietf.org/doc/html/rfc4960#section-7.2.4
 * "the sender SHOULD ignore the value of cwnd (...)"
 * "(...) and SHOULD NOT delay retransmission for this single
   packet."

With this CL, chunks that are eligible for fast retransmission (limited
to what can fit in a single packet) will be sent just after having
received the SACK that reported them missing and transitioned the socket
into fast recovery, and they will be sent even if the congestion window
is full.

Bug: webrtc:13969
Change-Id: I12c7e191a8ffd67973db7f083bad8a6061549fa2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/259866
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36724}
2022-05-02 08:29:52 +00:00