41810 Commits

Author SHA1 Message Date
Per K
666ef50459 Plot reordered packets since last feedback.
Bug: None
Change-Id: I528227980a9e2a88593e891f702ad44ee5b9d7fa
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/356041
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42578}
2024-07-03 07:02:39 +00:00
webrtc-version-updater
257a7b6aea Update WebRTC code version (2024-07-03T04:03:49).
Bug: None
Change-Id: I4874a0da23da584e419ac9ee5b625156c8e4dfa8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/356220
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@{#42577}
2024-07-03 06:06:07 +00:00
Jeremy Leconte
fbf754b581 Add new bot 'iwyu_verifier'.
Change-Id: I26a5022d1ffa1f6443c686b90d4a6322a27f81e2
Bug: b/236227627
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/356020
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42576}
2024-07-02 19:03:18 +00:00
Tommi
51ad7c1277 Update FrameCombiner et al to use DeinterleavedView
* FrameCombiner is simpler. No additional channel pointers for buffers.
* Improve consistency in using views in downstream classes.
* Deprecate older methods (some have upstream dependencies).
* Use samples per channel instead of sample rate where the former is
  really what's needed.

Bug: chromium:335805780
Change-Id: I0dde8ed7a5a187bbddd18d3b6c649aa0865e6d4a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/352582
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42575}
2024-07-02 15:58:20 +00:00
Ilya Nikolaevskiy
aab34560cf Reland "Rewrite simulcast config to equivalent SVC for vp9 simulcast"
This reverts commit b58937316b42a04f8ed2c569d80d813bbc44b3c5.

Reason for revert: Reland after downstream project fix.

Original change's description:
> Revert "Rewrite simulcast config to equivalent SVC for vp9 simulcast"
>
> This reverts commit 86ff48adaea08fd4e7044595e1c25a22fcceac34.
>
> Reason for revert: Speculative revert due to failing downstream tests
>
> Original change's description:
> > Rewrite simulcast config to equivalent SVC for vp9 simulcast
> >
> > This allows to utilize libvpx optimizations considerably improving performance.
> > The change happens inside libvpx_vp9_encoder and is invisible to other parts of webrtc.
> >
> > This CL includes unit tests, an E2E test already exists: StandardPath/PeerConnectionEncodingsIntegrationParameterizedTest.Simulcast/VP9 in peerconnection_unittests.
> >
> > Bug: webrtc:347737882
> > Change-Id: Ic48316ad597700ed07e594d592413cf84b6b20d4
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355003
> > Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
> > Reviewed-by: Erik Språng <sprang@webrtc.org>
> > Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
> > Cr-Commit-Position: refs/heads/main@{#42554}
>
> Bug: webrtc:347737882
> Change-Id: Ib84c9c0e20763348abfae838f2fb1aff31581a55
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355943
> Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
> Owners-Override: Jeremy Leconte <jleconte@google.com>
> Reviewed-by: Jeremy Leconte <jleconte@google.com>
> Commit-Queue: Jeremy Leconte <jleconte@google.com>
> Cr-Commit-Position: refs/heads/main@{#42564}

Bug: webrtc:347737882
Change-Id: I020d51892982a6e776bb169584c27f7c1360d521
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/356142
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42574}
2024-07-02 14:42:35 +00:00
Erik Språng
fe4c1dd6dc Fix logic reading spatial/temporal id in VideoStreamEncoder.
The temporal id must be read from `EncodedImage` rather than codec
specifics for AV1. Furthermore, in some configs the spatial id of
`EncodedImage` is populated and set to 0 while the simulcast id can
also be simultaneously populated and set to values, including non-zero.
To solve this, just take the max of the two.

Bug: b/349561566
Change-Id: I46c61b7f0fff7a7ab8d7262c3a8d413f49b3286a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355904
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42573}
2024-07-02 14:15:52 +00:00
Åsa Persson
445d403eca Use RtpEncodingParameters min bitrate on lowest spatial layer if set.
Bug: b/299588022
Change-Id: I32dcf6763dbea184faf40cf743a9370073761762
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355864
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42572}
2024-07-02 14:01:59 +00:00
Jonas Oreland
a58047d4e9 Add new constructor for TestUDPPort
The new constructor exposes an already existing constructor,
and is used to create a (test) UDPPort
with a socket...so that one does not (really) need a
socket factory.

Bug: b/339018639
Change-Id: Ib591fe6ae61519fe29cdea819192694448b071e0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/356141
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42571}
2024-07-02 13:20:51 +00:00
Tommi
f101f3f803 Remove sstream code from socket_address
Bug: webrtc:8982
Change-Id: I85f1678aa02a51ddad083fb299577cfa5d364df8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355905
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42570}
2024-07-02 11:36:00 +00:00
Tommi
7e59d264f1 Remove unused istream code in test_utils.
Bug: webrtc:8982
Change-Id: I52cf9778581190399de8e2068e4a1cd03c97fb3f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/356140
Auto-Submit: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42569}
2024-07-02 10:22:12 +00:00
webrtc-version-updater
3ae2bfa262 Update WebRTC code version (2024-07-02T04:04:31).
Bug: None
Change-Id: I8f45480d64a3d125daf52cc6f27f2950a2dfc4d2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/356120
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@{#42568}
2024-07-02 06:18:26 +00:00
Johannes Kron
e0287f2797 Add default values and field trials to QualityConvergenceMonitor
Add default values and a static Create() function that determines
the parameters to use based on the specified codec and potential
field trial overrides.

Bug: chromium:328598314
Change-Id: I7a9331a1fd0ed4bd258788760592ea84e535e43b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355903
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Markus Handell <handellm@google.com>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42567}
2024-07-01 22:37:46 +00:00
Johannes Kron
6bbbc08747 Implement QualityConvergenceMonitor
The quality convergence monitor will be used for screenshare streams
to determine if encoded video frames have reached the target quality.

This is a generalization of the static threshold that is currently
used for VP8 in VideoStreamEncoder.

Internal design document: go/qp-convergence-detection

Bug: chromium:328598314
Change-Id: I13e32ee6efb54cbdb4e8a814c525087af8cd2759
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355902
Commit-Queue: Johannes Kron <kron@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42566}
2024-07-01 22:10:53 +00:00
webrtc-version-updater
84af278666 Update WebRTC code version (2024-07-01T04:06:11).
Bug: None
Change-Id: I775c9bb700981055b087581ee194157d35515893
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/356001
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@{#42565}
2024-07-01 05:22:23 +00:00
Björn Terelius
b58937316b Revert "Rewrite simulcast config to equivalent SVC for vp9 simulcast"
This reverts commit 86ff48adaea08fd4e7044595e1c25a22fcceac34.

Reason for revert: Speculative revert due to failing downstream tests

Original change's description:
> Rewrite simulcast config to equivalent SVC for vp9 simulcast
>
> This allows to utilize libvpx optimizations considerably improving performance.
> The change happens inside libvpx_vp9_encoder and is invisible to other parts of webrtc.
>
> This CL includes unit tests, an E2E test already exists: StandardPath/PeerConnectionEncodingsIntegrationParameterizedTest.Simulcast/VP9 in peerconnection_unittests.
>
> Bug: webrtc:347737882
> Change-Id: Ic48316ad597700ed07e594d592413cf84b6b20d4
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355003
> Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#42554}

Bug: webrtc:347737882
Change-Id: Ib84c9c0e20763348abfae838f2fb1aff31581a55
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355943
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#42564}
2024-06-29 17:47:18 +00:00
Tony Herre
93788b68c6 Make platform_thread.cc build under emscripten without pthread support
Otherwise targets which don't need threads but transitively include this
fail to build due to missing thread priority symbols as described in the
bug.

Bug: webrtc:349961287
Change-Id: I33098a150387b8d20ab9344f49d7c7cb19be2db4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355901
Auto-Submit: Tony Herre <herre@google.com>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42563}
2024-06-29 16:12:11 +00:00
Per K
fb2c7bc8bd Remember lost packets between RTCP feedback reports
The idea is to reduce the risk of calculating a packet as lost if a
packet is reordered between two feedback reports.
It works as long as the recevied feedback does not complete an
observation.

Bug: webrtc:42222865 b/349765923
Change-Id: Iaf1595e624f546951baf3998d161f4cd1d5d491b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355942
Reviewed-by: Diep Bui <diepbp@google.com>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42562}
2024-06-28 17:27:55 +00:00
lauren n. liberda
4157f3def0 stdc++: remove unneeded absl::optional wrapping
std::optional<T>::emplace() without an initializer is broken on clang++
with gnu libstdc++. this workarounds the bug by removing the
absl::optional wrapping, which is actually pointless.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101227

Bug: chromium:41455655
Change-Id: I05354e57cc4cdda3fa6d3cd23f46462b69cc3bee
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355900
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Diep Bui <diepbp@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42561}
2024-06-28 16:35:18 +00:00
Jeremy Leconte
f5ccb396b1 Finish the roll of third_party.
With this commit we'll have a full reland of https://webrtc-review.googlesource.com/c/src/+/355520.
First time the CL landed it triggered a jni_zero dependency cycle which seems to be fixed somehow...

This commit roll these changes:
a90b1f4c5a..91945cadc2

Change-Id: Iff6fd7ab808a240c4172373f1baa6d9388823c91
No-Try: true
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355940
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42560}
2024-06-28 11:45:07 +00:00
Johannes Kron
216cce5f49 Add minimum_qp to VideoEncoder::EncoderInfo
The minimum QP field will be used to signal what the QP value will be
once the encoder reach its target video quality. This will be used
in the generalized QP convergence detection.

Bug: chromium:328598314
Change-Id: I82299cd921e3c091e651218d1e3f337875176567
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355701
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Reviewed-by: Markus Handell <handellm@google.com>
Cr-Commit-Position: refs/heads/main@{#42559}
2024-06-28 10:48:22 +00:00
Emil Lundmark
2360208f7d Generate compilation database by default
This will generate a JSON compilation database for all build targets by
default. This is useful for LSP servers and other tools for properly
interacting with the build system. Previously, users have been able to
this manually by appending a flag to gn gen.

Bug: None
Change-Id: I9cdf501b5c392314eae53010ef2d9928769809a8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355941
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Emil Lundmark <lndmrk@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42558}
2024-06-28 08:37:45 +00:00
webrtc-version-updater
c7bac48b60 Update WebRTC code version (2024-06-28T04:05:47).
Bug: None
Change-Id: I78e975be85a181bb9c6d26c35dd478747a365302
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355920
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@{#42557}
2024-06-28 06:15:56 +00:00
Sergey Silkin
e19896abec Enable VP9 flexible mode if it is not disabled by the kill-switch
Forgot negation in https://webrtc-review.googlesource.com/c/src/+/355700

Bug: webrtc:329396373
Change-Id: I6217b5b5cdb11b182405ae7b3d3d3c1fa5036bc7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355862
Auto-Submit: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42556}
2024-06-27 16:24:14 +00:00
Evan Shrubsole
479e066495 Fix spatial layers to 1 when doing VP9 simulcast encoding
Libvpx works without this, so the existing tests pass. However, other
encoder implementations (like rtc_video_encoder in Chrome) look at
different fields and get confused about the configuration.

Test: Integration tests with Chrome and windows hardware encoders.
Bug: webrtc:348342168
Change-Id: Id0d96cff34eb34c7e019a24255623f3aeeca5772
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355500
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@google.com>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42555}
2024-06-27 16:23:11 +00:00
Ilya Nikolaevskiy
86ff48adae Rewrite simulcast config to equivalent SVC for vp9 simulcast
This allows to utilize libvpx optimizations considerably improving performance.
The change happens inside libvpx_vp9_encoder and is invisible to other parts of webrtc.

This CL includes unit tests, an E2E test already exists: StandardPath/PeerConnectionEncodingsIntegrationParameterizedTest.Simulcast/VP9 in peerconnection_unittests.

Bug: webrtc:347737882
Change-Id: Ic48316ad597700ed07e594d592413cf84b6b20d4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355003
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42554}
2024-06-27 14:27:35 +00:00
Åsa Persson
975334439a Prefer encoding min bitrate if configured when applying bitrate limits.
Bug: none
Change-Id: Ifc329bc2ca28683652ff081332dc5d7234d6e659
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355840
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42553}
2024-06-27 14:26:20 +00:00
Jeremy Leconte
c429517927 Roll chromium_revision 536609c347..ba1ae79f58 (1316213:1319128)
Manual change:
- changed ninja package to 'infra/3pp/build_support/ninja-1_11_1/${{platform}}'
- limit third_party roll to e9fa8077c522c8591b96c77b0b3feaba51cec643 so that https://chromium-review.googlesource.com/c/chromium/src/+/5636706 is not included.

Change log: 536609c347..ba1ae79f58
Full diff: 536609c347..ba1ae79f58

Changed dependencies
* fuchsia_version: version:21.20240613.1.1..version:21.20240620.2.1
* ninja_version: version:2@1.11.1.chromium.6..version:2@1.11.1.chromium.2
* reclient_version: re_client_version:0.143.0.518e369-gomaip..re_client_version:0.148.0.41b09b51-gomaip
* src/base: 21aa1c623a..aa6dbe6d6a
* src/build: 574613cf34..5bce81deee
* src/buildtools: 8acbed5185..94d7b86a83
* src/buildtools/reclient: re_client_version:0.143.0.518e369-gomaip..re_client_version:0.148.0.41b09b51-gomaip
* src/ios: c5094fae2f..9e33110a5d
* src/testing: ca3cf42d0a..a1b47952f3
* src/third_party: 361b05ad7c..4513afab67
* src/third_party/androidx: Z-16gFTbhA-coeMbJVUhkfglE569L1q8iVWgtwIs9oMC..-zomVY2T8V3NRjAUbZNAZpFp8dAPuNdu3oQsnmhhIHEC
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/9cac8a6b38..f01108e476
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1a0040059f..022cd349fe
* src/third_party/depot_tools: 66df2a3ec7..f1c7c96958
* src/third_party/ffmpeg: bc1ee906ce..d941d9677b
* src/third_party/freetype/src: d41a855aab..73720c7c99
* src/third_party/icu: 43953f57b0..163e29159e
* src/third_party/kotlinc/current: 0jpbSygC1gCOFyv-hsyNVfvxPLhDSXnTCSnxHY_mjKoC..9KgLQsrBWX4kePu9T7eDB1JknSYIPKmmumTEE70lyHYC
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/49c02efb61..afedaf9da5
* src/third_party/libc++/src: 6caebae1eb..09b99fd8ab
* src/third_party/libc++abi/src: 472d9aad97..bac941ca44
* src/third_party/libunwind/src: c8f1d81998..dcc1ffafb5
* src/third_party/libvpx/source/libvpx: a2508b5711..253d6365e3
* src/third_party/ninja: version:2@1.11.1.chromium.6..version:2@1.11.1.chromium.2
* src/third_party/perfetto: 1990573f6d..f9098afffa
* src/third_party/r8: BbsWCeVMT641FkMRNj4fbXc-wfImc7dl45HwKXWk0hsC..M8rc1oybTkWXWpoImSQ8gAwv6mdEyvAPnQNs6Dus_28C
* src/third_party/re2/src: 4a8cee3dd3..6144b62bec
* src/third_party/turbine: s6-zuFNzLDZOl_FmPkk2_LENOqUKjkYmpqR9l0SDo94C..xWEBZuFKl1Dvw_zOpabeMkGVYlEllIxK06D-RoC6wUsC
* src/tools: 4d74770ca4..a8fe86b922
DEPS diff: 536609c347..ba1ae79f58/DEPS

Clang version changed llvmorg-19-init-10646-g084e2b53:llvmorg-19-init-14561-gecea8371
Details: 536609c347..ba1ae79f58/tools/clang/scripts/update.py

BUG=None

Change-Id: I0d138717c45c086f4badecb32f69c103838654cd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355843
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42552}
2024-06-27 14:07:03 +00:00
Johannes Kron
529707576a Set is_steady_state_refresh_frame in FrameEncodeMetadataWriter
Set is_steady_state_refresh_frame true if the update rectangle of the
corresponding VideoFrame is empty. Set it to false otherwise.

Rename FillTimingInfo to FillMetadataAndTimingInfo.

Bug: chromium:328598314
Change-Id: I7a3e89b180432473b087e849fce636ce1b329637
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355780
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42551}
2024-06-27 11:58:13 +00:00
Johannes Kron
7235dd0e2b Add is_steady_state_refresh_frame_ to EncodedImage
The field is_steady_state_refresh_frame_ can be used to determine
if the encoded video frame is a repeated frame that should be considered
for QP convergence detection.

Bug: chromium:328598314
Change-Id: Iffba0f9f70af8b41b9bde25cf40b08b77dad8021
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355702
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42550}
2024-06-27 11:57:11 +00:00
Zhaoliang Ma
769ef20309 [rct_tools/video_encoder] Support yuv input and PSNR/Bitrate validation.
As mentioned, this CL adds the yuv input file support, also checks the
PSNR and bitrate validation in video encoder tool.

the output example is like:
(video_encoder.cc:487): VideoBitrateAllocation [ [272000] ]
(ivf_file_writer.cc:165): Created IVF file for codec data of type AV1 at resolution 640 x 360, using 90kHz clock resolution.
(video_encoder.cc:266): PSNRPassed Average PSNR: 35.6536 Average bitrate: 273960 Bitrate deviation: 0.720588 %

Bug: None
Change-Id: Idaf2545fc272ec636165104784eae79aaee731f9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355360
Commit-Queue: Zhaoliang Ma <zhaoliang.ma@intel.com>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42549}
2024-06-27 10:50:16 +00:00
Jan Grulich
e6ad337d63 PipeWire capture: hide cursor when it goes off screen or is not visible
Set cursor position to (-1,-1) to indicate it's not valid when it goes
off the screen or it gets hidden by the compositor. Compositors indicate
invalid or hidden cursor by unsetting the cursor id in cursor metadata
and using spa_meta_cursor_is_valid() will tell us the needed information
for this.

Bug: chromium:346608851
Change-Id: I71b3222ca161b7fd8e964f4f4e12b9983179beba
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355080
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Commit-Queue: Jan Grulich <grulja@gmail.com>
Cr-Commit-Position: refs/heads/main@{#42548}
2024-06-27 08:57:19 +00:00
webrtc-version-updater
2d6c397795 Update WebRTC code version (2024-06-27T04:06:16).
Bug: None
Change-Id: I8ed8fdbd4b53facc52566d9ea501c588aa84598b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355820
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@{#42547}
2024-06-27 05:57:30 +00:00
Olov Brändström
c2c6442ad5 Add RTC_EXPORT to TimeUTCMicros (2nd try)
In https://webrtc-review.googlesource.com/c/src/+/355181 I supposed to add RTC_EXPORT to the TimeUTCMicros function. However in the code I added it to TimeUTCMillis(). I hadn't realized there where two similar functions, so I did a poor error check.

I think it make sense to have RTC_EXPORT on both of them, since they are similar. So I opted to not revert the change in the previous faulty CL.

Bug: chromium:333359951
Change-Id: Icb3d3adeebd4fbf56244986a9e801bee84ff04df
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355760
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42546}
2024-06-26 16:53:17 +00:00
Danil Chapovalov
20b8e33a3f Add AudioEncoderOpus constructors that use field trials from Environment
Deprecate or remove other constructor

Bug: webrtc:343086059
Change-Id: I863a1df1b313f871a0b03763be1588e68ceb84a0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355182
Reviewed-by: Jakob Ivarsson‎ <jakobi@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42545}
2024-06-26 15:25:23 +00:00
Tommi
81a3d95332 Add checks and explicit buffer inititalization for FrameCombiner
Bug: chromium:335805780
Change-Id: I26825941076e78573de268f6e2da7215ee1ea762
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355740
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42544}
2024-06-26 14:01:30 +00:00
Sergey Silkin
0bbc8ce12b Enable flexible mode by default
Added a dedicated kill-switch WebRTC-Video-Vp9FlexibleMode.

Bug: webrtc:329396373
Change-Id: I1acb28032898379eecf7dd81a770c73708286d74
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355700
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42543}
2024-06-26 13:46:07 +00:00
Danil Chapovalov
1030eaaffe Provide Environment to create an audio encoder in tests
Bug: webrtc:343086059
Change-Id: I73a48770ae67e529eb5065e957ea6420dea44975
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/354881
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Jakob Ivarsson‎ <jakobi@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42542}
2024-06-26 12:54:36 +00:00
Artem Titov
eb3da2b1ec Extract video writing into separate target
Bug: None
Change-Id: I3af192606eb623e21a4d648fb69bb62c14ab8b0d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355560
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42541}
2024-06-26 12:47:15 +00:00
Björn Terelius
0592d2b3c4 Revert "Roll chromium_revision 536609c347..ba1ae79f58 (1316213:1319128)"
This reverts commit 3be745a20a6a54dadfc7d9369465f1236fd87b56.

Reason for revert: Investigating jni_zero issues

Original change's description:
> Roll chromium_revision 536609c347..ba1ae79f58 (1316213:1319128)
>
>
> Manually changed ninja package to 'infra/3pp/build_support/ninja-1_11_1/${{platform}}'
>
> Change log: 536609c347..ba1ae79f58
> Full diff: 536609c347..ba1ae79f58
>
> Changed dependencies
> * fuchsia_version: version:21.20240613.1.1..version:21.20240620.2.1
> * ninja_version: version:2@1.11.1.chromium.6..version:2@1.11.1.chromium.2
> * reclient_version: re_client_version:0.143.0.518e369-gomaip..re_client_version:0.148.0.41b09b51-gomaip
> * src/base: 21aa1c623a..aa6dbe6d6a
> * src/build: 574613cf34..5bce81deee
> * src/buildtools: 8acbed5185..94d7b86a83
> * src/buildtools/reclient: re_client_version:0.143.0.518e369-gomaip..re_client_version:0.148.0.41b09b51-gomaip
> * src/ios: c5094fae2f..9e33110a5d
> * src/testing: ca3cf42d0a..a1b47952f3
> * src/third_party: 361b05ad7c..91945cadc2
> * src/third_party/androidx: Z-16gFTbhA-coeMbJVUhkfglE569L1q8iVWgtwIs9oMC..-zomVY2T8V3NRjAUbZNAZpFp8dAPuNdu3oQsnmhhIHEC
> * src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/9cac8a6b38..f01108e476
> * src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1a0040059f..022cd349fe
> * src/third_party/depot_tools: 66df2a3ec7..f1c7c96958
> * src/third_party/ffmpeg: bc1ee906ce..d941d9677b
> * src/third_party/freetype/src: d41a855aab..73720c7c99
> * src/third_party/icu: 43953f57b0..163e29159e
> * src/third_party/kotlinc/current: 0jpbSygC1gCOFyv-hsyNVfvxPLhDSXnTCSnxHY_mjKoC..9KgLQsrBWX4kePu9T7eDB1JknSYIPKmmumTEE70lyHYC
> * src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/49c02efb61..afedaf9da5
> * src/third_party/libc++/src: 6caebae1eb..09b99fd8ab
> * src/third_party/libc++abi/src: 472d9aad97..bac941ca44
> * src/third_party/libunwind/src: c8f1d81998..dcc1ffafb5
> * src/third_party/libvpx/source/libvpx: a2508b5711..253d6365e3
> * src/third_party/ninja: version:2@1.11.1.chromium.6..version:2@1.11.1.chromium.2
> * src/third_party/perfetto: 1990573f6d..f9098afffa
> * src/third_party/r8: BbsWCeVMT641FkMRNj4fbXc-wfImc7dl45HwKXWk0hsC..M8rc1oybTkWXWpoImSQ8gAwv6mdEyvAPnQNs6Dus_28C
> * src/third_party/re2/src: 4a8cee3dd3..6144b62bec
> * src/third_party/turbine: s6-zuFNzLDZOl_FmPkk2_LENOqUKjkYmpqR9l0SDo94C..xWEBZuFKl1Dvw_zOpabeMkGVYlEllIxK06D-RoC6wUsC
> * src/tools: 4d74770ca4..a8fe86b922
> DEPS diff: 536609c347..ba1ae79f58/DEPS
>
> Clang version changed llvmorg-19-init-10646-g084e2b53:llvmorg-19-init-14561-gecea8371
> Details: 536609c347..ba1ae79f58/tools/clang/scripts/update.py
>
> BUG=None
>
> Change-Id: Id887574c285eb12c82ed71e3434bd380646560ef
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355520
> Reviewed-by: Jeremy Leconte <jleconte@google.com>
> Commit-Queue: Björn Terelius <terelius@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#42535}

Bug: None
Change-Id: Ic31468e3b114329aef9646f5196128fbd3ca6403
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355703
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Auto-Submit: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42540}
2024-06-26 11:20:34 +00:00
Artem Titov
a6c34d10cb Introduce an empty target for video_frame_writer
This target then will be filled with writer related part from "video_test_support"
This allows downstream to migrate on the new target keeping dependency on the old one.

Bug: None
Change-Id: Ie0b2f0ff9c7896c70b9a204ffedf15afac43c143
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355580
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42539}
2024-06-26 10:02:37 +00:00
Mirko Bonadei
f86c247185 Remove api/wrapping_async_dns_resolver.cc.
Its header and its compilation configs have been removed by
https://webrtc-review.googlesource.com/c/src/+/323004.

Bug: webrtc:12598
Change-Id: I5ecf0c5ab273d09b90e663c1f70d10e4cc593aec
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355260
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42538}
2024-06-26 08:26:24 +00:00
philipel
accef6ad5d Allow for reordering around IRAPs.
Bug: webrtc:41480904
Change-Id: I16fb4466bff8a0c192467332413205cb9958674e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355482
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42537}
2024-06-26 07:02:22 +00:00
webrtc-version-updater
889402ee1f Update WebRTC code version (2024-06-26T04:04:55).
Bug: None
Change-Id: I5ded0625cb69d826860b569fb0e789d16526bb37
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355680
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@{#42536}
2024-06-26 05:57:15 +00:00
Björn Terelius
3be745a20a Roll chromium_revision 536609c347..ba1ae79f58 (1316213:1319128)
Manually changed ninja package to 'infra/3pp/build_support/ninja-1_11_1/${{platform}}'

Change log: 536609c347..ba1ae79f58
Full diff: 536609c347..ba1ae79f58

Changed dependencies
* fuchsia_version: version:21.20240613.1.1..version:21.20240620.2.1
* ninja_version: version:2@1.11.1.chromium.6..version:2@1.11.1.chromium.2
* reclient_version: re_client_version:0.143.0.518e369-gomaip..re_client_version:0.148.0.41b09b51-gomaip
* src/base: 21aa1c623a..aa6dbe6d6a
* src/build: 574613cf34..5bce81deee
* src/buildtools: 8acbed5185..94d7b86a83
* src/buildtools/reclient: re_client_version:0.143.0.518e369-gomaip..re_client_version:0.148.0.41b09b51-gomaip
* src/ios: c5094fae2f..9e33110a5d
* src/testing: ca3cf42d0a..a1b47952f3
* src/third_party: 361b05ad7c..91945cadc2
* src/third_party/androidx: Z-16gFTbhA-coeMbJVUhkfglE569L1q8iVWgtwIs9oMC..-zomVY2T8V3NRjAUbZNAZpFp8dAPuNdu3oQsnmhhIHEC
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/9cac8a6b38..f01108e476
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1a0040059f..022cd349fe
* src/third_party/depot_tools: 66df2a3ec7..f1c7c96958
* src/third_party/ffmpeg: bc1ee906ce..d941d9677b
* src/third_party/freetype/src: d41a855aab..73720c7c99
* src/third_party/icu: 43953f57b0..163e29159e
* src/third_party/kotlinc/current: 0jpbSygC1gCOFyv-hsyNVfvxPLhDSXnTCSnxHY_mjKoC..9KgLQsrBWX4kePu9T7eDB1JknSYIPKmmumTEE70lyHYC
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/49c02efb61..afedaf9da5
* src/third_party/libc++/src: 6caebae1eb..09b99fd8ab
* src/third_party/libc++abi/src: 472d9aad97..bac941ca44
* src/third_party/libunwind/src: c8f1d81998..dcc1ffafb5
* src/third_party/libvpx/source/libvpx: a2508b5711..253d6365e3
* src/third_party/ninja: version:2@1.11.1.chromium.6..version:2@1.11.1.chromium.2
* src/third_party/perfetto: 1990573f6d..f9098afffa
* src/third_party/r8: BbsWCeVMT641FkMRNj4fbXc-wfImc7dl45HwKXWk0hsC..M8rc1oybTkWXWpoImSQ8gAwv6mdEyvAPnQNs6Dus_28C
* src/third_party/re2/src: 4a8cee3dd3..6144b62bec
* src/third_party/turbine: s6-zuFNzLDZOl_FmPkk2_LENOqUKjkYmpqR9l0SDo94C..xWEBZuFKl1Dvw_zOpabeMkGVYlEllIxK06D-RoC6wUsC
* src/tools: 4d74770ca4..a8fe86b922
DEPS diff: 536609c347..ba1ae79f58/DEPS

Clang version changed llvmorg-19-init-10646-g084e2b53:llvmorg-19-init-14561-gecea8371
Details: 536609c347..ba1ae79f58/tools/clang/scripts/update.py

BUG=None

Change-Id: Id887574c285eb12c82ed71e3434bd380646560ef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355520
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42535}
2024-06-25 21:51:14 +00:00
Lambros Lambrou
2086ff5d33 Mac SCK capturer: Set per-frame capture_time_ms and DPI values.
This sets the correct frame DPI according to the pixels/DIPs ratio.
It also sets the capture_time_ms for consistency with ScreenCapturerMac.

Bug: chromium:327458809
Change-Id: Ibb0074756e262dd1ce6f2897f60f0d939ddb7fd3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355442
Commit-Queue: Lambros Lambrou <lambroslambrou@chromium.org>
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Auto-Submit: Lambros Lambrou <lambroslambrou@chromium.org>
Cr-Commit-Position: refs/heads/main@{#42534}
2024-06-25 18:12:27 +00:00
Philipp Hancke
3fede875fe Remove rtc_base/helpers.h and crypto_random include in port allocator
after fixing Chromium (and possibly other downstream projects)

BUG=webrtc:339300437

Change-Id: I1637b379ce778e78b4fb73cb44b291c2f66c3606
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/353766
Commit-Queue: Philipp Hancke <phancke@meta.com>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42533}
2024-06-25 16:10:15 +00:00
Olov Brändström
27abd690cc Add RTC_EXPORT to TimeUTCMicros
A requirement for https://chromium-review.git.corp.google.com/c/chromium/src/+/5314759.

Bug: chromium:333359951
Change-Id: I010ecbc0966a5d9d17b0869ed8eb2c2f48e6cd86
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355181
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42532}
2024-06-25 14:55:14 +00:00
Danil Chapovalov
eaea3e26d7 Extend AudioEncoderFactoryTemplate to pass Environment to AudioEncoder factory traits
Bug: webrtc:343086059
Change-Id: I1b8f066708ad630b9911bbcaacdc34542dd247ee
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355480
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Jakob Ivarsson‎ <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42531}
2024-06-25 13:34:54 +00:00
Sergio Garcia Murillo
d03ce76147 Add support for pred_weight_table
Bug: webrtc:42229950
Change-Id: Iea2702f23b4f2ae42b2c12175ff9dd64e9c71e8b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355004
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42530}
2024-06-25 10:09:34 +00:00
Björn Terelius
e71fa4e8b9 Revert "Clean up SRTP helper functions"
This reverts commit c47f649e67cdcd27842aa370c693154b67e66116.

Reason for revert: Breaks downstream build

Original change's description:
> Clean up SRTP helper functions
>
> BUG=None
>
> Change-Id: If1df1828a09aef2e335c028cf4425c9507906aac
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/354649
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Philipp Hancke <phancke@meta.com>
> Cr-Commit-Position: refs/heads/main@{#42525}

Bug: None
Change-Id: Iff893decb2be00545b623b72383240926cb0d553
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355481
Auto-Submit: Björn Terelius <terelius@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42529}
2024-06-25 09:58:52 +00:00