Commit graph

37076 commits

Author SHA1 Message Date
Byoungchan Lee
a1a7c638ec Let PCF.GetRtpSenderCapabilities return codecs' scalabilityModes.
Also move ScalabilityModeToString to api and add RTC_EXPORT so that
Chromium can use it.

Bug: chromium:986069
Change-Id: I5dbbb6de9b14ca20f3ae0630552dcd44595ad5ef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267780
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Daniel.L (Byoungchan) Lee <daniel.l@hpcnt.com>
Cr-Commit-Position: refs/heads/main@{#37444}
2022-07-05 13:28:33 +00:00
philipel
e1c707c40f Remove unused incomplete_frame argument from JitterEstimator.
Bug: webrtc:14151
Change-Id: I6764315f0c10b304f50e4639a3e49e4ed013c41e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267842
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37443}
2022-07-05 12:53:13 +00:00
Niels Möller
39b1b42487 Use designated initializers for webrtc::SimulcastStream
Style change extracted from
https://webrtc-review.googlesource.com/c/src/+/264800

Bug: webrtc:11607
Change-Id: I3dd5ca1eef8d70a61023af37d90032225e40b55d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267841
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37442}
2022-07-05 12:23:44 +00:00
Ivo Creusen
11fdb08282 Implement RTCInboundRTPStreamStats.JitterBufferTargetDelay
This CL also removes the existing non-standard implementation of the metric.

Bug: webrtc:14147, webrtc:11789
Change-Id: I70fd1c451dfd59380fe5ce959086f37b31697c16
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/265360
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Ivo Creusen <ivoc@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37441}
2022-07-05 11:34:53 +00:00
Björn Terelius
63299a3124 Add absl::string_view overload for RtcEventLogOutput::Write
Bug: webrtc:13579
Change-Id: I13f63fb6be6aa62c2e011c18327499fa16b5824e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267641
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Ali Tofigh <alito@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37440}
2022-07-05 10:47:47 +00:00
Danil Chapovalov
8feb6fd1e9 Introduce new interface for TaskQueueBase using absl::AnyInvocable
Bug: webrtc:14245
Change-Id: Ie4f47ea9753d6644aec2e95f531b521cc119a6c8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267402
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37439}
2022-07-05 10:42:43 +00:00
Erik Språng
4f1af1156f Revert "When VP9 SVC is used, use SvcConfig to set max bitrate for the stream."
This reverts commit 3afb8e2431.

Reason for revert: Causes some unexpected perf regressions.

Original change's description:
> When VP9 SVC is used, use SvcConfig to set max bitrate for the stream.
>
> Currently, a default max bitrate is determined within WebRtcVideoEngine,
> which maxes out at 2.5Mbps - and that limits the max bitrate deteremined
> by SvcConfig for resolutions above 720p.
>
> This does not affect simulcast, as WebRtcVideoEngine already knows to
> trust the rate allocation in simulcast.cc instead.
>
> Bug: webrtc:14017
> Change-Id: I0c310a6fd496e9e5a10eae45838900068aa1ae2d
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267160
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Commit-Queue: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#37370}

Bug: webrtc:14017
Change-Id: I1e45ee3f78deb50a9057d648146b1a6360782aa3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267800
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Auto-Submit: Erik Språng <sprang@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37438}
2022-07-05 10:25:23 +00:00
Mirko Bonadei
2ad75b3956 Remove testonly from unpack_aecdump.
This CL duplicates a few lines of utility code from
//modules/audio_processing:audioproc_test_utils (which contains more
testonly things) and allows the possibility to remove testonly from
the unpack_aecdump tool.

Bug: b/237526033
Change-Id: If2e1dd4cc825429c496091cf8640c67069fb6e6f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267701
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37437}
2022-07-05 10:23:53 +00:00
Niels Möller
6939f63ca1 Update old TODO comments
Bug: None
Change-Id: I96850df6cfa19303043108a59ef60d7b686ec747
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267661
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37436}
2022-07-05 09:59:33 +00:00
Niels Möller
c8152fe4a8 Update/delete old TODOs
Bug: webrtc:10198
Change-Id: I226768c2a6bd97ffcd0638e5bc6a1c286b71815f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267704
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37435}
2022-07-05 09:44:53 +00:00
Niels Möller
fb9fbdf395 Delete unused UlpfecReceiver::ProcessReceivedFec return value
Bug: webrtc:10198
Change-Id: Ibb85f1b9094d09dabe677ccbc11e00f3a3590c50
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267705
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37434}
2022-07-05 09:40:53 +00:00
Niels Möller
22a6253d43 Make PeerConnectionInterface::SetConfiguration pure virtual
Bug: webrtc:10198
Change-Id: Ifc0dac72410b4f928e8e8aa2f2bc593005f39f87
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267702
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37433}
2022-07-05 09:21:03 +00:00
Niels Möller
b5b159d98c Update old TODO comments
Bug: None
Change-Id: I531ed648fe3d1f0dd1202f53c59ed023aed1ea7c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267664
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37432}
2022-07-05 09:09:44 +00:00
philipel
27b35a7882 Remove KeyFrameRequestSender argument from RtpVideoStreamReceiver2.
Bug: webrtc:14249
Change-Id: Ia65c0681989725257595a2a8b4336c55967d4cec
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267666
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37431}
2022-07-05 08:41:45 +00:00
Niels Möller
865e45d14e Add default values for SimulcastStream members
The default values are zero, for consistency with the memset of VideoCodec. Except for numberOfTemporalLayers; This cl sets
numberOfTemporalLayers to 1 by default. The intention is to be able to
delete exlpicit setting of .numberOfTemporalLayers = 1 in downstream
code, to ease replacing it with a scalability mode.

Bug: webrtc:11607
Change-Id: I9de442f1893d474ea360f9b33364a00627f6c3be
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267662
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37430}
2022-07-05 08:37:43 +00:00
Danil Chapovalov
56257afe10 Cleanup ReceiveSideCongestionController: remove inner wrapper helper
Bug: None
Change-Id: Iff388a56176d90e300e0c12b34414ee21fa26bc8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267406
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37429}
2022-07-05 08:28:55 +00:00
chromium-webrtc-autoroll
9927cb752f Roll chromium_revision efe4047c2d..89179a0330 (1020566:1020743)
Change log: efe4047c2d..89179a0330
Full diff: efe4047c2d..89179a0330

Changed dependencies
* src/base: 6875905167..dcc9e0f0ad
* src/build: 919e8a4290..9ea9d4931d
* src/buildtools/linux64: git_revision:ecaaf4b9e58a312a1610a37999eeccf58f73e264..git_revision:03ce92df5f9875bd9929b564be4b612713569aa9
* src/buildtools/mac: git_revision:ecaaf4b9e58a312a1610a37999eeccf58f73e264..git_revision:03ce92df5f9875bd9929b564be4b612713569aa9
* src/buildtools/win: git_revision:ecaaf4b9e58a312a1610a37999eeccf58f73e264..git_revision:03ce92df5f9875bd9929b564be4b612713569aa9
* src/ios: cd8a70b5e0..656c312427
* src/testing: cfb7d3bf6a..61e1b984d1
* src/third_party: 9545dcb1bd..536cd52d78
* src/third_party/androidx: 4gPri5A_WLHmRIG0GHdvmd3LeWiNvBj1i5IP7kEXAgsC..LQ9vdgkVWAv1399Rmm15OrPsglaFUcAF8fkDjzH06o4C
* src/third_party/perfetto: dd682e48aa..80dd4d929a
* src/third_party/r8: iMLEt10uXASDfG2AlATR1fO8xYhBoF24nQvDDXLY6Q8C..YYmB-DSqgEMUFtrSQw6plpnZygVruQmxrc3Qqeac8ZEC
* src/tools: 53e227512d..ddde2729cd
DEPS diff: efe4047c2d..89179a0330/DEPS

No update to Clang.

BUG=None

Change-Id: I05ebcddf2acc6b8ff522638d252525d041003221
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267744
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@{#37428}
2022-07-05 08:14:34 +00:00
Niels Möller
d07186c31e Delete useless test fixture H264SpsParserTest
Bug: webrtc:10198
Change-Id: Id8386f06012703f1a4292e4af3c8b9ca763554dd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267703
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37427}
2022-07-05 08:10:43 +00:00
Henrik Boström
f785989170 Rename StatsCollector to LegacyStatsCollector.
We should have done this a long time ago.

Let's do the same for stats_types.h in a separate CL because that file
is part of the api/ folder and needs some special care (typedefs and
temporarily include helper to avoid breaking downstream projects).

Bug: webrtc:14180
Change-Id: Id9c71ebd53dd97dd238bdf7527c36d7cf0e91f85
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267642
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37426}
2022-07-05 07:49:43 +00:00
Mirko Bonadei
58fbd1bafe Add manifest_merger to DEPS.
It was introduced by [1] and it is required to roll Chromium into
WebRTC.

[1] - https://chromium-review.googlesource.com/c/chromium/src/+/3743741

Bug: None
Change-Id: Icf795a5500c07630ebb5a8b2b700caec964b3660
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267700
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37425}
2022-07-05 07:00:13 +00:00
Henrik Boström
5023ffbb38 DCHECK that RTCStatsCollector does not block-invoke more than twice.
In the modern getStats implementation, we currently do two
block-invokes when we trigger stats collection, once for
signaling -> worker and once for signaling -> network inside, both take
place inside the "prepare" method:
RTCStatsCollector::PrepareTransceiverStatsInfosAndCallStats_s_w_n.

For comparison, the legacy stats collector currently require 4 block
invokes to operate.

Bug: webrtc:14247
Change-Id: Ie739cbcf29d87041484183b520aeba520aafcaba
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267660
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37424}
2022-07-05 06:49:22 +00:00
webrtc-version-updater
0a72a28df8 Update WebRTC code version (2022-07-05T04:05:09).
Bug: None
Change-Id: Ieece3820bf580614afaba7c63b628041d2ffd02f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267742
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@{#37423}
2022-07-05 05:30:02 +00:00
Philipp Hancke
3719a0c4e8 stats: use decoded framerate for inbound-rtp framesPerSecond
instead of the framerate received on the network. This is specified in
  https://w3c.github.io/webrtc-stats/#dom-rtcinboundrtpstreamstats-framespersecond

BUG=webrtc:13765

Change-Id: I9a0a89d29de49ac5257254deae9b7e5212e09363
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267409
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
Cr-Commit-Position: refs/heads/main@{#37422}
2022-07-05 04:59:32 +00:00
Erik Språng
f82e8fa911 Remove WebRTC-Bwe-AlrLimitedBackoff field trial.
This trial has been unused for some time, time to clean it up.

Bug: webrtc:10144
Change-Id: I2b1bd9ff0335efdc07f47a361878915f1be383a7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267410
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37421}
2022-07-04 16:29:42 +00:00
chromium-webrtc-autoroll
591b63d78d Roll chromium_revision 52216a4d5d..efe4047c2d (1020464:1020566)
Change log: 52216a4d5d..efe4047c2d
Full diff: 52216a4d5d..efe4047c2d

Changed dependencies
* src/base: f3aee6d2d0..6875905167
* src/ios: 15cc36c6db..cd8a70b5e0
* src/testing: 1399af12a1..cfb7d3bf6a
* src/third_party: 9ed06f15ca..9545dcb1bd
* src/third_party/perfetto: d86457ab53..dd682e48aa
* src/tools: 272dc0e4ed..53e227512d
DEPS diff: 52216a4d5d..efe4047c2d/DEPS

No update to Clang.

BUG=None

Change-Id: Ie71e4616c4e71d6f173c4f98dab0158bad7b814d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267571
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@{#37420}
2022-07-04 14:19:23 +00:00
Victor Boivie
4f15246683 dcsctp: Support lifecycle events in send queue
The send queue is responsible for generating lifecycle events for all
messages that are still in the queue. Because, if they are still in the
queue, that means that the last fragment of the message hasn't been sent
yet (because then it would have been in the retransmission queue
instead). And if the last fragment hasn't been sent, the send queue is
responsible for generating the
`OnLifecycleMessageExpired(/*maybe_sent=*/false)` event.

Bug: webrtc:5696
Change-Id: Icd5956d6aa0f392cae54f2a05bd20728d9f7f0a6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/264144
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37419}
2022-07-04 14:06:32 +00:00
philipel
d44badf409 Always include the actual decoder implementation when RTCVideoDecoderAV1 is used.
Bug: webrtc:13573, b/236814111
Change-Id: I053fcec3d85fdc9f8d3b72af1735b4091ec5f7c6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267620
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37418}
2022-07-04 12:27:02 +00:00
Harald Alvestrand
1c5808145e Ignore RID that appears without an a=simulcast entry
RID is defined for multiple usages in RFC 8851, but we only support
usage with a=simulcast as specified in RFC 8853.

Bug: chromium:1341043
Change-Id: Ie72074c5b394bdc41865938a86ec9c7629e1f5e0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267628
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37417}
2022-07-04 11:04:12 +00:00
Danil Chapovalov
0fd2ed516b Delete ProcessThread and related Module interface
Bug: webrtc:7219
Change-Id: Id71430a24b21e591494557cf54419d2bc8b3f8c6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267400
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37416}
2022-07-04 10:20:35 +00:00
Sylvain Defresne
a5f267d5ac [ios] Remove the support for bitcode
According to Xcode 14 documentation [1]:

  > Xcode no longer builds bitcode by default and generates a warning
  > message if a project explicitly enables bitcode: “Building with
  > bitcode is deprecated. Please update your project and/or target
  > settings to disable bitcode.” The capability to build with bitcode
  > will be removed in a future Xcode release. IPAs that contain bitcode
  > will have the bitcode stripped before being submitted to the App
  > Store. Debug symbols for past bitcode submissions remain available
  > for download. (86118779)

[1]: https://developer.apple.com/documentation/Xcode-Release-Notes/xcode-14-release-notes

Bug: webrtc:14237
Change-Id: I39fb618409e1978f8e7b42aa71208e00ed69d85f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267407
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/main@{#37415}
2022-07-04 09:01:52 +00:00
Niels Möller
67d23043f3 Fix config of number of temporal layers
Needed to produce correct VideoLayersAllocation extension for
scalability mode L1T2. The value in the `spatialLayers` array
is used on this line:
https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/video/video_stream_encoder.cc;drc=c374d11fac252535ccba15975568b1f6552c117e;l=320

Bug: webrtc:11607
Change-Id: I3bcfe738627e0af6f203a9b0f6e5323492e68987
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267621
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37414}
2022-07-04 08:59:02 +00:00
webrtc-version-updater
47a4584a7c Update WebRTC code version (2022-07-04T04:01:24).
Bug: None
Change-Id: Ib407b5a833fffbdf26e1cbffe4cd3d695f576ec1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267566
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@{#37413}
2022-07-04 05:38:52 +00:00
chromium-webrtc-autoroll
aa21f1ee03 Roll chromium_revision a941a7d059..52216a4d5d (1020361:1020464)
Change log: a941a7d059..52216a4d5d
Full diff: a941a7d059..52216a4d5d

Changed dependencies
* src/ios: 20a8ce943b..15cc36c6db
* src/testing: 24f1a29f4e..1399af12a1
* src/third_party: 85406d6d9c..9ed06f15ca
* src/third_party/androidx: hIxw66nyAM74HK6z6GErDelxqqlhFqYsf6MI0X8BRfsC..4gPri5A_WLHmRIG0GHdvmd3LeWiNvBj1i5IP7kEXAgsC
* src/third_party/lss: https://chromium.googlesource.com/linux-syscall-support.git/+log/1d387f43f3..880985fe92
* src/tools: 29f31bffb2..272dc0e4ed
DEPS diff: a941a7d059..52216a4d5d/DEPS

No update to Clang.

BUG=None

Change-Id: I7e257f3c40345979522d08160454ec6ee8318bca
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267564
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@{#37412}
2022-07-04 00:32:02 +00:00
Byoungchan Lee
c931f70896 network_tester: Remove usage of rtc::Thread::socketserver() and cleanup
Instead of creating a TaskQueue from packet_sender, create a rtc::Thread
in test_controller so that test_controller instantiates a SocketServer,
eliminating the use of rtc::Thread::socketserver().
Also did various cleanups, such as adding threading annotations, and
ensuring that all network operations are done in dedicated threads.

Bug: webrtc:13145
Test: Unittest, and manually verified using Android clients and Linux servers
Change-Id: I05ebe5e29bd80f14a193c9ee8b0bf63a1b6b94d7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/263321
Commit-Queue: Daniel.l Lee <daniel.l@hpcnt.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37411}
2022-07-03 08:44:52 +00:00
webrtc-version-updater
c3f511301b Update WebRTC code version (2022-07-03T04:06:15).
Bug: None
Change-Id: Ibca42a91ef3ed2b53c0a88c71a01c376f38e8d60
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267482
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@{#37410}
2022-07-03 05:41:51 +00:00
chromium-webrtc-autoroll
0a28a143e8 Roll chromium_revision b5895b16b1..a941a7d059 (1020162:1020361)
Change log: b5895b16b1..a941a7d059
Full diff: b5895b16b1..a941a7d059

Changed dependencies
* src/base: ba94246c92..f3aee6d2d0
* src/build: 473484fe92..919e8a4290
* src/ios: e87365a15a..20a8ce943b
* src/testing: b97d5810aa..24f1a29f4e
* src/third_party: 227535f25a..85406d6d9c
* src/third_party/androidx: qYbZhGFI6Byx-h1-gMAwav_sOAyRgupup2LcOewkUwYC..hIxw66nyAM74HK6z6GErDelxqqlhFqYsf6MI0X8BRfsC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/0f40847086..6f2de7bf2d
* src/third_party/depot_tools: 9af90cb59e..78c53d11a0
* src/third_party/perfetto: 63cdebc57f..d86457ab53
* src/tools: efc278b7d5..29f31bffb2
DEPS diff: b5895b16b1..a941a7d059/DEPS

No update to Clang.

BUG=None

Change-Id: Iabd67c76b95db889108f1ebb9b8f59d262584571
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267435
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@{#37409}
2022-07-02 10:30:10 +00:00
Mirko Bonadei
dd32562f24 Revert "Wait for frames to arrive in WgcCapturer instead of returning nothing."
This reverts commit 93bb305149.

Reason for revert: It breaks a test while rolling into Chromium,
see https://webrtc-review.googlesource.com/c/src/+/261780/21#message-4a96e33bfb475f19a618be82bbe72951b23085ef for details.

Original change's description:
> Wait for frames to arrive in WgcCapturer instead of returning nothing.
>
> We're seeing a high instance of "first capture failed" in Chromium when
> using WGC. We can reduce this by waiting for frames to arrive if there
> are none in the frame pool instead of returning a temporary error.
>
> I've set the maximum time to wait for a frame to 50ms. If no frame
> arrives before 50ms has elapsed, we will return a temporary error.
> Added a new test, FirstCaptureSucceeds, to verify that this is working
> as expected.
>
> As part of this I updated the name of the `kCreateFreeThreadedFailed`
> enum value to `kCreateFramePoolFailed`. The value remains the same
> since they both report failures in frame pool creation.
>
> I also increased `kNumBuffers` from 1 to 2, so that the frame pool can
> store two frames. This should prevent us from having to wait on the
> event as frequently. This will increase the latency between capture
> and display, however. High frame rate applications should not be
> noticeably affected.
>
> Additionally, we uncovered a bug in the OS that prevents window capture
> when there are displays attached, but none of them are active. Added
> a new check to `IsWgcSupported` to cover this scenario.
>
> Finally, some issues with other WGC tests blocked moving the TryBots
> to a newer version of Windows. This CL fixes those issues and updates
> the TryBot configuration.
>
> bug: chromium:1314868
> Change-Id: Id9c4d5ee98621e682ef04864c3848d50e761cdb7
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261780
> Reviewed-by: Alexander Cooper <alcooper@chromium.org>
> Reviewed-by: Jeremy Leconte <jleconte@webrtc.org>
> Commit-Queue: Austin Orion <auorion@microsoft.com>
> Reviewed-by: Jeremy Leconte <jleconte@google.com>
> Cr-Commit-Position: refs/heads/main@{#37404}

Change-Id: If237df4826fe20b6fe2ca4b57253623321bf33c5
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267460
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37408}
2022-07-02 07:41:21 +00:00
webrtc-version-updater
a05e955d17 Update WebRTC code version (2022-07-02T04:10:33).
Bug: None
Change-Id: I049edac35ee7f19b527e69210b75716c2d0caf67
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267432
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@{#37407}
2022-07-02 05:40:50 +00:00
Erik Språng
48cc54e4ce Remove code for unused field trial WebRTC-BweCappedProbing
Bug: None
Change-Id: I6799794659dce52f0d9f98dc1b5c63e0806d152d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267403
Auto-Submit: Erik Språng <sprang@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37406}
2022-07-01 19:11:15 +00:00
chromium-webrtc-autoroll
2cbf35ffc4 Roll chromium_revision bac0ff1a2f..b5895b16b1 (1020023:1020162)
Change log: bac0ff1a2f..b5895b16b1
Full diff: bac0ff1a2f..b5895b16b1

Changed dependencies
* src/base: 5650bc6a10..ba94246c92
* src/build: b09cdd74ca..473484fe92
* src/buildtools/clang_format/script: e435ad79c1..8b525d2747
* src/buildtools/linux64: git_revision:29accf5ac2eadfc53e687081583b7bc1592a8839..git_revision:ecaaf4b9e58a312a1610a37999eeccf58f73e264
* src/buildtools/mac: git_revision:29accf5ac2eadfc53e687081583b7bc1592a8839..git_revision:ecaaf4b9e58a312a1610a37999eeccf58f73e264
* src/buildtools/win: git_revision:29accf5ac2eadfc53e687081583b7bc1592a8839..git_revision:ecaaf4b9e58a312a1610a37999eeccf58f73e264
* src/ios: 90479fbd3f..e87365a15a
* src/testing: cc7d6973e1..b97d5810aa
* src/third_party: 38968a908c..227535f25a
* src/third_party/androidx: lYZhX1u-VWgsLITQXwIxYzbrN3URNzSwPTP2iuDhPBQC..qYbZhGFI6Byx-h1-gMAwav_sOAyRgupup2LcOewkUwYC
* src/third_party/freetype/src: 2db58e061e..bec4ef415e
* src/third_party/fuchsia-sdk/sdk: version:8.20220701.0.1..version:8.20220701.2.1
* src/third_party/perfetto: f413bdf835..63cdebc57f
* src/tools: 0b0dd91d7b..efc278b7d5
DEPS diff: bac0ff1a2f..b5895b16b1/DEPS

No update to Clang.

BUG=None

Change-Id: I8c1662f24d95d6af4ceb004e69df7d804b84b1d9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267441
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@{#37405}
2022-07-01 18:35:40 +00:00
Austin Orion
93bb305149 Wait for frames to arrive in WgcCapturer instead of returning nothing.
We're seeing a high instance of "first capture failed" in Chromium when
using WGC. We can reduce this by waiting for frames to arrive if there
are none in the frame pool instead of returning a temporary error.

I've set the maximum time to wait for a frame to 50ms. If no frame
arrives before 50ms has elapsed, we will return a temporary error.
Added a new test, FirstCaptureSucceeds, to verify that this is working
as expected.

As part of this I updated the name of the `kCreateFreeThreadedFailed`
enum value to `kCreateFramePoolFailed`. The value remains the same
since they both report failures in frame pool creation.

I also increased `kNumBuffers` from 1 to 2, so that the frame pool can
store two frames. This should prevent us from having to wait on the
event as frequently. This will increase the latency between capture
and display, however. High frame rate applications should not be
noticeably affected.

Additionally, we uncovered a bug in the OS that prevents window capture
when there are displays attached, but none of them are active. Added
a new check to `IsWgcSupported` to cover this scenario.

Finally, some issues with other WGC tests blocked moving the TryBots
to a newer version of Windows. This CL fixes those issues and updates
the TryBot configuration.

bug: chromium:1314868
Change-Id: Id9c4d5ee98621e682ef04864c3848d50e761cdb7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261780
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Reviewed-by: Jeremy Leconte <jleconte@webrtc.org>
Commit-Queue: Austin Orion <auorion@microsoft.com>
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#37404}
2022-07-01 17:42:20 +00:00
Victor Boivie
b5754b00a6 dcsctp: Refactor OutstandingData
Minor refactoring of the API, to put optional arguments last. Also
changed internal structures to reflect that order, for consistency.

Also reduced size of Item from 88 to 72 bytes, by packing fields better.

Bug: webrtc:5696
Change-Id: I1b9d50831a8e9a358224682d06a782a3269b8416
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/264123
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37403}
2022-07-01 16:44:40 +00:00
Jakob Ivarsson
c50e423d3b Fix possible integer overflow.
Bug: chromium:1340143
Change-Id: Ia874c90b53e5c527d163a0fe566743713a55ca6e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/206986
Commit-Queue: Jakob Ivarsson‎ <jakobi@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37402}
2022-07-01 16:26:10 +00:00
Victor Boivie
00c614272a dcsctp: Refactor send queue (2/2)
Let the send queue generate callbacks directly.

No functional change - pure refactoring.

Bug: webrtc:5696
Change-Id: Ic1e8ccba9612c5955e599c5d8257a5fa6980f666
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/264143
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37401}
2022-07-01 15:51:44 +00:00
Erik Språng
609aef3149 Remove WebRTC-ExponentialNackBackoff field trial from NackRequester.
This flag has gone unused for a long time, time to clean it up.
While we're here, convert NackRequester to use unit types.

Bug: webrtc:8624
Change-Id: I1f314f9b5b6771d4f9c351a7a9a887130b86907c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267408
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37400}
2022-07-01 15:32:44 +00:00
Mirko Bonadei
68fef2f3e9 Update protobuf-py2_py3 wheel.
This is required after updating protobuf to 3.20.0 in
https://chromium-review.googlesource.com/c/chromium/src/+/3733827.

Bug: b/237760527
Change-Id: I9c4df89b7116dfa934a2c313aaad9c9b88c36787
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267405
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#37399}
2022-07-01 15:17:36 +00:00
Victor Boivie
8967672f6d dcsctp: Refactor send queue (1/2)
Let the OutgoingStream reference the parent instead of passing
references to individual items it needs, as follow-up CLs will add even
more items.

No functional change - pure refactoring.

Bug: webrtc:5696
Change-Id: I914e590c0d90e898d7d230a16170cf4faff2338c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/264142
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37398}
2022-07-01 13:53:14 +00:00
Danil Chapovalov
74680c0234 Cleanup RemoteBitrateEstimate::LatestEstimate function
Return the bitrate estimate as DataRate type
Remove list of affected ssrcs as unused

Bug: None
Change-Id: Ie31dce591d861624736d834194f90eb6c93f70f6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267280
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37397}
2022-07-01 13:05:05 +00:00
Victor Boivie
5e21262a44 dcsctp: Add API for lifecycle events
This CL adds the API to enable message lifecycle events to be generated.
Those can in turn be used to generate metrics, e.g. latency metrics
tracking the time to send a message, the time until it's acknowledged,
and metrics tracking how often messages are expired.

This will be used to validate that message interleaving really improves
latency for high priority data channels.

The actual implementation of the API will be provided in follow-up CLs.

Bug: webrtc:5696
Change-Id: Ic06f8244d1c79a336975e35479130521dff17519
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/264141
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Victor Boivie <boivie@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Victor Boivie <boivie@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37396}
2022-07-01 10:59:25 +00:00
Byoungchan Lee
3e4e05d28b Use generate_stubs without //base dependency
For this I added a header called no_cfi_icall.h and use it.
Also, some files use the gio header, but if the //base dependency is
not used, compilation errors occur. So I added an explicit dependency
on gio.

Bug: webrtc:13662
Change-Id: If732ede202dd413be6702bf06bf024cd203fdae2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/267340
Commit-Queue: Daniel.L (Byoungchan) Lee <daniel.l@hpcnt.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37395}
2022-07-01 10:50:54 +00:00