Commit graph

40253 commits

Author SHA1 Message Date
Philipp Hancke
4f51b34ab8 Add switch reason to verbose logging of SortAndSwitchConnection
while this is already logged when actually switching, knowing
why connections get sorted and evaluated may be useful.

BUG=None

Change-Id: I1449b0e1fb3624c04d7fb2730a05ffa7c7d1f37a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313100
Reviewed-by: Sameer Vijaykar <samvi@google.com>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#40521}
2023-08-07 16:52:06 +00:00
Mirko Bonadei
c59be6d261 Roll chromium_revision 10080947c0..6b95b8aa08 (1174188:1175249)
Change log: 10080947c0..6b95b8aa08
Full diff: 10080947c0..6b95b8aa08

Changed dependencies
* src/base: 3de7d110cb..dcfe245ca1
* src/build: 3dd34519f9..b74cdc4550
* src/buildtools: ca163845c7..16be42a9ff
* src/ios: a265a85ace..51a637843f
* src/testing: 85b0f51488..b946312a89
* src/third_party: 53a08ec089..93b5f4c408
* src/third_party/android_build_tools/manifest_merger: UwtCH6usmvLSrqbzGSTrjqJ1AJnNh-Vkq4hCEKvDM5oC..8fr-1Vf_pfxN9ulzWVaZvIXggDgWDs-0dtlGA1Sue48C
* src/third_party/androidx: ZIfpMhRlZ2Wm-GCtxgdXmEUojZK4r6xCyO7sLg51fjgC..y7rF_rx56mD3FGhMiqnlbQ6HOqHJ95xUFNX1m-_a988C
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/b119dc414e..84e3795d98
* src/third_party/depot_tools: d411904b84..54e86436a8
* src/third_party/freetype/src: 5769f13a6b..9e3c5d7e18
* src/third_party/perfetto: e568f2855d..ab16995d92
* src/tools: 1a0f13f46a..4057b98943
DEPS diff: 10080947c0..6b95b8aa08/DEPS

No update to Clang.

BUG=b/293234089

Change-Id: I84b9c8309208b0bb3cb492ac5a8952c48ede0c6f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313200
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Christoffer Jansson <jansson@webrtc.org>
Owners-Override: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40520}
2023-08-07 13:57:06 +00:00
Jonas Oreland
fc92d33327 Add StunDictionary - patch 2
This patch hooks up the StunDictionary to Connection
and P2PTransportChannel.

Bug: webrtc:15392
Change-Id: Ibeea4d8706ebd42f2353d9d300631c02bf0d484d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/315100
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40519}
2023-08-07 13:10:00 +00:00
Mirko Bonadei
2bfa071d09 Add GN flag for an easier JNI generator upgrade.
Bug: b/293234089
Change-Id: I06dca333a806992cbff1b175f1b0875728a9f1fb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/315120
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Christoffer Jansson <jansson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40518}
2023-08-07 11:41:50 +00:00
Harald Alvestrand
34d82df2ba Use ArrayView versions of SendRtp and SendRtcp
This CL adds [[deprecated]] to the old signatures, and uses the new
signatures throughout.

Bug: webrtc:14870
Change-Id: Ic9a8198ac0a2f954e1b2e7d05a55dbe04342f958
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314962
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40517}
2023-08-07 08:28:48 +00:00
Christoffer Jansson
8dc55689d2 Reland "Skip NetworkTest if IPV4 is not available"
This reverts commit c71bfccaa5.

Reason for revert: Downstream is seemingly fixed.

Original change's description:
> Revert "Skip NetworkTest if IPV4 is not available"
>
> This reverts commit 73ae5ca594.
>
> Reason for revert: Speculative revert due to downstream project breaking.
>
> Original change's description:
> > Skip NetworkTest if IPV4 is not available
> >
> > Bug: b/292167110
> > Change-Id: I6d55524e53d134d9828a85b9d38a4fea71f0af5b
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314920
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > Cr-Commit-Position: refs/heads/main@{#40509}
>
> Bug: b/292167110
> Change-Id: I1322d239e699e005419fbb33bf9b00eed0e07664
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/315000
> Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
> Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
> Owners-Override: Christoffer Jansson <jansson@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#40515}

Bug: b/292167110
Change-Id: I5fe4ea203118b043a83b046144f2a9420b1cba77
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/315060
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#40516}
2023-08-07 07:49:55 +00:00
Christoffer Jansson
c71bfccaa5 Revert "Skip NetworkTest if IPV4 is not available"
This reverts commit 73ae5ca594.

Reason for revert: Speculative revert due to downstream project breaking.

Original change's description:
> Skip NetworkTest if IPV4 is not available
>
> Bug: b/292167110
> Change-Id: I6d55524e53d134d9828a85b9d38a4fea71f0af5b
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314920
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#40509}

Bug: b/292167110
Change-Id: I1322d239e699e005419fbb33bf9b00eed0e07664
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/315000
Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Christoffer Jansson <jansson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40515}
2023-08-04 12:57:24 +00:00
Philipp Hancke
e2e04513e7 stats: implement fecSsrc on inbound-rtp
which is present if a fec mechanism like FlexFEC is negotiated

spec change:
  https://github.com/w3c/webrtc-stats/pull/765

BUG=webrtc:15250

Change-Id: I7d71d49fab0153d734f22831e6684d2acfc647fb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314981
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40514}
2023-08-04 12:54:48 +00:00
Jonas Oreland
b17806a4cf Add StunDictionary
This patch adds a StunDictionary.
The dictionary has a reader and a writer.
A writer can update a reader by creating a delta.
The delta is applied by the reader, and the ack is applied by the
writer.

Using this mechanism, two ice agents can (in the future) communicate
properties w/o manually needing to add new code.

The delta and delta-ack attributes has been allocated at IANA.

Bug: webrtc:15392
Change-Id: Icdbaf157004258b26ffa0c1f922e083b1ed23899
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314901
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40513}
2023-08-04 12:08:44 +00:00
Harald Alvestrand
b38d9d2b6f Add ArrayView versions of SendRtp and SendRtcp
This is part of the long term plan to stop using pointer + length
to pass around buffers.

Bug: webrtc:14870
Change-Id: Ibaf5258fd326b56132b9b5a8a6b1563a763ef2f8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314960
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40512}
2023-08-04 11:20:53 +00:00
Mirko Bonadei
cad3aed5fc Add setters to NetworkEmulationManager::SimulatedNetworkNode::Builder.
Bug: b/294494713
Change-Id: I89130a4742da5f04680aa38721afcd7f91fb30ad
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314980
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40511}
2023-08-04 10:38:59 +00:00
Philipp Hancke
9b82b2f8d6 stats: implement RTX ssrc on inbound-rtp/outbound-rtp
spec change:
  https://github.com/w3c/webrtc-stats/pull/765

BUG=webrtc:15096

Change-Id: I7c72193c23460330b6bb612a9568641d187ee638
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/312362
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@{#40510}
2023-08-04 08:41:52 +00:00
Christoffer Jansson
73ae5ca594 Skip NetworkTest if IPV4 is not available
Bug: b/292167110
Change-Id: I6d55524e53d134d9828a85b9d38a4fea71f0af5b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314920
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40509}
2023-08-03 14:25:09 +00:00
Henrik Boström
9f3ea9d934 Increase concealement threshold for debug bots.
Internal bots are flaking, 0.96666666666666667 concealement observed.

Bug: b/294020344
Change-Id: I65ff8d1dcfe52ba4c8024736cf203005d5c1e4f0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314541
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Christoffer Jansson <jansson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40508}
2023-08-03 14:08:37 +00:00
Danil Chapovalov
7f41b0b073 When simulating chains from VP9 codec specific info support first_active_layer > 0
Bug: webrtc:11999
Change-Id: Ie2bae8113968fdab330f2c89e5f5416a79f14dc7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314900
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40507}
2023-08-03 13:19:00 +00:00
Jordan Rose
fb5a4a366b build_ios_libs.py: Allow customizing the deployment target
Previously, this script hardcoded deployment targets for device,
simulator, and Catalyst builds. This commit turns those into minimums
and allows callers to pass a higher version with --deployment-target.

Bug: None
Change-Id: I9398a8466dfa35ebac5e198aef6ec4f521054cc6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314420
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40506}
2023-08-03 07:02:30 +00:00
webrtc-version-updater
33eff43a12 Update WebRTC code version (2023-08-03T04:03:48).
Bug: None
Change-Id: I8e47e3c4d7835a6f62eb9f446cbabc420757cadd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314881
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@{#40505}
2023-08-03 05:47:36 +00:00
Danil Chapovalov
ebb2bfd239 Delete deprecated member CodecSpecificInfoVP9::end_of_picture
This field is unused. It was deprecated in
https://webrtc-review.googlesource.com/c/src/+/192542

Bug: None
Change-Id: Iba264c03e16fc240893595075b525d44efa8ab96
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314720
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40504}
2023-08-02 14:05:31 +00:00
Danil Chapovalov
50ca701e68 Mitigate scenario when VP9 HW encoder uses less spatial layers than configured
log an error and reset chain instead of propagating oversized chain diff, thus avoid DCHECK in RtpDependencyDescriptorWriter.

Bug: webrtc:11999, chromium:1467865
Change-Id: If0d186ce7d3a108799ef2b42dd4a3791db33f1a7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314501
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40503}
2023-08-02 11:54:46 +00:00
Philipp Hancke
55b89a8068 Rename cipher_suite to crypto_suite
and replace "cs" in the appropriate places.

This is the terminology used by
https://www.rfc-editor.org/rfc/rfc4568#section-10.3.2.1
and
https://www.iana.org/assignments/sdp-security-descriptions/sdp-security-descriptions.xhtml

BUG=None

Change-Id: I45f2c52eb266c0f94bdd710a9b941142b9411827
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314483
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40502}
2023-08-02 11:45:24 +00:00
Mirko Bonadei
23fc2bee6b Remove backwards compatibity #include
Bug: b/292167110
Change-Id: I3d9766ac095256a069c9bae34d6d3402819d0e15
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314680
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40501}
2023-08-02 11:39:30 +00:00
Sergey Silkin
86a7969a6d Synchronize access to callbacks map
Bug: webrtc:14852
Change-Id: I65a608976056865849f4175411febc8093402de1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314481
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40500}
2023-08-02 11:38:25 +00:00
Danil Chapovalov
9a09ed73c5 Cleanup RemoteBitrateEstimatorSingleStream
Store Detectos in a map by value instead of by unccessary pointer

Bug: None
Change-Id: Iab9904aafca02d9f9ae6633c87de860a5bd62ac7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313621
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40499}
2023-08-02 10:11:38 +00:00
Christoffer Jansson
fe2e7eaa20 Reland "Add ARC enablement to WebRTC only if it isn't already present"
This reverts commit 787e326c18.

Reason for revert: Downstream fixed

Original change's description:
> Revert "Add ARC enablement to WebRTC only if it isn't already present"
>
> This reverts commit 96137813f7.
>
> Reason for revert: Breaks downstream projects.
>
> Original change's description:
> > Add ARC enablement to WebRTC only if it isn't already present
> >
> > WebRTC unconditionally enables ARC for Objective-C code. Chromium is
> > now enabling this globally, so change WebRTC to only enable it if it's
> > not already enabled.
> >
> > Bug: chromium:733237
> > Change-Id: I0d5694d0640bb79ae83209aa0bdd36e099b85042
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314180
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > Cr-Commit-Position: refs/heads/main@{#40493}
>
> Bug: chromium:733237
> Change-Id: Ifbf79c030262897baec44ba0e67b21d54fcb6f77
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314482
> Owners-Override: Christoffer Jansson <jansson@webrtc.org>
> Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
> Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
> Cr-Commit-Position: refs/heads/main@{#40496}

Bug: chromium:733237
Change-Id: I47291a4c99ea3a70ea3083f8b9fe44f3ecc6582f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314700
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40498}
2023-08-02 09:41:17 +00:00
Philipp Hancke
a9d5141367 Rename cricket::RtpParameters and derived classes
Renames
  cricket::RtpParameters
to
  cricket::MediaChannelParameters
in order to distinguish it better from webrtc::RtpParameters.
This involves renaming
  RtpSendParameters -> SenderParameters
  AudioSendParameters -> AudioSenderParameters
  AudioRecvParameters -> AudioReceiverParameters
  VideoSendParameters -> VideoSenderParameters
  VideoRecvParameters -> VideoReceiverParameters

BUG=webrtc:13931

Change-Id: I664595ee3863418c0c6ca092ca77127be0f9498f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314360
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#40497}
2023-08-01 08:55:02 +00:00
Christoffer Jansson
787e326c18 Revert "Add ARC enablement to WebRTC only if it isn't already present"
This reverts commit 96137813f7.

Reason for revert: Breaks downstream projects.

Original change's description:
> Add ARC enablement to WebRTC only if it isn't already present
>
> WebRTC unconditionally enables ARC for Objective-C code. Chromium is
> now enabling this globally, so change WebRTC to only enable it if it's
> not already enabled.
>
> Bug: chromium:733237
> Change-Id: I0d5694d0640bb79ae83209aa0bdd36e099b85042
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314180
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#40493}

Bug: chromium:733237
Change-Id: Ifbf79c030262897baec44ba0e67b21d54fcb6f77
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314482
Owners-Override: Christoffer Jansson <jansson@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#40496}
2023-08-01 07:30:29 +00:00
webrtc-version-updater
b39633462c Update WebRTC code version (2023-08-01T04:05:22).
Bug: None
Change-Id: Id4f1c7c8109abba5ec4d3585691ee026e46db33a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314441
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@{#40495}
2023-08-01 05:31:25 +00:00
Henrik Boström
875cd32eac Fix inconsistency with x-goog-max-bitrate and maxBitrate.
In the past, only encodings.size() == 1 was considered singlecast. But
it's possible to have singlecast via {active,inactive,inactive} too so
this condition should be updated.

This CL ignores x-goog-max-bitrate if maxBitrate was specified on *any*
encoding. This fixes the case of {active,inactive,inactive} resolving
the singlecast inconsistency, but it also takes things one step further
and ignores x-goog-max-bitrate in simulcast cases as well (if any
active encoding has a maxBitrate), as it is not clear why simulcast
should behave differently from singlecast with regards to this flag.

Bug: webrtc:15390
Change-Id: If89a488249239a6bd10fdd56c599ccd2e6ec26fc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313540
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40494}
2023-07-31 14:57:56 +00:00
Avi Drissman
96137813f7 Add ARC enablement to WebRTC only if it isn't already present
WebRTC unconditionally enables ARC for Objective-C code. Chromium is
now enabling this globally, so change WebRTC to only enable it if it's
not already enabled.

Bug: chromium:733237
Change-Id: I0d5694d0640bb79ae83209aa0bdd36e099b85042
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/314180
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40493}
2023-07-31 11:47:49 +00:00
Philipp Hancke
4b87d7ac2a Remove Codec template from RtpParameters and helper functions
BUG=webrtc:15214

Change-Id: I3874c4a5089216dab3d072df7854040d5d05bcc9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313500
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#40492}
2023-07-31 10:49:51 +00:00
Mirko Bonadei
0d8b79eb40 Reland "Extract HasIPv4Enabled/HasIPv6Enabled."
This is a reland of commit 86cfe50c0e

The fix was to add a backwards compatible #include + build dep.
They will be removed once Chromium is migrated.

Original change's description:
> Extract HasIPv4Enabled/HasIPv6Enabled.
>
> Bug: b/292167110
> Change-Id: Idafa4ef23e87951bdd0276c29dee3e7f8be68476
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/312580
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#40478}

Bug: b/292167110
Change-Id: I9797f52adf15aba57e114d0a1efec0f757ead278
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313264
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40491}
2023-07-31 07:51:19 +00:00
Joachim Reiersen
d212551ad3 Update RTC_LOG macro so it can be used when called from xyz::rtc namespaces
Similar to earlier CL https://webrtc-review.googlesource.com/c/src/+/169683. While this is a rather specific use case and solution, currently these macros are using a mix of styles ever since https://webrtc-review.googlesource.com/c/src/+/184934. By switching to ::rtc we can ensure that the right namespace is used.

Bug: webrtc:11400
Change-Id: Id06f09b5224a399bd6b43bf0237422b24b5adfb1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/312980
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40490}
2023-07-31 06:34:54 +00:00
Chunbo Hua
5eb521955a Correct typo from valee to value for color space definitions
Bug: None
Change-Id: I7854669de1216385e188bc53ee0cbd26c002c680
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/312741
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40489}
2023-07-31 06:28:45 +00:00
webrtc-version-updater
bcb0b8eb04 Update WebRTC code version (2023-07-29T04:02:10).
Bug: None
Change-Id: Iac28ba32ac64485126d46154bc1728756bf4fef0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313780
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@{#40488}
2023-07-29 05:44:55 +00:00
Marco Paniconi
a6c76d0c29 svc-av1: Fix to svc_e2e_tests
Re-enable svc disabled test.
Passes with the latest code.

Bug: b/288825767
Change-Id: Ie022442ddbd95c8c8b56feecde873208ddec77b0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/310449
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Marco Paniconi <marpan@google.com>
Cr-Commit-Position: refs/heads/main@{#40487}
2023-07-28 14:10:19 +00:00
Christoffer Jansson
c787adcfbf Remove decommisioned Pixel2 perf bots
Bug: None
Change-Id: I872fe20b9ce901e8a5dd2dd814f00bb7d368e1ec
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313542
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40486}
2023-07-28 13:27:31 +00:00
Danil Chapovalov
4f4e989436 In remote bitrate estimator pass packet using RtpPacketReceived class
Bug: webrtc:15054
Change-Id: I23c9008e1979a56bba9421a00e4f0f8ff937d122
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313261
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40485}
2023-07-28 10:22:16 +00:00
webrtc-version-updater
6e937574f7 Update WebRTC code version (2023-07-28T04:04:17).
Bug: None
Change-Id: I101663769852602a5c7cdc72904be230ed2fdd12
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313483
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@{#40484}
2023-07-28 05:19:31 +00:00
Danil Chapovalov
920abcc9bc In RtpSenderVideo::UpdateConditionalRetransmit use typed time and framerate instead of plain ints
Bug: webrtc:13757
Change-Id: If2df5418dacd2b95387fa74a9bc226426b207aee
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313041
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40483}
2023-07-27 14:35:42 +00:00
Henrik Boström
b90cd91983 Fix first encoding's maxBitrate being ignored when scalability is set.
EncoderStreamFactory has two code paths for creating a stream: the
"simulcast path" and the "default path". Only the former cares about
encoding paramter's maxBitrate. The latter assumes that
`encoder_config.max_bitrate_bps` already encompasses the maxBitrate of
the first encoding, but this is not always the case.

As of M113, when scalability mode is specified, {active,inactive} does
not count as simulcast stream but as a default stream represented by
encoding[0].

The problem is that `encoder_config.max_bitrate_bps` only includes
`encodings[0].max_bitrate_bps` when `encodings.size() == 1` which isn't
the case here.

This CL fixes the problem by making the "create default stream" code
path look at the first encoding's maxBitrate and remove existing
assumptions that `encoder_config.max_bitrate_bps` encompasses
`encodings[0].max_bitrate_bps`. This is a step in the right direction
since we're trying to remove all special cases and have encodings map
1:1 with SSRCs, so the "max bps of entire stream" should indeed be a
separate limit than the per-encoding limits and it was confusing that
sometimes it included and sometimes it excluded encoding[0]'s limit.

This issue did not happen in {inactive,active} since that code path
counts as "simulcast stream", so "default stream" is only ever
applicable for index 0.

TESTED=Simulcast Playground, see https://crbug.com/1455962.

Bug: chromium:1455962
Change-Id: I7c44925b780623b5979751e8959e972293648a3d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313282
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40482}
2023-07-27 13:30:52 +00:00
Mirko Bonadei
6143ec939a [iOS testing] - Cut dependency from test module and app code.
The following can lead to ODR violations with symbols present in the
app and in the test module:

gn path out/Perf //:webrtc_perf_tests_module //sdk:helpers_objc

//:webrtc_perf_tests_module --[public]-->
//:webrtc_perf_tests_module_loadable_module --[private]-->
//test:google_test_runner_objc --[private]-->
//test:test_support_objc --[private]-->
//sdk:helpers_objc

After this CL:

gn path out/Debug/ //:webrtc_perf_tests_module //sdk:helpers_objc
No non-data paths found between these two targets.

Bug: b/292472934
Change-Id: If8a6ecab9b34bea0f52fe91b3404d1afeca685fe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313520
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40481}
2023-07-27 12:50:48 +00:00
Mirko Bonadei
3d7889a4ca Revert "Extract HasIPv4Enabled/HasIPv6Enabled."
This reverts commit 86cfe50c0e.

Reason for revert: Breaks roll into Chromium.

https://ci.chromium.org/ui/p/chromium/builders/try/android-arm64-rel/264191/overview

Original change's description:
> Extract HasIPv4Enabled/HasIPv6Enabled.
>
> Bug: b/292167110
> Change-Id: Idafa4ef23e87951bdd0276c29dee3e7f8be68476
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/312580
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#40478}

Bug: b/292167110
Change-Id: Id7ebb5a673eac3c83a2236d4dfbaf31cce1eb9b6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313262
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40480}
2023-07-27 06:35:55 +00:00
webrtc-version-updater
db7a947172 Update WebRTC code version (2023-07-27T04:02:37).
Bug: None
Change-Id: I8efa68729b2ecc0106b6ec6335e660e1118e98f2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313401
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@{#40479}
2023-07-27 05:34:08 +00:00
Mirko Bonadei
86cfe50c0e Extract HasIPv4Enabled/HasIPv6Enabled.
Bug: b/292167110
Change-Id: Idafa4ef23e87951bdd0276c29dee3e7f8be68476
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/312580
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40478}
2023-07-26 21:17:02 +00:00
Henrik Boström
0145db4091 Recreate the stream when switching from standard to legacy API.
ReconfigureEncoder() is supposed to recreate the send stream when
switching between legacy and standard API paths to ensure that the
upper and lower layers agree on the number of streams that exist
(legacy = 3 encodings but 1 stream, standard = same as encodings).

This successfully happened when going from standard to legacy but due
to a bug in the condition this did not happen when going from legacy to
standard because `scalability_mode_used` is always false here (even
though the standard path does use a scalability mode).

As a consequence, SetRtpParameters()'s call to UpdateSendState()
resulted in a DCHECK-crash. In release builds we still avoid IOOB
because active_modules.size() < rtp_streams.size() but to avoid mistakes
like this happening again in the future, the DCHECK is promoted to a
CHECK.

The fix is to remove the scalability mode condition which didn't make
sense anyway - changing scalability mode does not require recreation but
recreation is necessary when number of streams change, whether or not
scalability mode changed.

TESTED = Using Simulcast Playground and switching back and forth
between standard and legacy and changing scalability modes and
confirming from stats, see https://crbug.com/1467455.

Bug: chromium:1467455
Change-Id: Ide29742972ba83f2e0a11f135ab9b39c39d4eb49
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313280
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40477}
2023-07-26 13:48:41 +00:00
Mirko Bonadei
9130431b54 Add possibility to set RTC_OBJC_TYPE_PREFIX from GN.
This CL also adds the prefix RTC_TESTING to `ios_internal_pure_release_bot_arm64` in order to avoid ODR
violations.

Bug: b/292472934
Change-Id: If63020e679c8670b4c797217eb38fc8c2954d422
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313240
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40476}
2023-07-26 12:29:55 +00:00
Philipp Hancke
8c9e035edb Move codecs() to base MediaDescription
remove some of the templating around the Codec-derived types and
use more modern C++ loops.

BUG=webrtc:15214

Change-Id: I2710628741deca647e7ae88f5966ec7c7f12669a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/311260
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40475}
2023-07-26 05:37:51 +00:00
webrtc-version-updater
87e22fe0ab Update WebRTC code version (2023-07-26T04:02:14).
Bug: None
Change-Id: If442f10e9c9dfa774d9715932bb2b259665964d5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313141
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@{#40474}
2023-07-26 05:18:38 +00:00
Philipp Hancke
ea06be2682 candidate: do not log full IP addresses for related address
since this may contain sensitive data, just like the address.

BUG=None

Change-Id: I3faa1512a15467cd5cc4bcbcaebadb736f1bae07
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/313040
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@{#40473}
2023-07-25 17:19:25 +00:00
Danil Chapovalov
ac412a4ee3 In RTPSenderVideo delete deprecated variants of functions to send video frame
Bug: webrtc:13757
Change-Id: I0bef9cc17e599382cc2265d61a2a538f2534356f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/312860
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40472}
2023-07-25 10:47:47 +00:00