Commit graph

39010 commits

Author SHA1 Message Date
Artem Titov
6fd5f33d45 Extend TestVideoTrackSource API
Bug: b/272350185
Change-Id: Ibc53e7a9ee8f572475d86fc78de1c1ed71078910
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299140
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39678}
2023-03-25 21:35:23 +00:00
Artem Titov
86ad48cb37 Remove files from old targets
Bug: b/272350185
Change-Id: I9ea9d791ab348fcd6ff93cb291862a492411e085
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299073
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39677}
2023-03-25 15:22:14 +00:00
Tommi
335d084b3b Remove GetSctpSslRole, only use GetSctpSslRole_n
This updates DataChannelController and test classes to use
GetSctpSslRole_n instead and query the role on the network thread.

Along the way this CL makes the init config struct for when constructing
data channels, mandatory. It's now passed via const& instead of by pointer. In practice a valid pointer was always being passed.

Bug: webrtc:11547
Change-Id: I0f4bbf364969cc2dec07871c297ddbef0c175f86
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298307
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39676}
2023-03-25 11:40:35 +00:00
webrtc-version-updater
cbe5d81498 Update WebRTC code version (2023-03-25T04:01:48).
Bug: None
Change-Id: Id1a7b127c8922dc89cbe41655449fb6edf9b5e6a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299120
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@{#39675}
2023-03-25 05:37:37 +00:00
chromium-webrtc-autoroll
da1445d442 Roll chromium_revision a547c239fa..2ba757f5c3 (1121948:1122062)
Change log: a547c239fa..2ba757f5c3
Full diff: a547c239fa..2ba757f5c3

Changed dependencies
* fuchsia_vesion: version:12.20230324.2.1..version:12.20230324.3.1
* src/base: ac2d89dba7..19525d9e28
* src/build: d8cfd110e8..5836aa9735
* src/ios: f2128bda95..ab25dc2c50
* src/testing: 3c2cb3e261..11ad61e36c
* src/third_party: 01fb9fcc9e..2995137b2e
* src/third_party/depot_tools: 8422acf687..d9717259ee
* src/third_party/perfetto: 98e4886b57..1c8b4fe315
* src/tools: 8dda9d89d2..3663a286ed
DEPS diff: a547c239fa..2ba757f5c3/DEPS

No update to Clang.

BUG=None

Change-Id: I3a691df6ffc29a5f7c6e2a9ac3bc512bc305400d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299121
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@{#39674}
2023-03-25 05:17:52 +00:00
chromium-webrtc-autoroll
c5079e299b Roll chromium_revision 19d7950f67..a547c239fa (1121716:1121948)
Change log: 19d7950f67..a547c239fa
Full diff: 19d7950f67..a547c239fa

Changed dependencies
* fuchsia_vesion: version:12.20230324.0.1..version:12.20230324.2.1
* src/base: 6f798a4874..ac2d89dba7
* src/build: 1c6ab1ba1e..d8cfd110e8
* src/ios: 38a98e532c..f2128bda95
* src/testing: 4c280ee92d..3c2cb3e261
* src/third_party: 980396b1e6..01fb9fcc9e
* src/third_party/depot_tools: ec4dd35d18..8422acf687
* src/third_party/libyuv: 1a971f8cc3..464c51a035
* src/third_party/perfetto: 156b10d4c9..98e4886b57
* src/tools: cce9be7c65..8dda9d89d2
DEPS diff: 19d7950f67..a547c239fa/DEPS

No update to Clang.

BUG=None

Change-Id: I3eee4509c14bba528a24a9e28333b3d8145ed7da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299080
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@{#39673}
2023-03-24 22:45:45 +00:00
Artem Titov
a077c810a8 Extract test_video_capturer and test_video_capturer_video_track_source
Extract test_video_capturer and test_video_capturer_video_track_source
into a separate targets.

Bug: b/272350185
Change-Id: Iaeefdb58de94d3a25291bfd09c39b3277c18e18a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299060
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39672}
2023-03-24 18:38:53 +00:00
Danil Chapovalov
0e5501f0ff Cleanup OveruseDetector from tracers of old experimentation
experiment was cleaned up in
https://webrtc-review.googlesource.com/c/src/+/284922

Bug: webrtc:4711
Change-Id: I19e1ba9716a5b0375fa4c5cf8c69e6bb2b03de6b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299041
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39671}
2023-03-24 17:13:45 +00:00
chromium-webrtc-autoroll
55c7298c2b Roll chromium_revision 5a1dec78a8..19d7950f67 (1121577:1121716)
Change log: 5a1dec78a8..19d7950f67
Full diff: 5a1dec78a8..19d7950f67

Changed dependencies
* src/base: 54c5103fd7..6f798a4874
* src/build: 43d3f17c30..1c6ab1ba1e
* src/ios: 29fed00884..38a98e532c
* src/testing: 5018c6f7c4..4c280ee92d
* src/third_party: df884ce0fa..980396b1e6
* src/third_party/androidx: NiTVtksLm4vhVv9RrW0oOiw5xdUpMuEuyGmD1_YR5kkC..uDcIgBvmKDgM8Io3hzTzLYuFXFSqddnvauqq2o3vL-wC
* src/third_party/libyuv: 3f219a3501..1a971f8cc3
* src/third_party/perfetto: bfdb3fc5cc..156b10d4c9
* src/tools: 98f1f14993..cce9be7c65
DEPS diff: 5a1dec78a8..19d7950f67/DEPS

No update to Clang.

BUG=None

Change-Id: I5c252333a35259e5466c258c5477803b2425e81a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298974
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@{#39670}
2023-03-24 16:44:29 +00:00
Danil Chapovalov
7f60e5f753 Cleanup IncludeCaptureClockOffset field trial
Bug: webrtc:10739
Change-Id: I642cdf7574277c4c1b4ceb62b9e8a6905325dcfb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299004
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39669}
2023-03-24 14:03:07 +00:00
Sergey Silkin
2d1fa4713f Use MediaCodec API keys and values directly
Replace locally-defined keys and values with constants from MediaCodec API (MediaFormat.KEY_..., etc). Value of a constant field is resolved at compile time according to 13.1.1 [1]. I.e., it is safe to reference a constant field not available in older API (MediaCodec API ignores unrecognized MediaFormat.KEY_ values).

[1] https://docs.oracle.com/javase/specs/jls/se20/html/jls-13.html#jls-13.1

Bug: none
Change-Id: I3c63cfd67cc22db1b957f908508b434d36d88806
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298940
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Linus Nilsson <lnilsson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39668}
2023-03-24 13:59:54 +00:00
Jakob Ivarsson
94b51210f8 Include packet waiting time in concealment decision.
This is to be more robust to packet loss during DTX and paused streams.

Without it, we can wait to decode an available packet when in CNG or
PLC mode until more packets arrive, which for DTX and paused streams
can take a long time.

We already include the waiting time if the last packet in the buffer
is a DTX packet.

Bug: webrtc:13322
Change-Id: Iaf5b3894500140d6f83377ba2cd65b44e0cdac05
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299009
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Jakob Ivarsson‎ <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39667}
2023-03-24 13:18:58 +00:00
Henrik Boström
aaf14f6d45 Add standard L1T3 test that all layers can be inactived.
A similar test to this was landed but got reverted due to failing on the
importer bot. That is being investigated here[1]. This CL relands parts
of the original test that we believe are NOT causing issues.

This CL is not expected to fail on the importer, let's land and verify.

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

Bug: webrtc:15033
Change-Id: If11e459b17d3606da3ddff0742e5429c642f7e83
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299007
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39666}
2023-03-24 11:55:58 +00:00
chromium-webrtc-autoroll
9f3ccf291e Roll chromium_revision 8024fc261c..5a1dec78a8 (1121474:1121577)
Change log: 8024fc261c..5a1dec78a8
Full diff: 8024fc261c..5a1dec78a8

Changed dependencies
* fuchsia_vesion: version:12.20230323.3.1..version:12.20230324.0.1
* src/base: bb32b46a85..54c5103fd7
* src/build: 97631fbec5..43d3f17c30
* src/ios: c7f98ff25b..29fed00884
* src/testing: a7c5a5c493..5018c6f7c4
* src/third_party: d00a252294..df884ce0fa
* src/third_party/depot_tools: c799f76f30..ec4dd35d18
* src/tools: ff6fca47e6..98f1f14993
* src/tools/luci-go: git_revision:320bf3ed60cd4d24549d0ea9ee3a94394f2665ce..git_revision:4494da54d1ba43d9127c07630d452c11ba2c953e
* src/tools/luci-go: git_revision:320bf3ed60cd4d24549d0ea9ee3a94394f2665ce..git_revision:4494da54d1ba43d9127c07630d452c11ba2c953e
DEPS diff: 8024fc261c..5a1dec78a8/DEPS

No update to Clang.

BUG=None

Change-Id: I9994a25dcfab647db7def6e3c552576b7c875ca7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298970
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@{#39665}
2023-03-24 08:36:55 +00:00
Tommi
c848268ab1 Use SequenceChecker(SequenceChecker::kDetached) in a few places.
This CL is partly a test to see if there's an impact on binary size:
- Not a big difference for binaries (decrease): -776b to -4Kb
- For libraries (libwebrtc.a) it actually increases the size: +40Kb

Secondarily this CL is basically to introduce this pattern to the
code base. In terms of LOC, this makes things slightly more compact.

From:

  class Foo {
   public:
     Foo() {
       checker_.Detach();
     }
   private:
    SequenceChecker checker_;
  };

To:

  class Foo {
   public:
     Foo() = default;
   private:
    SequenceChecker checker_{SequenceChecker::kDetached};
  };

Bug: none
Change-Id: I59fc34ccea10847e13455a349851ce9a0af458e3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299020
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39664}
2023-03-24 07:44:18 +00:00
chromium-webrtc-autoroll
ec8b84b740 Roll chromium_revision d5af113b9f..8024fc261c (1121345:1121474)
Change log: d5af113b9f..8024fc261c
Full diff: d5af113b9f..8024fc261c

Changed dependencies
* fuchsia_vesion: version:12.20230323.1.1..version:12.20230323.3.1
* src/base: 312d1816ca..bb32b46a85
* src/build: 3de6b706e7..97631fbec5
* src/buildtools: a23318c669..63e1771c68
* src/buildtools/third_party/libc++/trunk: e44019bfac..5622befaf8
* src/ios: cbf3a5585a..c7f98ff25b
* src/testing: 3bbd269488..a7c5a5c493
* src/third_party: b74b114656..d00a252294
* src/third_party/androidx: Bd5GuYdu-KY7DAsP-QU0XofyaFYU7ySZX8QQpca7j3sC..NiTVtksLm4vhVv9RrW0oOiw5xdUpMuEuyGmD1_YR5kkC
* src/third_party/depot_tools: 479e1e9055..c799f76f30
* src/third_party/perfetto: 134b110423..bfdb3fc5cc
* src/tools: e1a96c1a92..ff6fca47e6
DEPS diff: d5af113b9f..8024fc261c/DEPS

No update to Clang.

BUG=None

Change-Id: I712a07cc46bb18e35a12432aea1b709c77bd778a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298965
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@{#39663}
2023-03-24 01:10:11 +00:00
chromium-webrtc-autoroll
6bd1d88910 Roll chromium_revision 226d9c69f9..d5af113b9f (1121210:1121345)
Change log: 226d9c69f9..d5af113b9f
Full diff: 226d9c69f9..d5af113b9f

Changed dependencies
* src/base: a49af702a7..312d1816ca
* src/build: b83d7798d5..3de6b706e7
* src/buildtools: 0a6c69640f..a23318c669
* src/ios: e5fd242e24..cbf3a5585a
* src/testing: e1bf657022..3bbd269488
* src/third_party: af346205b3..b74b114656
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/6834ebcc09..fb540cd80e
* src/third_party/perfetto: be5933f4b2..134b110423
* src/tools: da1dc8ec60..e1a96c1a92
DEPS diff: 226d9c69f9..d5af113b9f/DEPS

No update to Clang.

BUG=None

Change-Id: Icf96f3a4ad3b862254e39e33ce71401025912df7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298963
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@{#39662}
2023-03-23 20:31:37 +00:00
Henrik Boström
d3e765e4eb Disable flaky PeerConnectionSimulcastWithMediaFlowTests on ASAN.
The test is flaking during shutdown in general, but this is especially
apparent on ASAN bots that don't retry. It is related to
heap-use-after-free and is believef to be a test-only problem.

Bug: webrtc:15018
Change-Id: I593c18dbbe45605404b17af74fd7101f118db7bb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299003
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#39661}
2023-03-23 18:21:42 +00:00
Henrik Boström
adb946054c Ship ability to opt-in to VP9/AV1 simulcast (re-land).
This makes "WebRTC-AllowDisablingLegacyScalability" enabled-by-default,
meaning any app can opt-in to spec-compliant simulcast when
scalabilityMode is specified.

The opt-in criteria is also made more restricitve: you now have to
specify both scalabilityMode and scaleResolutionDownBy to get simulcast,
otherwise you continue to get legacy "single stream" path.

The reason for this is not to cause any surprises in use cases like
[{scalabilityMode:"L1T1", active:true}, {active:false}, {active:false}]
In cases like this where scaleResolutionDownBy is not specified, it
defaults to 4:2:1 if simulcast is used but the legacy path caps it to
one stream, meaning full resolution. By restricing simulcast only to
cases that set scaleResolutionDownBy, we remove the risk of an app
getting a different resolution than expected due to opt-in.

Bug: webrtc:14884, webrtc:15005
Change-Id: I5efb87af60afaeb1e3ff76698d887aaa1f9d63a9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298922
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39660}
2023-03-23 17:53:05 +00:00
chromium-webrtc-autoroll
dfc84087e3 Roll chromium_revision a2171c115c..226d9c69f9 (1121098:1121210)
Change log: a2171c115c..226d9c69f9
Full diff: a2171c115c..226d9c69f9

Changed dependencies
* fuchsia_vesion: version:12.20230323.0.1..version:12.20230323.1.1
* src/base: 8bd533be4e..a49af702a7
* src/build: ad8717e3ec..b83d7798d5
* src/ios: 8a14a52a00..e5fd242e24
* src/testing: 55387868f4..e1bf657022
* src/third_party: c9ea0c6391..af346205b3
* src/third_party/androidx: Do-ENAolCoig5Pv74BYuPTb1ZEnYnseX5dapkDJ1o1sC..Bd5GuYdu-KY7DAsP-QU0XofyaFYU7ySZX8QQpca7j3sC
* src/third_party/kotlin_stdlib: zeFlVAEGvnpaj3JJujWHzRlUiBEm4XeeaMQzVsdW6D4C..XON2v801ZWS7FjApXO8Ev7Me7cOsIAnmqzyCXJuMwJ0C
* src/third_party/perfetto: 626360c3bf..be5933f4b2
* src/tools: 96cd30b1f6..da1dc8ec60
DEPS diff: a2171c115c..226d9c69f9/DEPS

No update to Clang.

BUG=None

Change-Id: I29b8cb81239b8fd0cf5edf82543a733f0c6098f0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298961
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@{#39659}
2023-03-23 16:34:47 +00:00
Henrik Boström
138c9be310 Revert newly added test that fails on import bot.
To be investigated and re-landed.

NOTRY=True

Bug: webrtc:15028
Change-Id: I3919dd6ab37b6d17959c51cf14191287ab20cdd3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299001
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39658}
2023-03-23 15:53:29 +00:00
Jakob Ivarsson
096563e9d2 Combine concealment decision logic in NetEq.
Decisions should be the same (almost) regardless of PLC or CNG mode.

The new logic is submitted behind a flag to avoid changing the default
behavior. This results in messy code, but can be simplified once the
flag is removed.

Bug: webrtc:13322
Change-Id: I959d63e069ad7970b75205c4c4173d774b0e4cac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298625
Commit-Queue: Jakob Ivarsson‎ <jakobi@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39657}
2023-03-23 15:02:53 +00:00
Henrik Boström
4baea5b07f Make VP9 simulcast behave like singlecast for single active layer cases.
Various "if streams == 1" cases are updated to "if
IsSinglecastOrAllNonFirstLayersInactive()" in order not to cause subtle
differences between VP9 {active} and VP9 {active,inactive,inactive}.

This CL also affects a line that conditionally sets
`simulcastStream[0].active = codec_active` so it seemed fitting to
improve the test coverage of "if all streams are inactive, don't send".

Bug: webrtc:15028
Change-Id: I8872dc8be0f2dfc1d8914bdba5e6433f9ba8cbfd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298881
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39656}
2023-03-23 14:49:22 +00:00
Philipp Hancke
b396e2b159 Revert "Only serialize non-stopped RTP header extensions"
This reverts commit be03c09718.
Causes regression in web projects that
1/ add a stopped-by-default extension in SRD
2/ call createAnswer
3/ munge the stopped-by-default extension back in SLD
4/ create a subsequent offer and expect the extension to be present

BUG=chromium:1051821

Change-Id: If77f77c2c0ac19625f502fb8a07facd151475807
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298744
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39655}
2023-03-23 14:06:30 +00:00
chromium-webrtc-autoroll
9cc98a22ef Roll chromium_revision aef9d0f92f..a2171c115c (1120947:1121098)
Change log: aef9d0f92f..a2171c115c
Full diff: aef9d0f92f..a2171c115c

Changed dependencies
* fuchsia_vesion: version:12.20230322.3.1..version:12.20230323.0.1
* src/base: 45871c1984..8bd533be4e
* src/build: 9e9a4341dd..ad8717e3ec
* src/ios: 3ae5ec2b8d..8a14a52a00
* src/testing: 53737bc7dd..55387868f4
* src/third_party: 4fc9c8d17e..c9ea0c6391
* src/third_party/androidx: nQSF-N2rXShu96xnqkaU5hIWFHc1wK4GXaYJSPYczsYC..Do-ENAolCoig5Pv74BYuPTb1ZEnYnseX5dapkDJ1o1sC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/018d397758..6834ebcc09
* src/third_party/perfetto: b4b873ba9c..626360c3bf
* src/tools: 92fbb1449c..96cd30b1f6
DEPS diff: aef9d0f92f..a2171c115c/DEPS

No update to Clang.

BUG=None

Change-Id: Icabad6754128752059da856510a4a9f17a771843
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298868
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@{#39654}
2023-03-23 12:33:35 +00:00
Björn Terelius
31a10d321a Ensure correct destruction order in RtcEventLogImplTest
Bug: b/269744492
Change-Id: I0b7b92ec31baf3515562adde7617de0873cfd537
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298882
Reviewed-by: Markus Handell <handellm@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39653}
2023-03-23 11:50:41 +00:00
Magnus Jedvert
342bbe1ad4 Allow const pointer in NativeToJavaPointer
Bug: webrtc:15032
Change-Id: I3355e3e5d6fdc15652ffb0d6d0ff0328f49fcadb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298900
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Fabian Bergmark <fabianbergmark@google.com>
Cr-Commit-Position: refs/heads/main@{#39652}
2023-03-23 11:11:05 +00:00
Henrik Boström
80850ca477 Fix crash happening when changing from legacy to standard VP9.
Attempting to ship "WebRTC-AllowDisablingLegacyScalability" revealed a
DCHECK that happens when negotiating 3 VP9 streams prior to the
setParameters() call:
1. By default, `scalability_mode` is missing, so those 3 streams
   defaulted to legacy SVC, meaning only a single stream is used.
2. Then, setParameters() was called to make
   `encodings[0].scalability_mode = "L2T2_KEY"` and
   `encodings[1-2].active = false`. The inactive streams were just
   dummies and never expected to exist.

Without simulcast support this is OK, because both 1) and 2) are
interpreted to have a single stream. But with simulcast support, 1) is
interpreted as single stream and 2) as three streams (1 active, 2
inactive). This should be roughly the same setup, but our code treats
them differently.

The DCHECK crash was a mismatch in number of streams in one of the
layers.

The fix is to re-create the streams when the number of streams change
for this reason. The new test revealed other issues and fixes too:
- Support for multiple spatial layers (e.g. "L2T2_KEY") when multiple
  encodings exist but only one encoding is active.
- Allow inactive layers not to have a scalability mode set.

A laundry list (https://crbug.com/webrtc/15028) has been created to
update known places doing "if streams == 1" that need to do "if
active streams == 1" instead.

Credit:
  The RecreateWebRtcStream() fix is based on eshr@'s POC from
  https://webrtc-review.googlesource.com/c/src/+/298565.

Bug: webrtc:15016
Change-Id: I909a3f83a4ef53562894549ade0a870b208cec7e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298443
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@google.com>
Cr-Commit-Position: refs/heads/main@{#39651}
2023-03-23 10:46:17 +00:00
Tommi
9a2938b24c Remove HasSctpDataChannels() and just use HasDataChannels()
Bug: none
Change-Id: I372cd386ad8ec057237889860802865836baaa0c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298821
Auto-Submit: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39650}
2023-03-23 08:38:33 +00:00
Jan Grulich
4bfc4ac4b0 PipeWire capturer: drop old DmaBuf support
Drop support for old compositors that don't use DmaBufs the way they are
supposed to be used now. There is now a whole negotiation process that
includes DmaBuf modifiers and there is also support for renegotiation in
case we fail to import DmaBufs with certain modifier. This is something
that didn't exist before and in such case, failing to import DmaBufs we
would just end up with broken screen sharing. For that reason it would
be better to use MemFD instead to make sure old compositors will work
just fine

Bug: webrtc:15029
Change-Id: Icc303504e510adc829c12feff7178ae01578a6da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298700
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Commit-Queue: Jan Grulich <grulja@gmail.com>
Cr-Commit-Position: refs/heads/main@{#39649}
2023-03-23 07:01:20 +00:00
chromium-webrtc-autoroll
74145adab5 Roll chromium_revision d52d3a0728..aef9d0f92f (1120811:1120947)
Change log: d52d3a0728..aef9d0f92f
Full diff: d52d3a0728..aef9d0f92f

Changed dependencies
* fuchsia_vesion: version:12.20230322.1.1..version:12.20230322.3.1
* src/base: 550e63568f..45871c1984
* src/build: ae6492528c..9e9a4341dd
* src/ios: d7d777c6d0..3ae5ec2b8d
* src/testing: 757ba21a0b..53737bc7dd
* src/third_party: 64341a33d8..4fc9c8d17e
* src/third_party/androidx: ryrhsKJY8msYy8KMkwB25bMAu68qC6b3CKrKger0aywC..nQSF-N2rXShu96xnqkaU5hIWFHc1wK4GXaYJSPYczsYC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/f6395b16b4..018d397758
* src/tools: eb669fff65..92fbb1449c
DEPS diff: d52d3a0728..aef9d0f92f/DEPS

No update to Clang.

BUG=None

Change-Id: Iedff945260f6e71e8e9615381caca75a2de75458
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298862
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@{#39648}
2023-03-23 02:31:58 +00:00
chromium-webrtc-autoroll
f8d03d4ca2 Roll chromium_revision 254e97f424..d52d3a0728 (1120661:1120811)
Change log: 254e97f424..d52d3a0728
Full diff: 254e97f424..d52d3a0728

Changed dependencies
* src/base: 2a1b2eec25..550e63568f
* src/build: c499da7bb0..ae6492528c
* src/buildtools: fb59b3f632..0a6c69640f
* src/buildtools/third_party/libc++/trunk: af83f5d2fa..e44019bfac
* src/ios: 8d3d6b44be..d7d777c6d0
* src/testing: ac0cf0af86..757ba21a0b
* src/third_party: 3394794299..64341a33d8
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/c82a855930..f6395b16b4
* src/third_party/perfetto: a0ad54d66f..b4b873ba9c
* src/tools: 9f58dbf1e9..eb669fff65
DEPS diff: 254e97f424..d52d3a0728/DEPS

No update to Clang.

BUG=None

Change-Id: Ic7313ef83306aa37c37a28c64df88e517098581a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298860
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@{#39647}
2023-03-22 22:57:26 +00:00
Per K
7effd7657b Change visibility on target mock_network_control
This is to allow external tests to depend on it.

Bug: none
Change-Id: Ic8e2f864041d959f673e7f2c18eb563a13274dcc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298745
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Auto-Submit: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39646}
2023-03-22 19:53:04 +00:00
chromium-webrtc-autoroll
f2a92f9f64 Roll chromium_revision 97b144adc4..254e97f424 (1120470:1120661)
Change log: 97b144adc4..254e97f424
Full diff: 97b144adc4..254e97f424

Changed dependencies
* fuchsia_vesion: version:12.20230321.3.1..version:12.20230322.1.1
* src/base: 22039bb79d..2a1b2eec25
* src/build: 70c1390779..c499da7bb0
* src/ios: ef842ef5d0..8d3d6b44be
* src/testing: a69814e2be..ac0cf0af86
* src/third_party: b78e410bad..3394794299
* src/third_party/androidx: 1b2_7gRLY5WVxj5lXGSEkTkPYO_QZTAIkqSyFCKt_yYC..ryrhsKJY8msYy8KMkwB25bMAu68qC6b3CKrKger0aywC
* src/third_party/perfetto: 1bb22965b0..a0ad54d66f
* src/tools: 456ed3095f..9f58dbf1e9
DEPS diff: 97b144adc4..254e97f424/DEPS

No update to Clang.

BUG=None

Change-Id: I1682e6f33ca62c0dc2d7fafc273b7a3dc24f4942
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298801
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@{#39645}
2023-03-22 18:35:16 +00:00
henrika
6bdb285e21 Adds WebRTC.DesktopCapture.Win.DirectXCursorEmbedded UMA
Logs if the mouse cursor has moved and if so if it is embedded in the
captured DXGI frame or not.

Bug: chromium:1421656
Change-Id: Ic8fa8a5a3c020ec28b04064c765b1c204accec1c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298564
Commit-Queue: Alexander Cooper <alcooper@chromium.org>
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Cr-Commit-Position: refs/heads/main@{#39644}
2023-03-22 17:19:06 +00:00
Jeremy Leconte
b17957ac52 Use an audio file when AudioConfig::input_file_name is specified.
Change-Id: Ib4d400c8fbefc13556f9b47c62505cbb7f7c6dbc
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298741
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39643}
2023-03-22 17:08:26 +00:00
Tommi
c61eee28f3 Split up GetSctpSslRole to include an _n variant.
This allows the SslRole to be queried from the network thread which
will simplify some code paths and avoid thread hopping.

The next steps will be to remove GetSctpSslRole and only query the
DTLS role on the network thread and start combining other operations.

Bug: webrtc:11547
Change-Id: I222dc838fc5ee274a294c8d81d38b5a4ea8fea1f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298302
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39642}
2023-03-22 16:47:28 +00:00
Per K
452d94047b Add mock for NetworkControllerInterface
Bug: none
Change-Id: Ibdd72011932a36348a4382caa5d0bf0ab2c02dd9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298742
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Auto-Submit: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39641}
2023-03-22 15:49:32 +00:00
Evan Shrubsole
a7b691499b Always post RemovePacketsForSsrc
If during shutdown the pacer has packets enqueued during pause these
packets will be posted to the pacer after the worker thread is free -
after the ssrcs should have been cleared. This fixes flakes in
picutre_id_tests.

Bug: webrtc:14985
Change-Id: Ib5547a501670fc145543df32fdc43bbc6596375f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/297401
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39640}
2023-03-22 14:24:50 +00:00
chromium-webrtc-autoroll
48aa2b29db Roll chromium_revision f35f0851b0..97b144adc4 (1120331:1120470)
Change log: f35f0851b0..97b144adc4
Full diff: f35f0851b0..97b144adc4

Changed dependencies
* fuchsia_vesion: version:12.20230321.2.1..version:12.20230321.3.1
* src/base: 6d18d88e5c..22039bb79d
* src/build: 28768018cb..70c1390779
* src/ios: edf173d4d2..ef842ef5d0
* src/testing: ae19919a31..a69814e2be
* src/third_party: 9a89a2ee8c..b78e410bad
* src/third_party/androidx: Xk3zPqbvCVuTuwcSd2b97hb0LA_Jo197S1RZiE_VIAsC..1b2_7gRLY5WVxj5lXGSEkTkPYO_QZTAIkqSyFCKt_yYC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4fe34296da..c82a855930
* src/tools: eea0e24300..456ed3095f
DEPS diff: f35f0851b0..97b144adc4/DEPS

No update to Clang.

BUG=None

Change-Id: I0ecc1083d7aacd2fdd14f7bf20a1f0c71eafa259
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298760
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@{#39639}
2023-03-22 12:52:52 +00:00
Tommi
72b12a935e Add thread guard for DcSctpTransport::ready_to_send_data_
Bug: none
Change-Id: Ib141122bf449ac4e2b9f3adfb7fb6af38d18d785
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298621
Auto-Submit: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39638}
2023-03-22 12:23:27 +00:00
Danil Chapovalov
bbc926d62c Cleanup construction parameters for remote bitrate estimator helpers
Values of these parameters are always the same and thus can be hardcoded

Bug: None
Change-Id: Ie19a1c6305d503ad2c92af503006a72b7981e178
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298622
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39637}
2023-03-22 11:42:19 +00:00
Artem Titov
0ef84620b7 [DVQA] Increase default storage duration from 3 to 9 seconds
Bug: b/271542055, webrtc:14995, b/274620516
Change-Id: I2ef635db93d11e82e8221e2465f9f7c41449e4ec
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298720
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39636}
2023-03-22 10:46:58 +00:00
Harald Alvestrand
041ecb87f5 New PeerConnectionFactory::CreateVideoTrack with refcounted source
Bug: webrtc:15017
Change-Id: I04c794d8959583bb4cc5c3898f4175783ec49f16
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/249363
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39635}
2023-03-22 09:10:27 +00:00
Philipp Hancke
3e224c7fe1 Clean up TURN server limit killswitch
after the limitation to 32 TURN servers shipped in M110

BUG=webrtc:13195

Change-Id: I247e5b164188751d94eb9f4fb93aadf1dd645d2a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298308
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#39634}
2023-03-22 08:21:22 +00:00
Philipp Hancke
f0f435e983 Remove deprecated RTCStatsReport(int64) and timestamp_us
BUG=webrtc:14813

Change-Id: I80c2ba8f57354ef63cf2cc7b767d1f64dd0dd766
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298444
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#39633}
2023-03-22 08:00:53 +00:00
webrtc-version-updater
59330974c1 Update WebRTC code version (2023-03-22T04:02:52).
Bug: None
Change-Id: I46a963194b53e85508379b9391e0c777970f2ca3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298683
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@{#39632}
2023-03-22 05:36:24 +00:00
chromium-webrtc-autoroll
f59d8ad78e Roll chromium_revision 9fa5a7fb6a..f35f0851b0 (1120027:1120331)
Change log: 9fa5a7fb6a..f35f0851b0
Full diff: 9fa5a7fb6a..f35f0851b0

Changed dependencies
* fuchsia_vesion: version:12.20230321.0.1..version:12.20230321.2.1
* src/base: e1c670e6c5..6d18d88e5c
* src/build: af6080beca..28768018cb
* src/buildtools: 88cc35b39e..fb59b3f632
* src/buildtools/third_party/libc++/trunk: 6f04403d62..af83f5d2fa
* src/ios: 54aa38ef52..edf173d4d2
* src/testing: 13ec1a129e..ae19919a31
* src/third_party: 09f0f4a9fc..9a89a2ee8c
* src/third_party/android_build_tools/manifest_merger: lC0-JZAP05FMcCXlQn9Oej4oD6ytlLkFQEnExeLuAWkC.._aoHU11YhUwqKZXVXsn5otnhI-ZVGFT7h1Z9eCcAZM0C
* src/third_party/androidx: bATXuW4Sk-cpcatZpGFRBg_j771irSGgkdiTHZLeDj4C..Xk3zPqbvCVuTuwcSd2b97hb0LA_Jo197S1RZiE_VIAsC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1eea754058..4fe34296da
* src/third_party/depot_tools: 7a8daa2f9f..479e1e9055
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/35410dede1..16e2483139
* src/third_party/perfetto: c667001f69..1bb22965b0
* src/tools: a6b7d5e7a1..eea0e24300
Removed dependency
* src/third_party/android_deps/libs/net_sf_kxml_kxml2
DEPS diff: 9fa5a7fb6a..f35f0851b0/DEPS

No update to Clang.

BUG=None

Change-Id: Ib00d7301e70e313d2421dca43e5154b7afd8fd99
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298681
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@{#39631}
2023-03-22 03:03:20 +00:00
Tommi
8efaec62b1 Add thread checker to SctpSidAllocator
Also changing AllocateSid to return StreamId instead of bool.

Bug: webrtc:11547
Change-Id: I776e917300ddfdbb79e78c01ef880209ec2c5917
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298301
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39630}
2023-03-22 00:28:02 +00:00
Jianhui Dai
0a025345fe RtcEventLog: Separate LogToMemory from TaskQueue to current thread
Original implementation uses TaskQueue to async execute both `LogToMemory` and `WriteToOutput`. `LogToMemory` is invoked in high frequency, but the execution takes a very short time. It would be a bit more expensive to post on TaskQueue than execution on current thread with locking. It is because that the TaskQueue switches the thread context for execution.

This CL separates `LogToMemory` from TaskQueue to current thread, in
order to avoid frequent context switching; And periodically schedule
`WriteToOutput` to TaskQueue, not block current thread.

Link: https://webrtc-review.googlesource.com/c/src/+/283641
Bug: chromium:1288710
Change-Id: Ic78216aff16d1883b109e360a0892da3ca8f5ecb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295640
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Markus Handell <handellm@webrtc.org>
Reviewed-by: Markus Handell <handellm@google.com>
Cr-Commit-Position: refs/heads/main@{#39629}
2023-03-21 23:07:40 +00:00