38750 Commits

Author SHA1 Message Date
Rasmus Brandt
bc3a41e0d7 Move deprecated VCMDecodingState to modules/video_coding/deprecated/
This move further clarifies that the file and its class are deprecated. It also cleans up the modules/video_coding root folder a bit.

No functional changes are intended.

Bug: webrtc:14876
Change-Id: Ie6820a820f22635fe7a970db70b9c28d37499848
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296443
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39518}
2023-03-09 19:44:00 +00:00
Rasmus Brandt
21d7cf5879 Remove deprecated logged_events.h
Bug: None
Change-Id: I7969d7792b6614340d71475a600b69c3681a50d0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296760
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39517}
2023-03-09 19:42:57 +00:00
chromium-webrtc-autoroll
e1298afaa6 Roll chromium_revision 2ca230ca9a..9a7a93cd53 (1115026:1115162)
Change log: 2ca230ca9a..9a7a93cd53
Full diff: 2ca230ca9a..9a7a93cd53

Changed dependencies
* src/base: 9b974c1a9c..cff51ef754
* src/build: 80a7bc6cb0..6399b24693
* src/buildtools/third_party/libc++abi/trunk: 55fa81c88a..10804337f2
* src/ios: 0bba2b7854..435e7636f0
* src/testing: 2d94ed0895..c2b82a1c53
* src/third_party: 5b266c2cf6..327373aae3
* src/third_party/androidx: sTQ9mgPBKdbKHMEO0qOnTBp-ntlRVNVkVUd-IvXmK9sC..XCjUL-kCYrHtWTthViJTr-J0qp3K2WLYnumEFAvHFvwC
* src/third_party/perfetto: 9f77c9083c..e866b245ab
* src/third_party/r8: dapol0ILZtTgGEQGfNsvmcFZMjD56XbJH5eo7kG0lAMC..QcJGU2P6jjudE2LELurmeujLPwQhvk7OD5AWGlLIzrYC
* src/tools: 006cf26512..cd90fb935e
DEPS diff: 2ca230ca9a..9a7a93cd53/DEPS

No update to Clang.

BUG=None

Change-Id: Ib19f81b8086cdd71f25f124762fbe43fc2088ad6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296801
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@{#39516}
2023-03-09 17:03:15 +00:00
Danil Chapovalov
b40aedf911 Delete RTPHeader::payload_type_frequency as unused
payload type frequency is not communicated inside an RTP packet and
thus do not belong to the RTPHeader

Bug: None
Change-Id: Ic3e48f1b0507a96ddc697503145f7c8785962926
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296763
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39515}
2023-03-09 16:32:22 +00:00
Henrik Boström
f8bc1169a8 Test that VideoCodecInitializer propagates VP9 resolution alignment.
The GetSvcConfig() call here[1] can result in resolution alignment due
to [2], which gets propagated to the output VideoCodec due to [3].

This CL adds test coverage for this part.
It also removes some comments that are no longer true and updates
VideoCodecInitializerTest's SetUpFor() to make number of simulcast
streams explicit.

[1] https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/modules/video_coding/video_codec_initializer.cc;l=251;drc=e4a304ed4da869ab6131a06b3e8b7e985f50229d
[2] https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/modules/video_coding/codecs/vp9/svc_config.cc;l=112;drc=31acc7339cf658ce82c7ec490ba38d67170920ed
[3] https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/modules/video_coding/video_codec_initializer.cc;l=285;drc=e4a304ed4da869ab6131a06b3e8b7e985f50229d

Bug: webrtc:14884
Change-Id: Id22e36aebab573f53d15dca688642d32c8c4be7a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296762
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39514}
2023-03-09 13:40:12 +00:00
Tommi
f21354ce0e Transition data channnel to kClosed when not connected to a transport.
If a data channel object was closed (via calling Close()) right after
construction and before attaching to a transport, it would never
transition to the `kClosed` state. This addresses that corner case,
which caused a DCHECK to trigger but might also cause a situation
whereby more than one DC instance existed for a given sctp sid.

Bug: chromium:1421534
Change-Id: Id757c0528f929f2e2daa5343236d7f62e309f6cc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296341
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39513}
2023-03-09 11:20:45 +00:00
Rasmus Brandt
5a54800957 Move deprecated VCMFrameBuffer to modules/video_coding/deprecated/
This move further clarifies that the file and its class are deprecated. It also cleans up the modules/video_coding root folder a bit.

No functional changes are intended.

Bug: webrtc:14876
Change-Id: Id1c7fbb969a63eee96fd88c376371aa7eafd0919
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296440
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39512}
2023-03-09 11:05:20 +00:00
philipel
f5127616aa Fix convenience macros for RtcEventLogParseStatus.
Bug: webrtc:14801
Change-Id: I56f352b9997fb6215cc04e90e50861985c22a2b4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296720
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39511}
2023-03-09 11:04:17 +00:00
chromium-webrtc-autoroll
bc992a0ba9 Roll chromium_revision 9931d87c4c..2ca230ca9a (1114909:1115026)
Change log: 9931d87c4c..2ca230ca9a
Full diff: 9931d87c4c..2ca230ca9a

Changed dependencies
* fuchsia_vesion: version:12.20230308.2.1..version:12.20230308.3.1
* src/base: dbe1176bcb..9b974c1a9c
* src/build: 84fcdd153e..80a7bc6cb0
* src/ios: 027bcab676..0bba2b7854
* src/testing: db96735ae9..2d94ed0895
* src/third_party: 539aee77fd..5b266c2cf6
* src/third_party/depot_tools: 638956ac7d..2f5bdd5aea
* src/tools: 19b10df501..006cf26512
DEPS diff: 9931d87c4c..2ca230ca9a/DEPS

No update to Clang.

BUG=None

Change-Id: I85e2b1ddc0c7ae31e0239e4f2ad4f264f2eb8be5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296780
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@{#39510}
2023-03-09 10:34:29 +00:00
Jianhui Dai
7d6b5b878f Add StopOutputOnWriteFailure to RtcEventLogImplTest
Bug: chromium:1288710
Change-Id: Ib913fb392077512d43ea408c95115129d3ff3425
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295800
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Jianhui J Dai <jianhui.j.dai@intel.com>
Reviewed-by: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39509}
2023-03-09 08:50:12 +00:00
chromium-webrtc-autoroll
d4f2ccb7c0 Roll chromium_revision 115884e3e5..9931d87c4c (1114800:1114909)
Change log: 115884e3e5..9931d87c4c
Full diff: 115884e3e5..9931d87c4c

Changed dependencies
* src/base: b21197c21c..dbe1176bcb
* src/build: 58a5818529..84fcdd153e
* src/ios: dea0ccec0f..027bcab676
* src/testing: 9b6ac629b7..db96735ae9
* src/third_party: 3cf66668ea..539aee77fd
* src/third_party/depot_tools: 902fa9a888..638956ac7d
* src/tools: 7d2e4e096c..19b10df501
DEPS diff: 115884e3e5..9931d87c4c/DEPS

No update to Clang.

BUG=None

Change-Id: I292f575d10179f79f87b37985e23e5b1178d92d1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296744
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@{#39508}
2023-03-09 02:51:50 +00:00
chromium-webrtc-autoroll
efc7470e89 Roll chromium_revision e2601310e1..115884e3e5 (1114554:1114800)
Change log: e2601310e1..115884e3e5
Full diff: e2601310e1..115884e3e5

Changed dependencies
* fuchsia_vesion: version:12.20230308.1.1..version:12.20230308.2.1
* src/base: a0763fbd7f..b21197c21c
* src/build: 512b48958e..58a5818529
* src/buildtools: c20dc6aaed..2cdfeaa2d0
* src/buildtools/third_party/libc++/trunk: e136ec5032..3cf0fe4445
* src/buildtools/third_party/libc++abi/trunk: c86761b030..55fa81c88a
* src/ios: 87c164ae2e..dea0ccec0f
* src/testing: d3de492699..9b6ac629b7
* src/third_party: 18bae88bf7..3cf66668ea
* src/third_party/depot_tools: d4c6cbeb61..902fa9a888
* src/third_party/perfetto: c43a9bc21a..9f77c9083c
* src/tools: b9fe6bf682..7d2e4e096c
DEPS diff: e2601310e1..115884e3e5/DEPS

No update to Clang.

BUG=None

Change-Id: I4145b4d19053d29ed12ccb308880f6b01337e7d6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296742
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@{#39507}
2023-03-08 22:57:14 +00:00
chromium-webrtc-autoroll
edca73c884 Roll chromium_revision 11e681944b..e2601310e1 (1114399:1114554)
Change log: 11e681944b..e2601310e1
Full diff: 11e681944b..e2601310e1

Changed dependencies
* fuchsia_vesion: version:11.20230307.3.1..version:12.20230308.1.1
* src/base: 6fb7e1ff0b..a0763fbd7f
* src/build: 984f82d89c..512b48958e
* src/ios: 128eeaf931..87c164ae2e
* src/testing: 37423855c5..d3de492699
* src/third_party: dfed239d19..18bae88bf7
* src/third_party/androidx: ZAoXSZsVgU3BsvsDCSCS47XxbfOLsIFrBr22Wo5yevsC..sTQ9mgPBKdbKHMEO0qOnTBp-ntlRVNVkVUd-IvXmK9sC
* src/third_party/freetype/src: d5c6b948ac..bd6208b712
* src/third_party/kotlin_stdlib: Mg7371mEUwDQH4_z29HdWqYWVlXN6t2dXX0kIutg_SwC..zeFlVAEGvnpaj3JJujWHzRlUiBEm4XeeaMQzVsdW6D4C
* src/third_party/perfetto: cb0e1eabbb..c43a9bc21a
* src/tools: b12d6e2b16..b9fe6bf682
DEPS diff: 11e681944b..e2601310e1/DEPS

No update to Clang.

BUG=None

Change-Id: Ida78bcea8459f0bc094f27934fc64f935d733b32
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296681
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@{#39506}
2023-03-08 16:56:50 +00:00
philipel
de0afb7df6 Move RtcEventLogParseStatus and related macros to a separate file and buildtarget.
Bug: webrtc:14801
Change-Id: I204f46d47933a1ad95682042bc7009e421109ba1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296660
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39505}
2023-03-08 15:18:28 +00:00
Sergey Silkin
a0be70a87c Use CodecTypeToPayloadString
Bug: none
Change-Id: Ic1879497a35ca3c1aa362ca2d3834d8d80a6bc31
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296662
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39504}
2023-03-08 14:38:06 +00:00
Danil Chapovalov
6a0997de01 Skip calling rtcp callback on packets containing invalid rtcp message
Low-Coverage-Reason: added code handles invalid rtcp packet scenarios which are covered by rtcp_receiver_fuzzer
Bug: webrtc:5260
Change-Id: Ia6ba0b736f5732fa6516edb2a5ed1b96079eb4ef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296580
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39503}
2023-03-08 14:19:54 +00:00
philipel
f3e90cd03a OptionalBlobEncoder encode empty string on no input.
Bug: webrtc:14801
Change-Id: I934849322294ae10f0d7cd405e73bc48892543c9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296661
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39502}
2023-03-08 13:11:41 +00:00
Danil Chapovalov
f4dfa1ce01 Reassign TODO from self to bug with more context
No-try: true
Bug: webrtc:14449
Change-Id: Iab1954d4a7a2fd791ad2ac97062ac73d5ce372dd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296581
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39501}
2023-03-08 09:02:13 +00:00
Philipp Hancke
c8c25e5bdf Update SetHeaderExtensionsToNegotiate to match specification
following the updates from
  https://github.com/w3c/webrtc-extensions/pull/142

BUG=chromium:1051821

Change-Id: I2d561bad1ddffb412bdd7e66cf62a3cb5fc73791
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296480
Reviewed-by: Markus Handell <handellm@webrtc.org>
Reviewed-by: Markus Handell <handellm@google.com>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39500}
2023-03-08 08:46:35 +00:00
chromium-webrtc-autoroll
88047adc26 Roll chromium_revision b41c914607..11e681944b (1112929:1114399)
Change log: b41c914607..11e681944b
Full diff: b41c914607..11e681944b

Changed dependencies
* fuchsia_vesion: version:11.20230303.3.1..version:11.20230307.3.1
* src/base: 2e19aacc62..6fb7e1ff0b
* src/build: 6b54f10ade..984f82d89c
* src/buildtools: e0c6f981d5..c20dc6aaed
* src/buildtools/third_party/libc++/trunk: 2213f1846f..e136ec5032
* src/buildtools/third_party/libc++abi/trunk: ff8e691cbc..c86761b030
* src/buildtools/third_party/libunwind/trunk: c5e861c7b4..d101cb5933
* src/ios: c21e6f5fd9..128eeaf931
* src/testing: e554cdb770..37423855c5
* src/third_party: f9ad7ed14e..dfed239d19
* src/third_party/android_build_tools/manifest_merger: saMCpz15quEEWToMloh-A_rMqC0WSdJlyYTFvwAd840C..-MEtSi1dPRGwJdR_aJbVAJ75_Kb8QMDJXBXrRIQlO70C
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/dabfa7bf23..2da767c6c1
* src/third_party/depot_tools: 1fc4378acc..d4c6cbeb61
* src/third_party/freetype/src: 5c37b64062..d5c6b948ac
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/ba3388ace3..080db61c3b
* src/third_party/libvpx/source/libvpx: db69ce6aea..f7ca33c46c
* src/third_party/perfetto: a35f242713..cb0e1eabbb
* src/third_party/r8: yvEIZjnSOPWliC9W2w9jL6S_yiEgGLPIIwutpDIltoYC..dapol0ILZtTgGEQGfNsvmcFZMjD56XbJH5eo7kG0lAMC
* src/third_party/turbine: YQC-btuan_DTe9V9dv_e1LxgYSWeOoDfrd-VSqzIvHkC..epnqx7Yf9QxgyDaU87KJ1fLQvdZ_Mho_JjfpjmIBYWYC
* src/tools: 1dbedd5fb9..b12d6e2b16
* src/tools/luci-go: git_revision:67696c7e93f9dbf03f7bcf7f8fafe9c5728e1ebe..git_revision:e260f2e6d3531f534378dd1017e140374ba8df48
* src/tools/luci-go: git_revision:67696c7e93f9dbf03f7bcf7f8fafe9c5728e1ebe..git_revision:e260f2e6d3531f534378dd1017e140374ba8df48
Added dependencies
* src/third_party/android_deps/libs/net_bytebuddy_byte_buddy_android
* src/third_party/android_deps/libs/org_mockito_mockito_android
DEPS diff: b41c914607..11e681944b/DEPS

Clang version changed llvmorg-17-init-3170-g6e30dffe:llvmorg-17-init-3874-g93a2fecc
Details: b41c914607..11e681944b/tools/clang/scripts/update.py

BUG=None

Change-Id: Icd35715ea888a73b10b6a36927de8e82bf4e51f4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296605
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@{#39499}
2023-03-08 06:34:02 +00:00
Sergey Silkin
a02f90691e Remove resolution alignment requirement (part 2)
https://webrtc-review.googlesource.com/c/src/+/296340 removed hard resolution alignment requirement from HardwareVideoEncoder.initEncode(). This CL removes the hard resolution alignment requirement from HardwareVideoEncoder.resetCodec().

Bug: webrtc:13089
Change-Id: Ia9fcd4d6a7ea16509ec3f12c3c78a76d1eb6c6f0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296520
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39498}
2023-03-07 17:18:55 +00:00
Philipp Hancke
1f98b466b8 stats: rename RTCInboundRTPStreamStats and RTCOutboundRTPStreamStats
to RTCInboundRtpStreamStats and RTCOutboundRtpStreamStats respectively
which follows the camel-casing convention used elsewhere.

The old name is kept around as an alias for a limited amount of time
to allow upgrading dependencies.

BUG=webrtc:14973

Change-Id: Ibf4e65933fd6cc2e7e89955042f6f8fb0f6c7853
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296261
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#39497}
2023-03-07 14:27:47 +00:00
Per K
ffdecdce2c Add possibility to start probe without waiting for media packet
Bug: webrtc:14928
Change-Id: If3c7fe39979e7a4d45b01dd59debd8ac69de3d01
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294521
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39496}
2023-03-07 14:21:32 +00:00
Sergey Silkin
a5f32e445c Set frame capture timestamp
Unlike SW encoder wrappers, Android HW encoder wrapper uses frame capture timestamp instead of RTP timestamp: https://source.corp.google.com/piper///depot/google3/third_party/webrtc/files/stable/webrtc/sdk/android/src/jni/video_frame.cc;rcl=514125748;l=309

Bug: b/261160916, webrtc:14852
Change-Id: Ief76abae659f7ba890371901cc9b505526ac4f97
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296500
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39495}
2023-03-07 13:56:14 +00:00
Harald Alvestrand
2f55370634 Reland "Use two MediaChannels for 2 directions."
This reverts commit 18c869bc36b342cd4a79947067e52a93a04a7808.

Reason for revert: Added a field trial that allows landing the code without affecting performance in prod.

This CL also incorporates subsequent CLs that also had to be reverted.

Original change's description:
> Revert "Use two MediaChannels for 2 directions."
>
> This reverts commit 8981a6fac3d665beac4a58b9453e6c39988a024f.
>
> Reason for revert: Quality regression detected.
>
> Original change's description:
> > Use two MediaChannels for 2 directions.
> >
> > This CL separates the two directions of MediaChannel into two separate objects that do not couple with each other.
> >
> > The notable API change is that receiver local SSRC now has to be set explicitly - before, it was done implicitly when the send-side MediaChannel had a stream added to it.
> >
> > Bug: webrtc:13931
> > Change-Id: I83c2e3c8e79f89872d5adda1bc2899f7049748b3
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/288400
> > Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> > Reviewed-by: Henrik Boström <hbos@webrtc.org>
> > Cr-Commit-Position: refs/heads/main@{#39340}
>
> No-Try: true
> Bug: webrtc:13931
> Change-Id: I791997ad9eff75c3ac9cd2e4bbacf5bc6c3a3a79
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295663
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#39445}

Bug: webrtc:13931
Change-Id: I1318910a685188e2b846c9040e1efc04c2c894ac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296080
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39494}
2023-03-07 12:57:35 +00:00
Harald Alvestrand
ff16f5f88e Add a new test binary to check if split-channel works
This test (and binary) will be used to verify that the field trial
for enabling split-MediaChannel works in both "off" and "on" modes,
so that it can be run as a field trial. It is intended to be deleted
once the conversion to split-MediaChannel is complete.

Bug: webrtc:13931
Change-Id: If62d19be9b2f205067b86dc859946279442fdd58
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296322
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Emil Lundmark <lndmrk@webrtc.org>
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#39493}
2023-03-07 11:14:31 +00:00
Mirko Bonadei
2f5efcc3e9 Add docs about adding a new test binary.
No-Try: True
Bug: None
Change-Id: I4ff887649145bc6c240873685f944b470c309747
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296442
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39492}
2023-03-07 11:12:33 +00:00
Philipp Hancke
9f6ae375e3 Rename header extension API methods
following spec updates from
  https://github.com/w3c/webrtc-extensions/pull/142

BUG=chromium:1051821

Change-Id: I1fd991a5024d38ac59ebe510ea1a48fd6f42d23b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296321
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#39491}
2023-03-07 10:55:58 +00:00
Sergey Silkin
1c1382be0f Dump codec output to ivf/y4m
Bug: b/261160916, webrtc:14852
Change-Id: I19de2210aa03b56752db5ce8b6fd94498123d6f5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296260
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39490}
2023-03-07 08:33:39 +00:00
Sergey Silkin
9259b5f72c Add rate adaptation tests
Bug: b/261160916, webrtc:14852
Change-Id: I58b3647218c961dcf0305c3902f79adb448b73e0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295866
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39489}
2023-03-06 18:33:16 +00:00
Danil Chapovalov
812186d060 Unassign personal TODOs in modules/rtp_rtcp
1st TODO is removed because there are no plans to use RtcpSender for multiple media streams, RtcpTransceiver designed for that instead
2nd TODO is removed because benefits of not producing same report blocks is unclear, while there is risk to break RTT calculation for remote receivers

TODOs in RtcpTransceiver are reassigned to general bug about it instead, in particular to note low priority, same as that issues has.

No-Try: true
Bug: webrtc:10198
Change-Id: Ibcc3691265459c0732019ceba7903e27d57d543a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296360
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39488}
2023-03-06 17:24:50 +00:00
Sergey Silkin
5c978cb262 Remove resolution alignment requirement
This partially reverts https://webrtc-review.googlesource.com/c/src/+/229460. HW encoder wrapper still requires 16x16 alignment but InitEncode() doesn't fail if input resolution doesn't satisfy this requirement.

If encoder can't handle 16x16 then it should return error from MediaCodec.configure(). Many HW encoder can handle resolutions not multiple of 16. Having strict requirement for resolution alignment in InitEncode() blocks usage and testing of these encoders.

This change doesn't affect WebRTC in Chrome Android since RTC encoder wrapper requires 16x16 alignment: https://source.chromium.org/chromium/chromium/src/+/main:media/gpu/android/android_video_encode_accelerator.cc;drc=4abbb981443d7403566ef8aff05fdaca1e837da3;l=494

Bug: webrtc:13089
Change-Id: I0c39908bbcd7d0740a9ee8afa022ba443ffdb4de
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296340
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39487}
2023-03-06 16:51:03 +00:00
Olov Brändström
3ca732d12d Prevent warnings from timestamp aligner used in AudioDeviceBuffer
The logcat is spammed with warnings from timestamp aligner.
This CL make a workaround to use the timestamp aligner to get capture times,
without generating the warnings.

Bug: webrtc:14970
Change-Id: Idab4b298e0484a57841a214db9440f9ac6faaa4d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296324
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Olov Brändström <brandstrom@google.com>
Cr-Commit-Position: refs/heads/main@{#39486}
2023-03-06 15:47:51 +00:00
Tommi
13759bac93 Add safety flag to DataChannelController for PostTask.
Bug: none
Change-Id: If70c1cd9fb4e6fefefa96df819deac052655c49a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296140
Reviewed-by: Markus Handell <handellm@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39485}
2023-03-06 15:29:51 +00:00
Markus Handell
eb277527f0 Stop Posting tasks when we don't need to.
Under the combined network/worker thread project, tasks
are unnecessarily posted to the same thread.

This CL reaps 90% overhead savings in sent packet feedback
as measured with Perfetto under a 49p Meet call.

The identity of the posted calls was uncovered with WebRTC/Chrome's
new location-aware tracing.

TESTED=presubmit + local Meet calls.

Bug: chromium:1373439
Change-Id: I0c43aa4de884831838747d52b21c45fd360106e8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295780
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39484}
2023-03-06 15:13:39 +00:00
Rasmus Brandt
78e1388ea7 Move deprecated VCMSessionInfo to modules/video_coding/deprecated/.
This move further clarifies that the file and its class are deprecated. It also cleans up the modules/video_coding root folder a bit.

No functional changes are intended.

Bug: webrtc:14876
Change-Id: Ieafdb2640b12c254edfac04e98f86f9170c5a71a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295870
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39483}
2023-03-06 14:10:45 +00:00
Danil Chapovalov
8eb7aef196 Relax expectation on the libaom rate controller
Bug: b/271819773
Change-Id: I580b6fde352d1f23773fd394b0ee1543724b828f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296323
Reviewed-by: Jerome Jiang <jianj@google.com>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39482}
2023-03-06 13:58:51 +00:00
Philipp Hancke
1f80451932 Fix stats inheritance and rename RTP to Rtp
making RTCOutboundRtpStreamStats inherit from RTCSentRtpStreamStats
as defined in
  https://www.w3.org/TR/webrtc-stats/#outboundrtpstats-dict*

This removes the duplicated definitions of packetsSent and bytesSent.

BUG=webrtc:14948

Change-Id: I184998b65d59dbd0d1288733d55d8a884e6de970
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295660
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39481}
2023-03-06 13:43:27 +00:00
Tove Petersson
1e2d951762 Add a clone method to the audio frame transformer API.
This will clone an encoded audio frame into a sender frame.

Bug: webrtc:14949
Change-Id: Ie62d9f5ec457541b335bde8f2f6e9b6d24704cf6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294560
Commit-Queue: Tove Petersson <tovep@google.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39480}
2023-03-06 08:22:25 +00:00
webrtc-version-updater
28db3c6f9f Update WebRTC code version (2023-03-05T04:11:09).
Bug: None
Change-Id: I259bb0d69171789d96fab45165679f9647cf5995
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296181
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@{#39479}
2023-03-05 05:50:00 +00:00
Tommi
5bbfb00d1d Check for sctp open messages on the network thread.
Previously we did this on the worker thread, but are transitioning
network traffic away from thread hopping and this is one step.

Bug: webrtc:11547
Change-Id: Ia6fd6540f31a5383c70bb2bf46695e0ee526c4f7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296081
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39478}
2023-03-04 20:22:24 +00:00
Markus Handell
5145d90660 NackRequester::ClearUpTo: avoid PostTasks.
Under the combined network/worker thread project, tasks
are unnecessarily posted to the same thread. Avoid this
by posting only if invoked on a diffferent sequence.

TESTED=presubmit + local Meet calls.

Bug: chromium:1373439
Change-Id: I2ca15b2c725f412ca8a0b8132d6b221f9f6b6032
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295868
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39477}
2023-03-03 22:57:32 +00:00
chromium-webrtc-autoroll
271c01b38f Roll chromium_revision 88f90398eb..b41c914607 (1112751:1112929)
Change log: 88f90398eb..b41c914607
Full diff: 88f90398eb..b41c914607

Changed dependencies
* fuchsia_vesion: version:11.20230303.1.1..version:11.20230303.3.1
* src/base: c921def85c..2e19aacc62
* src/build: fc2cd561ba..6b54f10ade
* src/ios: 4cdd578516..c21e6f5fd9
* src/testing: 6952b7cdba..e554cdb770
* src/third_party: 0216db89f0..f9ad7ed14e
* src/third_party/perfetto: 807e7c0d5e..a35f242713
* src/tools: 384da41916..1dbedd5fb9
DEPS diff: 88f90398eb..b41c914607/DEPS

No update to Clang.

BUG=None

Change-Id: Ia6ed4e158cc64cd300d5bb7086fcf82cfe754c09
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296103
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@{#39476}
2023-03-03 20:56:57 +00:00
Henrik Boström
8d951adc84 Test that configuring SVC with the modern API works as expected.
No surprises here, good.

Bug: webrtc:14884
Change-Id: Ic576e5df14ba7ffb06e908a24ca1b32d6caac9f8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295874
Reviewed-by: Evan Shrubsole <eshr@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39475}
2023-03-03 17:16:58 +00:00
Henrik Boström
6b539c8361 Add API layer tests for SVC reject and SVC fallback paths.
Attempting to SVC can fail for two reasons:
1. If codec preferences does not contain a codec that supports SVC,
   setParameters() rejects, leaving scalabilityMode undefined.
2. If codec preferences does contain a codec that support SVC,
   setParameters() accepts the scalabilityMode, but if a codec is
   configured in response to negotiation that does not support SVC,
   fallback happens.

In the 1) path, undefined scalabilityMode results in VP8 L1T1.
In the 2) path, SVC fallback results in scalabilityMode being set to
L1T2, resulting in VP8 L1T2.

Whether we fail late or early resulting in different configurations may
not be obvious so its good to test these.

Bug: webrtc:14884
Change-Id: Ic5502b90c1628310a7a78ade2ad9fa0d81d91502
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295872
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39474}
2023-03-03 17:13:59 +00:00
Henrik Boström
e16942b5f1 Confirm that L1T1 is the default for VP8 singlecast.
This test does not change any parameters.

Bug: webrtc:14884
Change-Id: Ic315c1b10e729f1f179570350028eef604d714b4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296041
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39473}
2023-03-03 16:54:49 +00:00
Markus Handell
c35a3f13c7 RtpSenderEgress::SendPacket: avoid PostTasks.
Under the combined network/worker thread project, tasks
are unnecessarily posted to the same thread. Avoid this
by posting only if invoked on a diffferent sequence.

TESTED=presubmit + local Meet calls.

Bug: webrtc:137439
Change-Id: I9befde0583b214ebe014617695c2eb9f047de8a0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295869
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39472}
2023-03-03 16:08:07 +00:00
Markus Handell
28c4986e1b WebRTCVideoChannel::OnPacketReceived: avoid PostTasks.
Under the combined network/worker thread project, tasks
are unnecessarily posted to the same thread. Avoid this
by posting only if invoked on a diffferent sequence.

TESTED=presubmit + local Meet calls.

Bug: webrtc:137439
Change-Id: Ic5dd99e5fbb843ad4c54d4466138135ae81596cf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295867
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39471}
2023-03-03 15:27:45 +00:00
Ying Wang
764e89c09d Add a field trial string to make enable_retransmit_all_layers configurable.
Bug: webrtc:14959
Change-Id: I44d88fb0ab43a81ebb7083f27556221dd3606496
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296060
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39470}
2023-03-03 15:20:41 +00:00
chromium-webrtc-autoroll
401e25b2bf Roll chromium_revision 5a93541066..88f90398eb (1112643:1112751)
Change log: 5a93541066..88f90398eb
Full diff: 5a93541066..88f90398eb

Changed dependencies
* fuchsia_vesion: version:11.20230301.3.1..version:11.20230303.1.1
* src/base: 769f313acb..c921def85c
* src/build: ec8c8d82bd..fc2cd561ba
* src/ios: 478ef5b619..4cdd578516
* src/testing: bd6a13fdf3..6952b7cdba
* src/third_party: fa065fedaf..0216db89f0
* src/third_party/perfetto: 33b04a9165..807e7c0d5e
* src/third_party/r8: I0UuO9JN5nvsk_NBcrLoDugx0jHvHvmqp-hBSM9DvLgC..yvEIZjnSOPWliC9W2w9jL6S_yiEgGLPIIwutpDIltoYC
* src/tools: 031166e0d8..384da41916
DEPS diff: 5a93541066..88f90398eb/DEPS

No update to Clang.

BUG=None

Change-Id: Ie7a5b7112f38c2079a429943a7cb6791fd7676a7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296100
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@{#39469}
2023-03-03 14:34:11 +00:00