Commit Graph

36446 Commits

Author SHA1 Message Date
e0e91a624a AlwaysValidPointer - forwarding constructor and tests
Bug: webrtc:10335
Change-Id: I1305ccf8d4f1b25f89fef7d26b090741d5f57f7e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256106
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36264}
2022-03-19 00:31:37 +00:00
0627cb3920 shared_screencast_stream: Set rectangle on the frame
The diff capturer wrapper doesn't work if the frame doesn't have any
rectangle and a static image is observed while chromoting. This change
adds a rectangle to the frame object, as done by other capturers, and
this in turn ensures that the wrapper that calulcates diffs from one
frame to the next can do its job.

Bug: chromium:1291247
Change-Id: I5bf1981f34b3a88ad4d82a081fed1ce210f71ed0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251205
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Commit-Queue: Salman Malik <salmanmalik@google.com>
Cr-Commit-Position: refs/heads/main@{#36263}
2022-03-18 22:08:46 +00:00
ea021333cb Roll chromium_revision 176855dcc8..f55241d014 (982693:982852)
Change log: 176855dcc8..f55241d014
Full diff: 176855dcc8..f55241d014

Changed dependencies
* src/base: ad8d9a01a5..bee216d673
* src/build: 0e41ee9abf..b42b203381
* src/ios: 332d8dee2d..043ae4b9e4
* src/testing: 4c179bb28c..c4769e51cb
* src/third_party: fc55284d0c..7835795588
* src/third_party/depot_tools: 76979dae56..bc93924b3b
* src/third_party/icu: ea8c08d878..a9359a84a3
* src/third_party/perfetto: 9b8eaa21f1..6dadd2c3b2
* src/tools: 4b90fc63cc..3c7dc0d25c
DEPS diff: 176855dcc8..f55241d014/DEPS

No update to Clang.

BUG=None

Change-Id: Iac3a522d3dd92121d664b103a9ea6d674bfbe944
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256120
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@{#36262}
2022-03-18 20:44:46 +00:00
0d5ce62d01 Make RtpTransceiver not inherit from RefCountedObject.
Also update API proxy Create() factory functions to accept the inner
reference counted object via scoped_refptr instead of a raw pointer.
This is to avoid accidentally creating and deleting an object when
passing an inner object to a proxy class.

Consider something like:
  auto proxy = MyProxy::Create(
      signaling_thread(), make_ref_counted<Foo>());

Bug: webrtc:13464, webrtc:12701
Change-Id: I55ccfff43bbc164a5e909b2c9020e306ebb09075
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256010
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36261}
2022-03-18 16:17:24 +00:00
7bd06dda3c Roll chromium_revision 7fc7e127cd..176855dcc8 (982354:982693)
Change log: 7fc7e127cd..176855dcc8
Full diff: 7fc7e127cd..176855dcc8

Changed dependencies
* src/base: 68127bb5f9..ad8d9a01a5
* src/build: 3accbb4b4d..0e41ee9abf
* src/buildtools: f0259e64a3..d8c375426d
* src/ios: dbde37f9b8..332d8dee2d
* src/testing: cb66ad8363..4c179bb28c
* src/third_party: a3813e6a9a..fc55284d0c
* src/third_party/android_build_tools/aapt2: yQIf5Ev_-q9u6Pr_a0APd1dHcImJSmotVADw4Pj151QC..wicn5Ce1ay6ivbZ1GNFF0gRSS3NYv_7hJTPtVga3O-QC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4cc26bd5a0..389f33bb40
* src/third_party/dav1d/libdav1d: b1a5189c9d..56e7ffc0db
* src/third_party/depot_tools: 950a6b4225..76979dae56
* src/third_party/freetype/src: 1e2eb65048..53dfdcd819
* src/third_party/icu: 8a5b728e4f..ea8c08d878
* src/third_party/perfetto: a2dabf80a3..9b8eaa21f1
* src/tools: 91235624de..4b90fc63cc
DEPS diff: 7fc7e127cd..176855dcc8/DEPS

No update to Clang.

BUG=None

Change-Id: Icf50126e0a84cdd676f26d76c1987f5f49e7e369
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256050
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@{#36260}
2022-03-18 15:35:28 +00:00
66eb789b41 Add class for pointer or owned object.
To be used as part of field trial conversion effort.

Bug: webrtc:10335
Change-Id: Iaeff520d5a83331926ead945c9e414716e61cac8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256013
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36259}
2022-03-18 15:24:57 +00:00
3c60f2d31c Change the default value of bandwidth_backoff_factor to 1.0.
The default backoff behavior of loss based 2.0 should remain the same.

Bug: webrtc:12707
Change-Id: Ica7b8da26c11317a6cb7cd9272c07d03d066f30b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256005
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Diep Bui <diepbp@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36258}
2022-03-18 15:18:38 +00:00
be74b8058b Fix spelling of receiver and transceiver.
Bug: None
Change-Id: I439e217d67283b182833e48da15af9ae367ac14e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256015
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36257}
2022-03-18 14:54:10 +00:00
76dd735a14 desktop_capturer: Extract helpers from screencast portal
Extract helper methods from screencast portal that can be
reused for remote desktop portal client.

Bug: chromium:1291247
Change-Id: I66d09c75f0c34d81c7ceff8998720fbbd1902ac8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/249860
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Commit-Queue: Salman Malik <salmanmalik@google.com>
Cr-Commit-Position: refs/heads/main@{#36256}
2022-03-18 14:53:07 +00:00
29ad53e466 Remove 'owned proxy' macros from proxy.h.
This seems to be unused and also differs from other proxy
implementations in that proxies are generally for reference counted
interfaces whereas the 'owned proxy' macros are not.

Bug: webrtc:13464, webrtc:12701
Change-Id: I2fc2c2f186bccab8388928d41610112c3b5f88ac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256018
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36255}
2022-03-18 14:48:39 +00:00
ef6b028c92 Implement recieving NACK in RtcpTranceiver
Bug: webrtc:8239
Change-Id: I41d6c3252bbffeab66ded7ed294f82134351541a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/254800
Reviewed-by: Emil Lundmark <lndmrk@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36254}
2022-03-18 14:46:18 +00:00
16af378884 Remove deprecated TaskQueuePacedSender constructor.
Bug: webrtc:13417
Change-Id: I1486aedf2069d70c515fad97c665c7a5a94b6c38
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256017
Auto-Submit: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36253}
2022-03-18 14:36:57 +00:00
4fc9bd9f69 Add a new script to upload perf tests.
Also add a script to do the bridge between a python 2 and a python 3 interpreter.
This should be removed when the merge scripts will be using python 3 (https://crbug.com/webrtc/13835).

Note that webrtc_dashboard_upload.py will be removed when the new script is stabilized.

Bug: webrtc:13806
Change-Id: I806fa11f417ef37674bdaeb5126c71570e3697d7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255560
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Christoffer Jansson <jansson@google.com>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Christoffer Jansson <jansson@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#36252}
2022-03-18 13:30:59 +00:00
e9a6ada2e3 Fix add some eng prod owners to PRESUBMIT.py.
Bug: webrtc:13836
Change-Id: I220fcef0412fa477627e8632b49e05a2b130eb53
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256007
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#36251}
2022-03-18 13:19:07 +00:00
9b88e299ba Skip NetworkTest.TestMultipleIPMergeNetworkList.
Bug: webrtc:13846
Change-Id: I6098ef931e355c1d58b661962baab4ccb28916a3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256014
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36250}
2022-03-18 13:05:00 +00:00
b2a5785e79 Don't assume strict order of IPs
Bug: None
Change-Id: I2005a4472b8a14e03a273f430fc6986f6ec0a4bd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256012
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36249}
2022-03-18 12:19:28 +00:00
865d94e452 Revert "Apply lower bound of delay based estimate in AimdRateControl::ClampBitrate"
This reverts commit e66e6a845b50f212ebb60234446cfc9db897879c.

Reason for revert: 
May cause BWE to increase on delay increase if link capacity estimate is too high.

Original change's description:
> Apply lower bound of delay based estimate in AimdRateControl::ClampBitrate
>
> This move the functionality of applying the lower bound of a network estimate to AimdRateControl::ClampBitrate instead of ChangeBitrate.
> The purpose is to be able to also clamp probe estimates set by AimdRateControl::SetEstimate as well.
>
> Bug: none
> Change-Id: I6a4d64d2e98bb99da06010e2edaf20dc42880e37
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255823
> Reviewed-by: Per Kjellander <perkj@webrtc.org>
> Commit-Queue: Per Kjellander <perkj@webrtc.org>
> Reviewed-by: Diep Bui <diepbp@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#36219}

Bug: none
Change-Id: I8c65b1461160dbf3d35e50ef2cc6f9bc305c2b15
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256011
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Diep Bui <diepbp@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36248}
2022-03-18 12:06:47 +00:00
bb986cbddb APM audioproc_f: adding --override_key_pressed
Add a flag to override the key pressed state when simulating APM.

The current behavior changes as follows:
- Wav files simulation: instead of simulating continuous key press
  events only if the transient suppressor (TS) sub-module is active,
  allow to simulate the events regardless of whether TS is used;
  the default key pressed state is used if the command line flag is
  unspecified, otherwise it is overridden (either always false or
  always true)
- AEC dump simulation: instead of simulating continuous key press
  events when `--ts 2` is specified, allow to simulate the events
  regardless of whether TS is used; the state recorded in the AEC
  dump is used if the command line flag is unspecified, otherwise
  it is overridden (either always false or always true)
- The `--ts 2` option (continuous key events) is now equivalent to
  `--ts 1`.

Bug: webrtc:13663
Change-Id: I5ebe96283db73ee235ec2b2795d91d4e241a3527
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256003
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36247}
2022-03-18 10:51:37 +00:00
017a606836 Avoid sending empty receiver reports with RTCPSender
in reduced size mode, i.e. when rtcp-rsize sdp attribute is negotiated

Bug: webrtc:13833
Change-Id: I55fa5248d3f66dc2240d7a6fbbb399319f1a2e03
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256004
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36246}
2022-03-18 10:45:27 +00:00
66ddd5ab6d rtc_pc_base breakup: Make a target visible to Chrome
Bug: webrtc:13805
Change-Id: I129bf3ecb69bd7dee363f16f2b6ba39cf9d06bac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256008
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36245}
2022-03-18 10:16:37 +00:00
3f82d02742 mb: decode process output for Python3
CL from chromium's mb:
https://chromium-review.googlesource.com/c/chromium/src/+/3321055

Bug: webrtc:13839
Change-Id: Ie90eceaff8c824aa23bc27149dc88b9ac4cd1936
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256006
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#36244}
2022-03-18 07:53:01 +00:00
979706bd3b Add some eng prod owners to PRESUBMIT.py.
Bug: webrtc:13836
Change-Id: I6c8dd171aad03609802a4974a0b06437359673ec
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256002
Reviewed-by: Christoffer Jansson <jansson@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#36243}
2022-03-18 06:22:17 +00:00
2464612bbe Update WebRTC code version (2022-03-18T04:05:46).
Bug: None
Change-Id: Iae0332ef971075f07c88f53c305d1789f1752109
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256045
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@{#36242}
2022-03-18 04:55:07 +00:00
3e6c601e24 Roll chromium_revision 3a3c61276c..7fc7e127cd (982148:982354)
Change log: 3a3c61276c..7fc7e127cd
Full diff: 3a3c61276c..7fc7e127cd

Changed dependencies
* src/base: dd8c44c8f4..68127bb5f9
* src/build: 2360da1f6c..3accbb4b4d
* src/buildtools: 90ff2bf855..f0259e64a3
* src/ios: 78e4405552..dbde37f9b8
* src/testing: d5dc373edb..cb66ad8363
* src/third_party: e8c5102e5d..a3813e6a9a
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/8ff5321b11..4cc26bd5a0
* src/third_party/perfetto: deac2d35a1..a2dabf80a3
* src/tools: da5dab661c..91235624de
DEPS diff: 3a3c61276c..7fc7e127cd/DEPS

No update to Clang.

BUG=None

Change-Id: Id2e745bab95ed44536a9a25cf811ef79e9bb43eb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256042
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@{#36241}
2022-03-17 20:34:36 +00:00
c2cd814cdd PipeWire capturer: check existence of cursor metadata
Check whether there are any cursor metadata before we try to validate
and use them, otherwise we might crash on this.

Bug: webrtc:13429
Change-Id: I365da59a189b6b974cebafc94fec49d5b942efae
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255601
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Commit-Queue: Alexander Cooper <alcooper@chromium.org>
Cr-Commit-Position: refs/heads/main@{#36240}
2022-03-17 18:14:26 +00:00
7fa9057a05 Adopt absl::string_view in function parameters under rtc_base/
This is part of a large-scale effort to increase adoption of
absl::string_view across the WebRTC code base.

This CL converts the majority of "const std::string&"s in function
parameters under rtc_base/ to absl::string_view.

Bug: webrtc:13579
Change-Id: I2b1e3776aa42326aa405f76bb324a2d233b21dca
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/254081
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Xavier Lepaul‎ <xalep@webrtc.org>
Reviewed-by: Anders Lilienthal <andersc@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Ali Tofigh <alito@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36239}
2022-03-17 15:39:26 +00:00
1a08096998 Clean up the TaskQueuePacedSender constructor.
Removes the unused event log pointer and the default arguments.

Bug: webrtc:13417
Change-Id: I90341528cdfd7a5c102addaa4e7c83e875525386
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255562
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36238}
2022-03-17 15:23:46 +00:00
8e1ae8cf57 Break up rtc_pc_base: Second round, yellow and orange
Bug: webrtc:13805
Change-Id: Ic3560673abc8b27507ebac550576814776688138
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256001
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36237}
2022-03-17 14:06:37 +00:00
4ceea65848 Integrate trendline estimator into loss based bwe v2.
Bug: webrtc:12707
Change-Id: I510d3799c14599344d1714178e42b29e7c0c06d7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/254380
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Diep Bui <diepbp@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36236}
2022-03-17 13:07:44 +00:00
2c9bba7741 Roll chromium_revision a79897884e..3a3c61276c (982032:982148)
Change log: a79897884e..3a3c61276c
Full diff: a79897884e..3a3c61276c

Changed dependencies
* src/base: bfedbc1f92..dd8c44c8f4
* src/build: 344be2f95c..2360da1f6c
* src/ios: ae02fcbee0..78e4405552
* src/testing: 520807d3ec..d5dc373edb
* src/third_party: 2a0c661892..e8c5102e5d
* src/third_party/turbine: VhmfIPuSDHHeilnA7WC0MhR9ShZNF25tA0Te4RYIZG8C..Go9J3Mz5ankZAgxmn5GxeXKdEDV73zaZp2ojNfGC1RQC
* src/tools: d23956cfef..da5dab661c
DEPS diff: a79897884e..3a3c61276c/DEPS

No update to Clang.

BUG=None

Change-Id: Ia8ef6341898c319ac74ea3fb2e8caf8a7aa918b1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255907
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@{#36235}
2022-03-17 12:54:16 +00:00
658b88a48e Delete rtc::string_trim. Replaced with absl::StripAsciiWhitespace.
Bug: webrtc:6424, webrtc:13579
Change-Id: I222e1bfb62d5f1f1a2c74e5fce1038e04e7bebfb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255824
Reviewed-by: Ali Tofigh <alito@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36234}
2022-03-17 12:53:14 +00:00
c367346a75 Apply include reduction to channel.h and channel_manager.h
(tools_webrtc/iwyu/apply-iwyu -r)

This breaks the circular dependency between channel_manager.h and
media_session.h

Bug: webrtc:13805
Change-Id: I34c09e752b4110988ad8e0473de5d88605b5e6fe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255961
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36233}
2022-03-17 12:13:04 +00:00
ae4fb618d7 Cleanup RtpToNtpEstimator
- Use NtpTime instead of pair of uint32_t to represent ntp time
- Increase precision estimate with NtpTime precision instead of ms precision
- Hide helper structs as private types
- Modernize interface to prefer return values over output parameters
- embed LinearRegression helper into the only user: UpdateParameters

Bug: webrtc:13757
Change-Id: I0a62a03e2869b2ae1eacaa15253accc43ba0a598
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/254780
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36232}
2022-03-17 10:26:57 +00:00
340cb5e46a WebRTC-DeprecateGlobalFieldTrialString/Enabled/ - part 8/inf
Convert p2p/.
This completes work started in https://webrtc-review.googlesource.com/c/src/+/255602

Bug: webrtc:10335
Change-Id: I39f70890be0599c8ef46ff7982d2a229e10e67ff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255827
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36231}
2022-03-17 09:08:45 +00:00
7e539921e4 rtc_pc_base breakup: Brick red targets
This is the third wave of dependencies in the rtc_pc_base breakup.

Bug: webrtc:13805
Change-Id: I79122f2f0395864d595fdffcc4dafa8ed09c560d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255960
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36230}
2022-03-17 08:28:00 +00:00
a943e730b2 WebRTC-DeprecateGlobalFieldTrialString/Enabled/ - part 7/inf
Convert audio/ and collateral (audio encoder copy red).

Bug: webrtc:10335
Change-Id: Iac54c0cfd2f62f4402f3deec35ae2725ec35b81a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255820
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36229}
2022-03-17 07:11:44 +00:00
e72f4bc524 Update WebRTC code version (2022-03-17T04:07:28).
Bug: None
Change-Id: Ib97334d7c83ea6759cc2736039db11c701a3d48a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255903
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@{#36228}
2022-03-17 05:02:05 +00:00
a21c314815 Roll chromium_revision 80e0c32917..a79897884e (981921:982032)
Change log: 80e0c32917..a79897884e
Full diff: 80e0c32917..a79897884e

Changed dependencies
* src/base: 96393bcabe..bfedbc1f92
* src/build: bea489b045..344be2f95c
* src/ios: a52b9d2541..ae02fcbee0
* src/testing: 460523b697..520807d3ec
* src/third_party: 72089995ca..2a0c661892
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/5cc627712b..8ff5321b11
* src/third_party/depot_tools: b199f54926..950a6b4225
* src/third_party/perfetto: 02e3224f3e..deac2d35a1
* src/tools: 8f7fec5404..d23956cfef
DEPS diff: 80e0c32917..a79897884e/DEPS

No update to Clang.

BUG=None

Change-Id: I598eba4fa481f889136ff5d4a8316875eb76614c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255902
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@{#36227}
2022-03-17 04:51:25 +00:00
540c09ba08 Roll chromium_revision 6a5628a6c8..80e0c32917 (981812:981921)
Change log: 6a5628a6c8..80e0c32917
Full diff: 6a5628a6c8..80e0c32917

Changed dependencies
* src/build: 0bc7d6146c..bea489b045
* src/buildtools: 113dd1badb..90ff2bf855
* src/ios: f99fb26981..a52b9d2541
* src/testing: 31cc931e68..460523b697
* src/third_party: d0c465dfcd..72089995ca
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/b3fe2c1779..5cc627712b
* src/third_party/libyuv: b4ddbaf549..3aebf69d66
* src/tools: 751bd4d6d1..8f7fec5404
DEPS diff: 6a5628a6c8..80e0c32917/DEPS

No update to Clang.

BUG=None

Change-Id: I2e75469dfc4fd13c2065164160be8ede3b76b028
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255920
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@{#36226}
2022-03-17 00:46:34 +00:00
4bac0bb2cc Break out remaining orange targets from rtc_pc_base
Bug: webrtc:13805
Change-Id: I97f000888c63209a557fbb6a428b176c2a79b5da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255561
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36225}
2022-03-16 23:35:54 +00:00
347f9b07b9 getDisplayMedia shows black window on Youtube PiP in Windows.
getDisplayMedia capture the view of the screens and windows
in the capture dialog, but the issue is that captured view
of the Youtube somehow is blank. It repros only in certain
circumstances, for example, Canary channel.
If user reinstall the Canary as fresh new, we observed that
it doesn't repro.

Cause:
We aren't sure what's cause of this one yet.

Solution:
We decided to provide fallback WGC capturer when the main
capturer (GDI) shows blank. WGC could show yellow outline
in prior Win11 OS, but yellow outline looks better than
blank.

The blank detector and fallback capturer are what screen capturer
already supported. So, the solution will follow similar
pattern in the window capturer.

Bug: webrtc:13726
Change-Id: I620c817d259d7bb5c295adab11c4444349ab1c6c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/252625
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Commit-Queue: Alexander Cooper <alcooper@chromium.org>
Cr-Commit-Position: refs/heads/main@{#36224}
2022-03-16 22:06:04 +00:00
0f5b7ebcca Roll chromium_revision 3a6fd7d38b..6a5628a6c8 (981666:981812)
Change log: 3a6fd7d38b..6a5628a6c8
Full diff: 3a6fd7d38b..6a5628a6c8

Changed dependencies
* src/base: 08d4ca7d7a..96393bcabe
* src/build: cef7fc3d51..0bc7d6146c
* src/buildtools/third_party/libc++abi/trunk: a897d0f3f8..93b8dcd57b
* src/ios: d4729beee3..f99fb26981
* src/testing: c60f74e7ac..31cc931e68
* src/third_party: c671395e43..d0c465dfcd
* src/third_party/perfetto: 86fc023993..02e3224f3e
* src/tools: 57304806ce..751bd4d6d1
DEPS diff: 3a6fd7d38b..6a5628a6c8/DEPS

No update to Clang.

BUG=None

Change-Id: Ibb7632f0ca3f2afcaac61850a6e2b828e0c60851
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255880
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@{#36223}
2022-03-16 21:03:04 +00:00
026cfa3c8b Roll chromium_revision 674598587a..3a6fd7d38b (981504:981666)
Change log: 674598587a..3a6fd7d38b
Full diff: 674598587a..3a6fd7d38b

Changed dependencies
* src/base: cff566f022..08d4ca7d7a
* src/build: 25cfbb99b6..cef7fc3d51
* src/ios: a1933158c9..d4729beee3
* src/testing: 3a3158679d..c60f74e7ac
* src/third_party: 3c07994980..c671395e43
* src/third_party/perfetto: ed54518ee4..86fc023993
* src/tools: da243b94e8..57304806ce
DEPS diff: 674598587a..3a6fd7d38b/DEPS

No update to Clang.

BUG=None

Change-Id: Ia8ea316cc4a9e36f82bf36ee5138d8b9a31eacd1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255841
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@{#36222}
2022-03-16 16:49:24 +00:00
554bb39998 Reland "Experimentally reduce TaskQueuePacedSender's delayed task precision."
This is a reland of commit 43a69b3f46059b103c35079744dc09a0e2bb2948

Original change's description:
> Experimentally reduce TaskQueuePacedSender's delayed task precision.
>
> This CL reduces the delayed task precision of non-probes in accordance
> with DD go/slacked-task-queue-paced-sender. The precision is only
> deduced if field trial "WebRTC-SlackedTaskQueuePacedSender" is enabled
> though.
>
> Bug: webrtc:13824
> Change-Id: I37e53b24e343f4f08059be08a3cda74f5484cc05
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255341
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Commit-Queue: Henrik Boström <hbos@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#36214}

Bug: webrtc:13824
Change-Id: I86cace6f4f6bf23d51c75b3d18f8d24fff0f5b74
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255826
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36221}
2022-03-16 16:14:04 +00:00
6673437775 Move ownership of congestion window state to rtp sender controller.
When congestion window is used, two different mechanisms can currently
update the outstanding data state in the pacer:
* OnPacketSent() withing the pacer itself, when a packet is sent
* UpdateOutstandingData(), when RtpTransportControllerSend either:
  a. Receives an OnPacketSent() callback (increase outstanding data)
  b. Receives transport feedback (decrease outstanding data)

This creates a lot of calls to UpdateOutstandingData(), more than one
per sent packet. Each requires locking and/or thread jumps. To avoid
that, this CL moves the congestion window state to
RtpTransportController send - and we only post a congested flag down
the the pacer when the state is changed.

The only benefit I can see is of the old way is we prevent sending
new packets immedately when the window is full, rather than in some
edge cases queue extra packets on the network task queue before the
congestion signal is received. That should be rare and benign.
I think this simplified logic, which is easier to read and more
performant, is a better tradeoff.

Bug: webrtc:13417
Change-Id: I326dd88db86dc0d6dc685c61920654ac024e57ef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255600
Auto-Submit: Erik Språng <sprang@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36220}
2022-03-16 15:30:03 +00:00
e66e6a845b Apply lower bound of delay based estimate in AimdRateControl::ClampBitrate
This move the functionality of applying the lower bound of a network estimate to AimdRateControl::ClampBitrate instead of ChangeBitrate.
The purpose is to be able to also clamp probe estimates set by AimdRateControl::SetEstimate as well.

Bug: none
Change-Id: I6a4d64d2e98bb99da06010e2edaf20dc42880e37
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255823
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Diep Bui <diepbp@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36219}
2022-03-16 14:52:43 +00:00
9524c0fa4f AgcManagerDirect: Modify clipping_predictor_evaluator_ configuration
Increase the history size of clipping_predictor_evaluator_. Use one-sample
accuracy in clipping detection for the evaluator.

Bug: webrtc:12774
Change-Id: I8c1bbfe69fe55af73ce14992e49ef7295b3ce926
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/241602
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Hanna Silen <silen@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36218}
2022-03-16 14:42:23 +00:00
4a08d5013b Revert "Experimentally reduce TaskQueuePacedSender's delayed task precision."
This reverts commit 43a69b3f46059b103c35079744dc09a0e2bb2948.

Reason for revert: Breaks downstream project.

Original change's description:
> Experimentally reduce TaskQueuePacedSender's delayed task precision.
>
> This CL reduces the delayed task precision of non-probes in accordance
> with DD go/slacked-task-queue-paced-sender. The precision is only
> deduced if field trial "WebRTC-SlackedTaskQueuePacedSender" is enabled
> though.
>
> Bug: webrtc:13824
> Change-Id: I37e53b24e343f4f08059be08a3cda74f5484cc05
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255341
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Commit-Queue: Henrik Boström <hbos@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#36214}

Bug: webrtc:13824
Change-Id: Iccdadcfaa0c490a1b9e5636cd695c5673c3c09a0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255825
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
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>
Cr-Commit-Position: refs/heads/main@{#36217}
2022-03-16 14:16:33 +00:00
6160ca53d1 New VideoEncoderFactoryTemplate.
The VideoEncoderFactoryTemplate takes encoder implementations as template arguments, making it possible to easily implement a VideoEncoderFactory only using the implementations required for the particular application. This will replace the BuiltinVideoEncoderFactory.

Change-Id: Ifb0e93d0d4491664fb7f7acf085190d8a90ddc0e
Bug: webrtc:13573
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251904
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36216}
2022-03-16 12:43:33 +00:00
7ddc7d548c WebRTC-DeprecateGlobalFieldTrialString/Enabled/ - part 6/inf
This patch just refactors creation of P2P transport channel,
pushing down the IceTransportInit object rather than decomposing
it going down.

The IceTransportInit object will in subsequent patches be
extended with a field trial container.

Reason for splitting patch into this and subsequent is
to allow changes to internal factories.

Bug: webrtc:10335
Change-Id: Icc8b6e4142744b64d134bcb2d4a56777745db62b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255602
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36215}
2022-03-16 12:11:34 +00:00