Commit Graph

34351 Commits

Author SHA1 Message Date
ffce8e3ea0 Migrate android video decoder wrapper from InitDecode to Configure
Bug: webrtc:13045
Change-Id: Idb6d83d5cde659876ea3a106a85f177191f8074c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228941
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34769}
2021-08-16 12:43:17 +00:00
600bb8c79f dcsctp: Migrating to using absl::bind_front
It is now allowed in WebRTC, so let's use it.

Bug: webrtc:12943
Change-Id: I74a0f2fd9c1b9e7b5613ae1c592cf26842b8dddd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228564
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34768}
2021-08-16 11:51:27 +00:00
8df32eb0e1 dcsctp: Add API to indicate packet send status
Before this change, there was no way for a client to indicate to the
dcSCTP library if a packet that was supposed to be sent, was actually
sent. It was assumed that it always was.

To handle temporary failures better, such as retrying to send packets
that failed to be sent when the send buffer was full, this information
is propagated to the library.

Note that this change only covers the API and adaptations to clients.
The actual implementation to make use of this information is done as a
follow-up change.

Bug: webrtc:12943
Change-Id: I8f9c62e17f1de1566fa6b0f13a57a3db9f4e7684
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228563
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34767}
2021-08-16 11:29:47 +00:00
19214818d7 Fix some -Wunreachable-code-aggressive warnings
Bug: chromium:1066980
Change-Id: I24fea094f28577799c5fcbcf2e9657ffa9bfd076
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228760
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34766}
2021-08-16 11:09:16 +00:00
96106719a9 Drop support for PipeWire 0.2
We already default to PipeWire 0.3 and there is no reason to keep
continue supporting an old version of PipeWire which is not maintained
anymore, wont't get any update or new features. It also makes the code
easier to understand since we can remove all ifdefs we had to support
two versions simultaneously.

Bug: chromium:1146942
Change-Id: I7156e1784ebfad111485a2944199563568a75eec
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227345
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34765}
2021-08-16 09:54:27 +00:00
e1afe72aeb Roll chromium_revision 1d52d174cb..47dc8e2f50 (911982:912091)
Change log: 1d52d174cb..47dc8e2f50
Full diff: 1d52d174cb..47dc8e2f50

Changed dependencies
* src/base: 61ff3869c9..959457e3f3
* src/ios: 35bad7cc93..6a9bd7348f
* src/testing: 33834b4245..c0ea7c3386
* src/third_party: 7d67c07a43..56c558ed2e
* src/third_party/androidx: wapweqY3T9FEHpjaWRsHugloyn-WT9pGg45FvDUjXwUC..v5A41FDtUTUgWmjkgJS42X4yMcKx2zbPp8fWod32rhsC
* src/tools: 0e936433d9..b54abb9ed0
DEPS diff: 1d52d174cb..47dc8e2f50/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I365cef193e5e8b45ab5c1d05c5a0333eef529403
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228861
Reviewed-by: 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/master@{#34764}
2021-08-16 08:53:28 +00:00
c617c33948 Update WebRTC code version (2021-08-16T04:02:11).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I86f1920a97f17d4a918a786a502c02ec5be367ff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228880
Reviewed-by: 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/master@{#34763}
2021-08-16 05:14:12 +00:00
750948bd00 Pass dSYM when creating XCFramework only if dSYM exists
Enabling bitcode doesn't seem to create a separate dSYM.
To make it work in this configuration, when creating an XCFramework,
pass dSYM only if it exists.

Bug: none
Change-Id: I6d95dc765accc10a70caeb88063d05eeea630dd1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228700
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34762}
2021-08-14 16:01:45 +00:00
ba0a306585 Move check for number_of_cores parameter validitity
from runtime check in proxy classes that picks decoder (VCMDecoderDataBase)
to a DCHECK in the VideoDecoder::Settings

Bug: None
Change-Id: Ic8c2e971486a3a7eb247f9d03815aba5ca5a7bad
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228644
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34761}
2021-08-14 11:51:53 +00:00
10ee27e80f Roll chromium_revision d76e910d24..1d52d174cb (911810:911982)
Change log: d76e910d24..1d52d174cb
Full diff: d76e910d24..1d52d174cb

Changed dependencies
* src/base: 8c9fa2069d..61ff3869c9
* src/build: b5b4ab23e6..a0d51919fe
* src/ios: 0bbdc35ead..35bad7cc93
* src/testing: 0c11f1ee96..33834b4245
* src/third_party: c3ad412926..7d67c07a43
* src/third_party/android_build_tools/aapt2: aKJ5MrSRXjVPtBx2DoBnJtmmjO6W6PkQrTYuBtdu46YC..PHj2SHpCe6Sr9lcIR9W1onhKN4FIIPL2Mho5aAQG-QIC
* src/third_party/androidx: krtkAyAj_Vhfu3r0xami8YhOw7sbY3Zh_JEHbIchaFYC..wapweqY3T9FEHpjaWRsHugloyn-WT9pGg45FvDUjXwUC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/bd47f22ad2..126f6a8996
* src/third_party/depot_tools: 699d70d878..0c42eff6d1
* src/third_party/googletest/src: 47f819c3ca..0134d73a49
* src/third_party/perfetto: 76f7830d7f..303b88cfe5
* src/tools: c0e6f12d59..0e936433d9
DEPS diff: d76e910d24..1d52d174cb/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Iddba866c96e75dc05c58c49a8e93863223262a12
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228720
Reviewed-by: 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/master@{#34760}
2021-08-14 08:32:43 +00:00
75f222827a Update WebRTC code version (2021-08-14T04:03:09).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: Ida73a898739ea9f2c18677ffb33b4b120470f9bd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228684
Reviewed-by: 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/master@{#34759}
2021-08-14 06:03:53 +00:00
a7d32e3dcb Roll chromium_revision cce6e710fd..d76e910d24 (911687:911810)
Change log: cce6e710fd..d76e910d24
Full diff: cce6e710fd..d76e910d24

Changed dependencies
* src/base: d6b10338ba..8c9fa2069d
* src/build: 3fdcec6e56..b5b4ab23e6
* src/buildtools: f063da141c..6810b870e0
* src/ios: 508797fd54..0bbdc35ead
* src/testing: c5ff879f92..0c11f1ee96
* src/third_party: b9f1426982..c3ad412926
* src/third_party/androidx: o74JoE-kByyfp7IZNkn3v09A4ryAISjuilobCBzv6PAC..krtkAyAj_Vhfu3r0xami8YhOw7sbY3Zh_JEHbIchaFYC
* src/third_party/breakpad/breakpad: bc7ddae234..b95c4868b1
* src/third_party/perfetto: e0c4d9b956..76f7830d7f
* src/tools: 69b0efcff6..c0e6f12d59
DEPS diff: cce6e710fd..d76e910d24/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I7e3e991a8d7660d4b7c185f2f5f691e393218bd5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228662
Reviewed-by: 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/master@{#34758}
2021-08-13 18:17:20 +00:00
54abf984cc Remove the now unused non-deferred sequencing code path.
The config flag will be removed once downstream usage is gone.

Bug: webrtc:11340
Change-Id: Iee8816660009211540d9b09bb3cba514455d709b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228431
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34757}
2021-08-13 17:17:49 +00:00
355b8d237c Use VideoDecoder::Configure interface when setting up decoder
Bug: webrtc:13045
Change-Id: I322ff91d96bab8bb7c40f4dea1c9c2b5c7631635
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228420
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34756}
2021-08-13 16:03:32 +00:00
b6bbdeb24d Allow RTP module thread checking to know PacketRouter status.
Since https://webrtc-review.googlesource.com/c/src/+/228433 both audio
and video now only call Get/SetRtpState while not registered to the
packet router.

We can thus remove the lock around packet sequencer and just use a
thread checker.

Bug: webrtc:11340
Change-Id: Ie6865cc96c36208700c31a75747ff4dd992ce68d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228435
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34755}
2021-08-13 15:04:49 +00:00
05a9e5abd3 Fix race in CallPerfTest.Bitrate_Kbps_PadsToMinTransmitBitrate
Task posted by OnSendRtp might be scheduled after `send_stream_` is
destroyed. Fix by using a PendingTaskSafetyFlag, killed from the
OnStreamsStopped callback.

Bug: webrtc:12726
Change-Id: I935917a3d80e82c3536261d72059448fb7aac00d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228643
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34754}
2021-08-13 13:22:49 +00:00
95f6e8bebb Relax video_codec parameter for RtpVideoStreamReceiver::AddReceiveCodec
Instead of requiring huge VideoCodec struct, pass single member from it

Bug: webrtc:13045
Change-Id: I1a4a48abd6c407cb9a878daafda5c8a85beff39e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228641
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34753}
2021-08-13 12:56:00 +00:00
b2745ba1f8 Condition frame pacing on min/max playout delay
As a first step we only want to enable frame pacing for the case
where min playout delay == 0 and max playout delay > 0.

Bug: chromium:1237402, chromium:1239469
Change-Id: Icf9641db7566083d0279135efa8618e435d881eb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228640
Commit-Queue: Johannes Kron <kron@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34752}
2021-08-13 10:52:19 +00:00
edfaaef086 Propagate socket write errors for DtlsTransport
The UDP sockets in WebRTC are non-blocking, and when writing too much
to them so that their send buffer becomes exhausted, they will return
EAGAIN or EWOULDBLOCK, which indicates that the client will need to
retry a bit later.

Media packets are generally sent by the pacer, which generally avoids
this exhaustion, but for SCTP which has a congestion control algorithm
quite similar to TCP, it may overshoot the amount of data it writes. If
the SCTP library can be notified when writing fails, it can stop writing
for a while until the socket recovers, which will result in less
overshooting and fewer lost packets (possibly even none). But for the
SCTP library to be able to know this, errors must be propagated, which
they weren't with the argument that packets may get lost anyway.

Bug: webrtc:12943
Change-Id: I9244580abf0d48ff810da30a23f995d12be623ed
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228439
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34751}
2021-08-13 10:30:29 +00:00
55a2f770a6 Roll chromium_revision fcc4764793..cce6e710fd (911577:911687)
Change log: fcc4764793..cce6e710fd
Full diff: fcc4764793..cce6e710fd

Changed dependencies
* src/base: d5da9fc322..d6b10338ba
* src/build: 4d07fd6ad5..3fdcec6e56
* src/buildtools: 37dc929ecb..f063da141c
* src/ios: 4ca2b0232a..508797fd54
* src/testing: 7a163851ec..c5ff879f92
* src/third_party: 755005b7cb..b9f1426982
* src/third_party/androidx: JO4WtrFSgv4hKbrR0kNn-c6rw1p6XQZuWfufbsEhuD4C..o74JoE-kByyfp7IZNkn3v09A4ryAISjuilobCBzv6PAC
* src/third_party/nasm: e9be5fd6d7..4e6fe9d154
* src/tools: 58a626d715..69b0efcff6
DEPS diff: fcc4764793..cce6e710fd/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I43c2adb51729ea159c2a30ed639ffd80da78710e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228628
Reviewed-by: 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/master@{#34750}
2021-08-13 10:28:20 +00:00
722a8a6875 Tolerate more not completed measurements for CPD uploads
Recently CPD team rolled out upload completion token feature to all users. Pressure on the system increased. Now became more common situations when upload completed, but because of Datastore limitations we can't see confirmation of it for some measurements.

I've checked 6 recent failures. For all of them amount of timeout measurements were less than 3% (less than 15 in absolute numbers, the biggest percent of failures was for 80 measurements, 2 of which timed out).

Bug: b/182111579
Change-Id: Ia5af367870d1cf7d28b9422c4114c6b85c41f865
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228562
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34749}
2021-08-13 10:21:29 +00:00
dcaf1e79c4 Update WebRTC code version (2021-08-13T04:05:09).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I253d5f78ca1afc88e3cb3296a5456ca49387d4be
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228625
Reviewed-by: 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/master@{#34748}
2021-08-13 05:46:54 +00:00
1a292b72cd Roll chromium_revision 8baabcff97..fcc4764793 (911441:911577)
Change log: 8baabcff97..fcc4764793
Full diff: 8baabcff97..fcc4764793

Changed dependencies
* src/base: cadc2eec1e..d5da9fc322
* src/buildtools/third_party/libc++abi/trunk: eed07007f8..671803fd96
* src/buildtools/third_party/libunwind/trunk: 7729bc9248..83f8edbca7
* src/ios: 4cbd2f26b1..4ca2b0232a
* src/testing: ebfd3cfb94..7a163851ec
* src/third_party: a6b4b34428..755005b7cb
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/3ef3f2c876..bd47f22ad2
* src/third_party/perfetto: 91a6d3a9b8..e0c4d9b956
* src/tools: 33a8d904de..58a626d715
DEPS diff: 8baabcff97..fcc4764793/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I1aa71ae35cf397cf60fb489d85e5cbc0832177c8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228621
Reviewed-by: 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/master@{#34747}
2021-08-13 01:08:49 +00:00
04a9ce1e11 Roll chromium_revision ea375c193d..8baabcff97 (911333:911441)
Change log: ea375c193d..8baabcff97
Full diff: ea375c193d..8baabcff97

Changed dependencies
* src/base: c0e983f5db..cadc2eec1e
* src/build: 923d7f828a..4d07fd6ad5
* src/ios: af3143e15a..4cbd2f26b1
* src/testing: fd265d4809..ebfd3cfb94
* src/third_party: d1a75c47c8..a6b4b34428
* src/third_party/icu: 75e34bccce..a38aef9142
* src/tools: 2c3524bb30..33a8d904de
DEPS diff: ea375c193d..8baabcff97/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I4276361915bf71d54776e6a21d2232b2d8f9a0d9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228600
Reviewed-by: 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/master@{#34746}
2021-08-12 20:36:12 +00:00
0c2a9caf8f fix some typos
BUG=None

Change-Id: If793268a5773dfab6a40bbd4ffa760f3d4cb5a46
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228428
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34745}
2021-08-12 18:37:10 +00:00
e0fb45c6d4 dcsctp: Add burst limiter for sent packets
Some deployments, e.g. Chromium, has a limited send buffer. It's
reasonable that it's quite small, as it avoids queuing too much, which
typically results in increased latency for real-time communication. To
avoid SCTP to fill up the entire buffer at once - especially when doing
fast retransmissions - limit the amount of packets that are sent in one
go.

In a typical scenario, SCTP will not send more than three packets for
each incoming packet, which is is the case when a SACK is received which
has acknowledged two large packets, and which also adds the MTU to the
congestion window (due to in slow-start mode), which then may result in
sending three packets. So setting this value to four makes any
retransmission not use that much more of the send buffer.

This is analogous to usrsctp_sysctl_set_sctp_fr_max_burst_default in
usrsctp, which also has the default value of four (4).

Bug: webrtc:12943
Change-Id: Iff76a1668beadc8776fab10312ef9ee26f24e442
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228480
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34744}
2021-08-12 17:22:55 +00:00
a9e7f719a9 Roll chromium_revision 3857505ab0..ea375c193d (911218:911333)
Change log: 3857505ab0..ea375c193d
Full diff: 3857505ab0..ea375c193d

Changed dependencies
* src/base: 92386f1e2e..c0e983f5db
* src/ios: a5cdce730f..af3143e15a
* src/testing: 186477c3e1..fd265d4809
* src/third_party: 7d4e6c863f..d1a75c47c8
* src/third_party/android_build_tools/aapt2: R2k5wwOlIaS6sjv2TIyHotiPJod-6KqnZO8NH-KFK8sC..aKJ5MrSRXjVPtBx2DoBnJtmmjO6W6PkQrTYuBtdu46YC
* src/third_party/androidx: zIoBx2j1PxzEKWCcYBQWLEu66f7usW-CNUQOr1ErmJ4C..JO4WtrFSgv4hKbrR0kNn-c6rw1p6XQZuWfufbsEhuD4C
* src/third_party/depot_tools: 4b973b6e6e..699d70d878
* src/third_party/perfetto: b34dc62800..91a6d3a9b8
* src/tools: b801bdfdc3..2c3524bb30
DEPS diff: 3857505ab0..ea375c193d/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Iaf596d148f310eaeacf688026154a875cba2c286
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228475
Reviewed-by: 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/master@{#34743}
2021-08-12 17:16:25 +00:00
d08930d5fb Migrate test VideoDecoders to new VideoDecoder::Configure
Bug: webrtc:13045
Change-Id: I3b66270de59b441bf8b92bc10f67f59f05e9995e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228436
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34742}
2021-08-12 15:41:03 +00:00
40f7a5bab0 Extract CPU measurer from DVQA
Bug: b/196229820
Change-Id: I1f8f21ea5864f9ba98365e4699572fabd8cb1ece
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228560
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34741}
2021-08-12 15:28:44 +00:00
da6a9d58f8 Use GTEST_SKIP() instead of early return.
The issue for iOS platforms was fixed by crrev.com/c/2505276.

Bug: webrtc:13057
Change-Id: I0f01c1291184f4c7960db746951255961a962303
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228520
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34740}
2021-08-12 15:24:13 +00:00
aa918e0111 Delete always-true BasicPortAllocatorSession::AddAllocatedPort argument
This is a private method, and the `prepare_address` argument was
constant true at all call sites.

Bug: None
Change-Id: Id4714ee7c154a729a6e106c29895fc760e9d0455
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228527
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34739}
2021-08-12 15:21:13 +00:00
69dd142797 Register audio send stream in packet router on Start().
Currently, the RtpRtcp module of AudioSendStream is (de)registered in
the packet router on calls to
(Register|Reset)SenderCongestionControlObjects.
This CL changes that to happen on Start/Stop instead, which allows us
to safely call (Get|Set)RtpState on suspend/resume without the need
for extra locking in the rtp module.

See also https://webrtc-review.googlesource.com/c/src/+/228430

Bug: webrtc:11340
Change-Id: I54243a9ace8a7659924269418468b49b967b9465
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228433
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34738}
2021-08-12 15:15:53 +00:00
8b18304e66 Extract internal DVQA shared objects for future split
Bug: b/196229820
Change-Id: I6bb4be2656d1686a5f30721378605b39d5c391ca
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228522
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34737}
2021-08-12 14:42:43 +00:00
a17ec76351 Extract various DVQA stats related objects into its own header
Bug: b/196229820
Change-Id: I238e49532a6bfd71eee8b6b60dfbb1645c8234ac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228438
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34736}
2021-08-12 11:58:57 +00:00
2a6d48b82f Roll chromium_revision 28cd08bbe9..3857505ab0 (911167:911218)
Change log: 28cd08bbe9..3857505ab0
Full diff: 28cd08bbe9..3857505ab0

Changed dependencies
* src/base: cb2eb0f4a2..92386f1e2e
* src/build: ee35ebe42c..923d7f828a
* src/ios: 7fd2295b11..a5cdce730f
* src/testing: b77b12337c..186477c3e1
* src/third_party: 29bf34dce3..7d4e6c863f
* src/third_party/androidx: aInnSluuC_7a0hWGVsPv23EywmldAOPIcV-bs0Ah1V0C..zIoBx2j1PxzEKWCcYBQWLEu66f7usW-CNUQOr1ErmJ4C
* src/tools: 0f94464c7a..b801bdfdc3
DEPS diff: 28cd08bbe9..3857505ab0/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I380dbfd5ea54cc9f5ac7252ad59993477e3dea83
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228501
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34735}
2021-08-12 11:37:30 +00:00
5f1d406cc9 Move legacy RtpRtcpModule to deferred sequencing.
Bug: webrtc:11340
Change-Id: I45ba6c37fe7fec8de756dee1eb914aceebbeae93
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228437
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34734}
2021-08-12 10:22:59 +00:00
7fa3f40626 Migrate software fallback wrapper to new VideoDecoder::Configure
Bug: webrtc:13045
Change-Id: I5082a5d12a43313842f8d5eb1fa70a12671e572c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228434
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34733}
2021-08-12 10:21:19 +00:00
647d326438 Add tracking of video encoder/decoder used for stream in DVQA
Bug: b/196035476
Change-Id: I882f2236c9522f06ad60332ab2a4bb9226b1bd8e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228423
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34732}
2021-08-12 08:49:57 +00:00
9ff59a396b Roll chromium_revision cf08193ade..28cd08bbe9 (911056:911167)
Change log: cf08193ade..28cd08bbe9
Full diff: cf08193ade..28cd08bbe9

Changed dependencies
* src/base: ad2a11b66a..cb2eb0f4a2
* src/build: 180853925f..ee35ebe42c
* src/ios: 8f9b02bc84..7fd2295b11
* src/testing: b2c19415d2..b77b12337c
* src/third_party: 0b603ab12b..29bf34dce3
* src/third_party/androidx: 5EsskEwtu6Hzju-fNoomuLOMy9gfI2OYkzR37-UWmjkC..aInnSluuC_7a0hWGVsPv23EywmldAOPIcV-bs0Ah1V0C
* src/third_party/depot_tools: bdc7adc6f7..4b973b6e6e
* src/tools: cdfee7063d..0f94464c7a
DEPS diff: cf08193ade..28cd08bbe9/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I1c465d6b8872d918ea6e595ebf827d16df865eda
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228471
Reviewed-by: 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/master@{#34731}
2021-08-12 07:02:13 +00:00
a30819bbc3 Update WebRTC code version (2021-08-12T04:05:19).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: I58469f5a177b3861f2f3d21c160f34b4f98d08bd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228470
Reviewed-by: 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/master@{#34730}
2021-08-12 05:15:48 +00:00
44aa6c4e15 Roll chromium_revision c0a0d75300..cf08193ade (910939:911056)
Change log: c0a0d75300..cf08193ade
Full diff: c0a0d75300..cf08193ade

Changed dependencies
* src/base: e0aa211cdf..ad2a11b66a
* src/buildtools/linux64: git_revision:eea3906f0e2a8d3622080127d2005ff214d51383..git_revision:69ec4fca1fa69ddadae13f9e6b7507efa0675263
* src/buildtools/mac: git_revision:eea3906f0e2a8d3622080127d2005ff214d51383..git_revision:69ec4fca1fa69ddadae13f9e6b7507efa0675263
* src/buildtools/third_party/libunwind/trunk: b825591df3..7729bc9248
* src/buildtools/win: git_revision:eea3906f0e2a8d3622080127d2005ff214d51383..git_revision:69ec4fca1fa69ddadae13f9e6b7507efa0675263
* src/ios: 08b66b1a62..8f9b02bc84
* src/testing: 87f58f8686..b2c19415d2
* src/third_party: 5640700e82..0b603ab12b
* src/third_party/depot_tools: 88382976a2..bdc7adc6f7
* src/tools: 87b6e54c9e..cdfee7063d
DEPS diff: c0a0d75300..cf08193ade/DEPS

Clang version changed llvmorg-14-init-591-g7d9d926a:llvmorg-14-init-1002-gb5e470aa
Details: c0a0d75300..cf08193ade/tools/clang/scripts/update.py

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I090591a2489bc6bde8f941cb750d963683339191
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228467
Reviewed-by: 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/master@{#34729}
2021-08-12 01:09:09 +00:00
8591eff520 Reland "Fix bug where we assume new m= sections will always be bundled."
This is a reland of commit 704a834f685eb96c9fcf891ca345557bef4d138a,
after it was reverted in order to merge a CL to M93.

Original change's description:
> Fix bug where we assume new m= sections will always be bundled.
>
> A recent change [1] assumes that all new m= sections will share the
> first BUNDLE group (if one already exists), which avoids generating
> ICE candidates that are ultimately unnecessary. This is fine for JSEP
> endpoints, but it breaks the following scenarios for non-JSEP endpoints:
>
> * Remote offer adding a new m= section that's not part of any BUNDLE
>   group.
> * Remote offer adding an m= section to the second BUNDLE group.
>
> The latter is specifically problematic for any application that wants
> to bundle all audio streams in one group and all video streams in
> another group when using Unified Plan SDP, to replicate the behavior of
> using Plan B without bundling. It may try to add a video stream only
> for WebRTC to bundle it with audio.
>
> This is fixed by doing some minor re-factoring, having BundleManager
> update the bundle groups at offer time.
>
> Also:
> * Added some additional validation for multiple bundle groups in a
>   subsequent offer, since that now becomes relevant.
> * Improved rollback support, because now rolling back an offer may need
>   to not only remove mid->transport mappings but alter them.
>
> [1]: https://webrtc-review.googlesource.com/c/src/+/221601
>
> Bug: webrtc:12906, webrtc:12999
> Change-Id: I4c6e7020c0be33a782d3608dee88e4e2fceb1be1
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/225642
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Henrik Boström <hbos@webrtc.org>
> Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#34544}

Bug: webrtc:12906, webrtc:12999
Change-Id: Id6acab2e2d7430c65f4b6a1d7372388a70cc18ab
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228465
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34728}
2021-08-11 23:36:28 +00:00
1c7ecefbe7 Reland "Modify Bundle logic to not add & destroy extra transport at add-track"
This relands commit I41cae74605fecf454900a958776b95607ccf3745, after
reverting it in order to merge the revert to M93 (the deadline for
which is now exceeded).

Original change description:

> If a bundle is established, then per JSEP, the offerer is required to
> include the new track in the bundle, and per BUNDLE, the answerer has
> to either accept the track as part of the bundle or reject the track;
> it cannot move it out of the group. So we will never need the transport.
>
> Bug: webrtc:12837
> Change-Id: I41cae74605fecf454900a958776b95607ccf3745
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/221601
> Reviewed-by: Henrik Boström <hbos@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#34290}

Bug: webrtc:12837
Change-Id: I30a8f03165ab797ed766b51c4eb15c2a9cecb5ed
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228500
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34727}
2021-08-11 21:50:08 +00:00
b7eb18da6e Roll chromium_revision a48436a40a..c0a0d75300 (910736:910939)
Change log: a48436a40a..c0a0d75300
Full diff: a48436a40a..c0a0d75300

Changed dependencies
* src/base: 8ada907420..e0aa211cdf
* src/build: cb0fa26dea..180853925f
* src/buildtools/third_party/libc++abi/trunk: 24e92c2bee..eed07007f8
* src/ios: 3cc0083a11..08b66b1a62
* src/testing: 2425804d0d..87f58f8686
* src/third_party: c46fd991e9..5640700e82
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/abc7ba7d87..3ef3f2c876
* src/third_party/depot_tools: d76912e4d7..88382976a2
* src/third_party/perfetto: 3f8fabd85f..b34dc62800
* src/tools: 97138a27cc..87b6e54c9e
* src/tools/luci-go: git_revision:70263bc59d62128d76f23e84906a4205ebbb749a..git_revision:a5735121c6339dee9b1b3644535e230744daaac9
* src/tools/luci-go: git_revision:70263bc59d62128d76f23e84906a4205ebbb749a..git_revision:a5735121c6339dee9b1b3644535e230744daaac9
* src/tools/luci-go: git_revision:70263bc59d62128d76f23e84906a4205ebbb749a..git_revision:a5735121c6339dee9b1b3644535e230744daaac9
DEPS diff: a48436a40a..c0a0d75300/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Iccaedcdddd9f2f7a00d3f9cdc81be4d0c1ef62ec
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228464
Reviewed-by: 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/master@{#34726}
2021-08-11 20:36:35 +00:00
4f776ac7de Use make_ref_counted in AudioProcessingBuilder
Bug: webrtc:12701
Change-Id: I51ca5a54f812a1620ee2e6605c9ff67b92e2a5f8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224547
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34725}
2021-08-11 15:40:28 +00:00
897bf9bff1 Fix frame counters for peers added in the middle of the call
Bug: b/196035476
Change-Id: Ie49ab247a2ff8bda680e4586f7316af8eaa8fe56
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228429
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34724}
2021-08-11 14:13:25 +00:00
6e2458d888 Add lock to guard rtp packet sequencer.
With deferred packet sequencing, the PacketSequencer instance is called
directly from the RtpRtcp module while before it was called from within
the RTPSender while holding a lock.

Since sequence number assignment happens on the same thread as actual
packet sending, though thought was that locking was no longer needed.
Unfortunately, SetRtpState()/GetRtpState() also exists - and while they
should only be called on creating/destruction there is a possible race
where a delayed packet from the pacer accesses the sequencer while
GetRtpState() is being called.

For now, this CL just adds a lock to guard sequencer. Follow-ups will
make sure get/set state is never called while module is attached to
the packet router. After that, the lock can be removed again.

Bug: webrtc:11340, webrtc:12470
Change-Id: I123c762fb4afd20b3a6bd03b86234eb9ec34a209
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228430
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34723}
2021-08-11 13:28:11 +00:00
8729d785df Delete AsyncSocketAdapter::Attach, make socket construction time const
Bug: webrtc:6424
Change-Id: I7001c4ac52ddd267dcd55f751f3f38976eab820f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227032
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34722}
2021-08-11 13:15:07 +00:00
a820cc226e Change signatures of SDP ParseFailed* functions
Change types of const std::string& arguments.

Use absl::string_view for the reference to input, to prepare for
parsing with less copies. Use std::string (passed by value) for the
description, to support ownership transfer without copying.

Bug: None
Change-Id: I4358b42bb824e4eb7a5ac9b64d44db1b9b022bab
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/223667
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34721}
2021-08-11 13:14:05 +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