Skip to content

Update WebRTC to m112 #21

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2,512 commits into from
May 9, 2023
Merged

Update WebRTC to m112 #21

merged 2,512 commits into from
May 9, 2023

Conversation

mininny
Copy link
Contributor

@mininny mininny commented May 6, 2023

No description provided.

jleconte2 and others added 30 commits January 18, 2023 10:28
This CL removes the iOS sim bots 12, 13, 14 and replaces them with a unique bot that runs the test on iOS version 14, 15 and 16.

Change-Id: I46673bad44c2c5539fbbf266cc9d5d468557022e
Bug: b/264630045
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290999
Reviewed-by: Mirko Bonadei <[email protected]>
Commit-Queue: Jeremy Leconte <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39131}
This reverts commit b802369.

Reason for revert: Breaking WPT tests in Chrome. Example build https://ci.chromium.org/ui/p/chromium/builders/try/linux-rel/1263191/overview

Original change's description:
> Ensure RTCRtpSenders are always created with one encoding
>
> It is possible to have AddTransceiver calls with an empty array
> of encodings or AddTrack calls. In both cases, before negotiation,
> the sender's encodings array would be empty and it was not possible
> to update any value.
>
> Now, a default entry should be created in those cases, allowing to
> update the configuration before negotiation.
>
> Bug: webrtc:10567
> Change-Id: I1271e2965e1a97c1e472451e0ab8867fc24f6c2b
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290994
> Auto-Submit: Florent Castelli <[email protected]>
> Reviewed-by: Henrik Boström <[email protected]>
> Commit-Queue: Florent Castelli <[email protected]>
> Cr-Commit-Position: refs/heads/main@{#39126}

Bug: webrtc:10567
Change-Id: Ib8931b38182251baac616540788a02a5fafaf670
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291120
Bot-Commit: [email protected] <[email protected]>
Commit-Queue: Evan Shrubsole <[email protected]>
Auto-Submit: Evan Shrubsole <[email protected]>
Reviewed-by: Harald Alvestrand <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39132}
Change-Id: I9313b9ab034be8cf3933d82f72c4c8e8858ca6a5
Bug: b/264630045
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291100
Reviewed-by: Mirko Bonadei <[email protected]>
Commit-Queue: Jeremy Leconte <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39133}
… sent

Bug: webrtc:5540, webrtc:10198
Change-Id: I408b471cbd14c12bdb98606999807cc7f2b56c3f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/289100
Commit-Queue: Danil Chapovalov <[email protected]>
Reviewed-by: Erik Språng <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39134}
This is a reland of commit fa962ff

Original change's description:
> Move leb128 helper functions into own build target
>
> to remove duplicated implementation of these functions between av1 packetizer, av1 depacketizer and video allocation rtp header extension
>
> Bug: None
> Change-Id: I30049f31c289bdb9e0aad6520f5145d1f999e635
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290731
> Commit-Queue: Danil Chapovalov <[email protected]>
> Reviewed-by: Philip Eliasson <[email protected]>
> Cr-Commit-Position: refs/heads/main@{#39069}

Bug: None
Change-Id: I091276868599a6716407db2972457507ddd46a8c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290961
Commit-Queue: Danil Chapovalov <[email protected]>
Reviewed-by: Philip Eliasson <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39135}
Receivers no longer need to set extensions in the configuration. That field will be removed in a follow up.

Tested with:
video_loopback --rtp_dump_name="./my.rtpdump" --duration=10
video_replay --input_file=./my.rtpdump

Bug: webrtc:14795
Change-Id: I952cd487cb2f3be8be01a90f6a2312f1fef5d93e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290995
Auto-Submit: Per Kjellander <[email protected]>
Commit-Queue: Mirko Bonadei <[email protected]>
Reviewed-by: Mirko Bonadei <[email protected]>
Reviewed-by: Philip Eliasson <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39136}
…iver::DeliverRtcp

PacketReceiver::DeliverRtp requires delivered packets to have extensions already mapped.
Therefore DirectTransport is provided with the extension mapping.

CallTests and tests derived from CallTest create transports in different ways, this cl change CallTest to create tests in only one way to simplify how extensions are provided to the transport but at the same time still allows different network behaviour.


Change-Id: Ie8b3ad947c170be61e62c02dadf4adedbb3841f1
Bug: webrtc:7135, webrtc:14795
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290980
Reviewed-by: Jakob Ivarsson‎ <[email protected]>
Commit-Queue: Per Kjellander <[email protected]>
Reviewed-by: Erik Språng <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39137}
modernizing the code a bit.

BUG=None

Change-Id: I380e9c2c4b20e3d6fc75d5963b0ed129e722099f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290997
Reviewed-by: Henrik Boström <[email protected]>
Reviewed-by: Ilya Nikolaevskiy <[email protected]>
Commit-Queue: Philipp Hancke <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39138}
Bug: webrtc:7135, webrtc:14795
Change-Id: I0242a3600d4a156eae2315966e5e59e03be8aeab
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290998
Commit-Queue: Per Kjellander <[email protected]>
Reviewed-by: Harald Alvestrand <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39139}
Bug: b/263477303
Change-Id: Ifabfd1c015788e944d1b78ba2a0454c29426c5e3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290993
Commit-Queue: Christoffer Jansson <[email protected]>
Reviewed-by: Jeremy Leconte <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39140}
Bug: chromium:1330308, b/234414450
Change-Id: Iad9d38048b62d2fb99e5c76b072dd929c5e24954
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291101
Reviewed-by: Erik Språng <[email protected]>
Commit-Queue: Philip Eliasson <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39142}
This is used by CRD and export is required for component builds
to work properly.

Bug: chromium:1291247
Change-Id: I281e490b7d00cbd074b96eac905976af38400f8b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291200
Reviewed-by: Alexander Cooper <[email protected]>
Auto-Submit: Salman Malik <[email protected]>
Commit-Queue: Alexander Cooper <[email protected]>
Commit-Queue: Salman Malik <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39143}
Bug: None
Change-Id: I1bd3f9b5e930df7375313014cdffa19ff1692d15
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291164
Bot-Commit: [email protected] <[email protected]>
Commit-Queue: [email protected] <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39144}
This is a reland of commit b802369

Original change's description:
> Ensure RTCRtpSenders are always created with one encoding
>
> It is possible to have AddTransceiver calls with an empty array
> of encodings or AddTrack calls. In both cases, before negotiation,
> the sender's encodings array would be empty and it was not possible
> to update any value.
>
> Now, a default entry should be created in those cases, allowing to
> update the configuration before negotiation.
>
> Bug: webrtc:10567
> Change-Id: I1271e2965e1a97c1e472451e0ab8867fc24f6c2b
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290994
> Auto-Submit: Florent Castelli <[email protected]>
> Reviewed-by: Henrik Boström <[email protected]>
> Commit-Queue: Florent Castelli <[email protected]>
> Cr-Commit-Position: refs/heads/main@{#39126}

Bug: webrtc:10567
Change-Id: I2d52fa5b1d7cfdc9dce279fcf9faf1e0129c9008
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291140
Reviewed-by: Henrik Boström <[email protected]>
Reviewed-by: Harald Alvestrand <[email protected]>
Commit-Queue: Florent Castelli <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39145}
…cketReceiver::DeliverRtcp"

This reverts commit 3b96f2c.

Reason for revert: Seems to cause test failures and perf regressions in tests: webrtc:14833, and  CallPerfTest.Min_Bitrate_VideoAndAudio 


Original change's description:
> Change CallTests to use new PacketReceiver::DeliverRtp and PacketReceiver::DeliverRtcp
>
> PacketReceiver::DeliverRtp requires delivered packets to have extensions already mapped.
> Therefore DirectTransport is provided with the extension mapping.
>
> CallTests and tests derived from CallTest create transports in different ways, this cl change CallTest to create tests in only one way to simplify how extensions are provided to the transport but at the same time still allows different network behaviour.
>
>
> Change-Id: Ie8b3ad947c170be61e62c02dadf4adedbb3841f1
> Bug: webrtc:7135, webrtc:14795
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290980
> Reviewed-by: Jakob Ivarsson‎ <[email protected]>
> Commit-Queue: Per Kjellander <[email protected]>
> Reviewed-by: Erik Språng <[email protected]>
> Cr-Commit-Position: refs/heads/main@{#39137}

Bug: webrtc:7135, webrtc:14795, webrtc:14833
Change-Id: Ib6180a47cf7611ed2bc648acc3b9e5cfeec4d9cf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291220
Owners-Override: Björn Terelius <[email protected]>
Auto-Submit: Per Kjellander <[email protected]>
Reviewed-by: Björn Terelius <[email protected]>
Commit-Queue: Björn Terelius <[email protected]>
Bot-Commit: [email protected] <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39146}
…ding""

This reverts commit fc5d627.

Reason for revert: Breaks upstream WPT tests

Original change's description:
> Reland "Ensure RTCRtpSenders are always created with one encoding"
>
> This is a reland of commit b802369
>
> Original change's description:
> > Ensure RTCRtpSenders are always created with one encoding
> >
> > It is possible to have AddTransceiver calls with an empty array
> > of encodings or AddTrack calls. In both cases, before negotiation,
> > the sender's encodings array would be empty and it was not possible
> > to update any value.
> >
> > Now, a default entry should be created in those cases, allowing to
> > update the configuration before negotiation.
> >
> > Bug: webrtc:10567
> > Change-Id: I1271e2965e1a97c1e472451e0ab8867fc24f6c2b
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290994
> > Auto-Submit: Florent Castelli <[email protected]>
> > Reviewed-by: Henrik Boström <[email protected]>
> > Commit-Queue: Florent Castelli <[email protected]>
> > Cr-Commit-Position: refs/heads/main@{#39126}
>
> Bug: webrtc:10567
> Change-Id: I2d52fa5b1d7cfdc9dce279fcf9faf1e0129c9008
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291140
> Reviewed-by: Henrik Boström <[email protected]>
> Reviewed-by: Harald Alvestrand <[email protected]>
> Commit-Queue: Florent Castelli <[email protected]>
> Cr-Commit-Position: refs/heads/main@{#39145}

Bug: webrtc:10567
Change-Id: If9b5adb5debb7c87a15662a8d0f232405a0e8136
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291221
Auto-Submit: Evan Shrubsole <[email protected]>
Bot-Commit: [email protected] <[email protected]>
Commit-Queue: Harald Alvestrand <[email protected]>
Reviewed-by: Harald Alvestrand <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39147}
Bug: webrtc:14833
Change-Id: I584524cca81e17ac91d581daab6030705ad68dac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291104
Reviewed-by: Erik Språng <[email protected]>
Commit-Queue: Erik Språng <[email protected]>
Auto-Submit: Per Kjellander <[email protected]>
Commit-Queue: Per Kjellander <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39148}
Bug: webrtc:14653
Change-Id: I0c59604b218d0839a126c02914626b8ed2bee76c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291040
Commit-Queue: Fredrik Hernqvist <[email protected]>
Reviewed-by: Henrik Boström <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39149}
This is a reland of commit b802369

Original change's description:
> Ensure RTCRtpSenders are always created with one encoding
>
> It is possible to have AddTransceiver calls with an empty array
> of encodings or AddTrack calls. In both cases, before negotiation,
> the sender's encodings array would be empty and it was not possible
> to update any value.
>
> Now, a default entry should be created in those cases, allowing to
> update the configuration before negotiation.
>
> Bug: webrtc:10567
> Change-Id: I1271e2965e1a97c1e472451e0ab8867fc24f6c2b
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290994
> Auto-Submit: Florent Castelli <[email protected]>
> Reviewed-by: Henrik Boström <[email protected]>
> Commit-Queue: Florent Castelli <[email protected]>
> Cr-Commit-Position: refs/heads/main@{#39126}

Bug: webrtc:10567
Change-Id: I558a95f7b587302b5e95f6ec26d1eb1fedf3dbed
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291240
Reviewed-by: Harald Alvestrand <[email protected]>
Commit-Queue: Florent Castelli <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39150}
Bug: webrtc:13757
Change-Id: I5244ed1148f628df9482f934fdfb509e511a9856
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291103
Commit-Queue: Danil Chapovalov <[email protected]>
Reviewed-by: Emil Lundmark <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39151}
This should help to debug problems with DNS resolution of turn server
name. E.g. DNS server returns fake IP address to block turn server.

Similar change to stun_port.cc were done in
https://webrtc-review.googlesource.com/c/src/+/215926

Bug: None
Change-Id: If1cc410f4cd0f89620d3678aabf05a0f1b22a393
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290992
Reviewed-by: Harald Alvestrand <[email protected]>
Commit-Queue: Yury Yarashevich <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39152}
Change log: https://chromium.googlesource.com/chromium/src/+log/e551fb7716..09356cf622
Full diff: https://chromium.googlesource.com/chromium/src/+/e551fb7716..09356cf622

Changed dependencies
* src/base: https://chromium.googlesource.com/chromium/src/base/+log/8ddd0f919d..b317709a6d
* src/build: https://chromium.googlesource.com/chromium/src/build/+log/68a090ea4c..f87127474b
* src/buildtools/reclient: re_client_version:0.87.0.b6908b3-gomaip..re_client_version:0.93.0.9ed3cef-gomaip
* src/ios: https://chromium.googlesource.com/chromium/src/ios/+log/73218076b1..6f952f13c9
* src/testing: https://chromium.googlesource.com/chromium/src/testing/+log/8f22bbb7f7..72f688213d
* src/third_party: https://chromium.googlesource.com/chromium/src/third_party/+log/451b128dd5..b4079b157f
* src/third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_stdlib: version:[email protected]:[email protected]
* src/third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_stdlib_common: version:[email protected]:[email protected]
* src/third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_stdlib_jdk7: version:[email protected]:[email protected]
* src/third_party/android_deps/libs/org_jetbrains_kotlin_kotlin_stdlib_jdk8: version:[email protected]:[email protected]
* src/third_party/androidx: btXkjr59BovHt7mjeB3OxCJisQRYv3qijJneQHYON6cC..z1Ltgk5lzJuoEqOSTMM3F1QuAXbGFIEN6SQ0jX4qHd0C
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/7a311fe439..1a41c2d59d
* src/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/86cfa62b07..bf7eb5292c
* src/third_party/freetype/src: https://chromium.googlesource.com/chromium/src/third_party/freetype2.git/+log/d680908af2..82ce172669
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/c047ec16b8..0b76cc07c5
* src/third_party/perfetto: https://android.googlesource.com/platform/external/perfetto.git/+log/92ef676d45..0d57f4770c
* src/third_party/r8: jVbxJPYj2eIXMIU3dCVMjSFcpEcwBGbSzKKfgoTM9tIC..P1d7YJypbKC2Tv6UCo5QRdo1UwIyECszSGO583AzYigC
* src/tools: https://chromium.googlesource.com/chromium/src/tools/+log/79a16671a7..5622a601bb
DEPS diff: https://chromium.googlesource.com/chromium/src/+/e551fb7716..09356cf622/DEPS

Clang version changed llvmorg-16-init-14635-ga650f2ec:llvmorg-16-init-17653-g39da55e8
Details: https://chromium.googlesource.com/chromium/src/+/e551fb7716..09356cf622/tools/clang/scripts/update.py

BUG=None

Change-Id: I3dd27b7d553af0bbcffff6c7912440f80ef23af9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291171
Commit-Queue: Autoroller <[email protected]>
Bot-Commit: Autoroller <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39153}
Implement GetProcessResidentSizeBytes for Fuchsia.

Bug: webrtc:14825
Change-Id: I64582ce0da72d3bb0fa61ff64799a1a165e1192f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290922
Commit-Queue: Sarah Pham <[email protected]>
Reviewed-by: Mirko Bonadei <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39154}
Bug: None
Change-Id: I7a24b900ad511df687693339516cc6d757f9145d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291173
Commit-Queue: [email protected] <[email protected]>
Bot-Commit: [email protected] <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39156}
…cketReceiver::DeliverRtcp"

This reverts commit 3e61f88.

Reason for revert: Issue fixed in https://webrtc-review.googlesource.com/c/src/+/291104

Original change's description:
> Revert "Change CallTests to use new PacketReceiver::DeliverRtp and PacketReceiver::DeliverRtcp"
>
> This reverts commit 3b96f2c.
>
> Reason for revert: Seems to cause test failures and perf regressions in tests: webrtc:14833, and  CallPerfTest.Min_Bitrate_VideoAndAudio 
>
>
> Original change's description:
> > Change CallTests to use new PacketReceiver::DeliverRtp and PacketReceiver::DeliverRtcp
> >
> > PacketReceiver::DeliverRtp requires delivered packets to have extensions already mapped.
> > Therefore DirectTransport is provided with the extension mapping.
> >
> > CallTests and tests derived from CallTest create transports in different ways, this cl change CallTest to create tests in only one way to simplify how extensions are provided to the transport but at the same time still allows different network behaviour.
> >
> >
> > Change-Id: Ie8b3ad947c170be61e62c02dadf4adedbb3841f1
> > Bug: webrtc:7135, webrtc:14795
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290980
> > Reviewed-by: Jakob Ivarsson‎ <[email protected]>
> > Commit-Queue: Per Kjellander <[email protected]>
> > Reviewed-by: Erik Språng <[email protected]>
> > Cr-Commit-Position: refs/heads/main@{#39137}
>
> Bug: webrtc:7135, webrtc:14795, webrtc:14833
> Change-Id: Ib6180a47cf7611ed2bc648acc3b9e5cfeec4d9cf
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291220
> Owners-Override: Björn Terelius <[email protected]>
> Auto-Submit: Per Kjellander <[email protected]>
> Reviewed-by: Björn Terelius <[email protected]>
> Commit-Queue: Björn Terelius <[email protected]>
> Bot-Commit: [email protected] <[email protected]>
> Cr-Commit-Position: refs/heads/main@{#39146}

Bug: webrtc:7135, webrtc:14795, webrtc:14833
Change-Id: I3fb0210d7a33c600ead5719ce2acb8cc68ec20bd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291222
Commit-Queue: Per Kjellander <[email protected]>
Reviewed-by: Jakob Ivarsson‎ <[email protected]>
Bot-Commit: [email protected] <[email protected]>
Owners-Override: Per Kjellander <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39157}
Certificates being missing is a sign of a bug (e.g. webrtc:14844, to be
fixed separately) which is why we have a DCHECK. But this DCHECK does
not protect against accessing the invalid iterator if it is a release
build. This CL makes that safe.

Bug: chromium:1408392
Change-Id: I97a82786028e41c58ef8ef15002c3f959bbec7f1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291109
Reviewed-by: Mirko Bonadei <[email protected]>
Commit-Queue: Henrik Boström <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39159}
Creating a data channel or negotiating it can make the SCTP transport
name go from nothing (empty string) to something. Inside the
RTCStatsCollector this is relevant because which transports we have
affect which certificates we should cache, so this is an instance of
having to call ClearStatsCache().

The bug is that we don't. This CL fixes the bug.

I tried to create unittests to cover this, but I was unable to
reproduce the race in a testing environment (if I did it would have
hit an RTC_DCHECK). Not ideal... but I hope we can land it anyway since
the fix is trivial and clearing the cache in response to API calls is
worst case harmless.

Bug: webrtc:14844
Change-Id: Ia7174cde040839e5555237db6de285297120b123
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291112
Reviewed-by: Mirko Bonadei <[email protected]>
Commit-Queue: Henrik Boström <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39160}
Björn Terelius and others added 27 commits February 21, 2023 09:24
Bug: webrtc:14918
Change-Id: I4f521c8db7432739d09b05371879f4814ce2f59b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294288
Reviewed-by: Christoffer Jansson <[email protected]>
Reviewed-by: Jeremy Leconte <[email protected]>
Commit-Queue: Björn Terelius <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39354}
Change log: https://chromium.googlesource.com/chromium/src/+log/1a7287fea3..0763795d99
Full diff: https://chromium.googlesource.com/chromium/src/+/1a7287fea3..0763795d99

Changed dependencies
* fuchsia_vesion: version:11.20230220.1.1..version:11.20230221.0.1
* src/base: https://chromium.googlesource.com/chromium/src/base/+log/e94131d14d..b4e00c1e1f
* src/ios: https://chromium.googlesource.com/chromium/src/ios/+log/29b8b80521..12280da40b
* src/testing: https://chromium.googlesource.com/chromium/src/testing/+log/c58cac70c7..55a2da42a2
* src/third_party: https://chromium.googlesource.com/chromium/src/third_party/+log/fb714f117d..de8b115dfb
* src/third_party/androidx: 5XJ66D6bMy33f2PGbWb1DSMYbCeqjKLqPB5CJXuhL9wC..Q8JPQbrQ0L3piEiSuY49ZgHsn3rkbi1UpetSEm8GmCYC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/6234cc4e01..a22c2597b5
* src/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/62c7a8bad0..30136f0cb7
* src/third_party/freetype/src: https://chromium.googlesource.com/chromium/src/third_party/freetype2.git/+log/bbfcd79eac..713580f41d
* src/third_party/perfetto: https://android.googlesource.com/platform/external/perfetto.git/+log/0d180f4648..f396a983fe
* src/tools: https://chromium.googlesource.com/chromium/src/tools/+log/d9c579e7ee..7472b56c14
DEPS diff: https://chromium.googlesource.com/chromium/src/+/1a7287fea3..0763795d99/DEPS

No update to Clang.

BUG=None

Change-Id: I457442e86c56d627527faa710e2817d3a5281d5b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294312
Commit-Queue: Autoroller <[email protected]>
Bot-Commit: Autoroller <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39355}
[email protected], [email protected]

Bug: webrtc:14913
Change-Id: I1ea9d5bda798ea01fa9ec2a9b8d96cb50ccb9ec2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293920
Reviewed-by: Erik Språng <[email protected]>
Reviewed-by: Henrik Boström <[email protected]>
Commit-Queue: Evan Shrubsole <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39356}
This makes the max bitrate configured in RTP parameter to still be
respected, instead of being overridden by defaults in the case that an
encoder with untrusted QP is reconfigured (e.g. due to some adaptation).

Bug: webrtc:14914
Change-Id: I2d3ff645c069b80ec2e36887e6ce0ecd09a7ecbf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293944
Reviewed-by: Philip Eliasson <[email protected]>
Commit-Queue: Erik Språng <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39357}
…lback)."

This is a reland of commit 8ad4924

See diff between latest Patch Set and PS1. Fixes include:
- VideoStreamEncoder's call to bitrate_adjuster_->OnEncodedFrame()
  is updated to take stream index (spatial or simulcast index) instead
  of only looking at SpatialIndex().
- Migrate test-only helpers to use Spatial/SimulcastIndex correctly.

The fixes are to migrate
some test-only helpers that we had forgot to fix that are used by
external tests.

Original change's description:
> Make SimulcastIndex() and SpatialIndex() distinct (remove fallback).
>
> This CL removes the fallback logic to return the other index when the
> one requested has not been set. This means we can remove the codec gates
> that was previously needed because SpatialIndex() had multiple meanings,
> resolving the TODOs previously added in
> https://webrtc-review.googlesource.com/c/src/+/293343.
>
> We have already migrated all known external dependencies from
> SpatialIndex() to SimulcastIndex() where necessary, unblocking this CL.
>
> PSA: https://groups.google.com/g/discuss-webrtc/c/SDAVg6xJ3gY
>
> Bug: webrtc:14884
> Change-Id: I82787505ab10be151e5f64965b270c45465d63a9
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293740
> Reviewed-by: Ilya Nikolaevskiy <[email protected]>
> Reviewed-by: Erik Språng <[email protected]>
> Commit-Queue: Henrik Boström <[email protected]>
> Reviewed-by: Philip Eliasson <[email protected]>
> Reviewed-by: Evan Shrubsole <[email protected]>
> Cr-Commit-Position: refs/heads/main@{#39343}

Bug: webrtc:14884
Change-Id: Ib966924efca1a040dae881599f0789a7f2ab24a2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294284
Reviewed-by: Philip Eliasson <[email protected]>
Reviewed-by: Erik Språng <[email protected]>
Reviewed-by: Evan Shrubsole <[email protected]>
Commit-Queue: Henrik Boström <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39358}
Change log: https://chromium.googlesource.com/chromium/src/+log/0763795d99..bc324e05cd
Full diff: https://chromium.googlesource.com/chromium/src/+/0763795d99..bc324e05cd

Changed dependencies
* src/base: https://chromium.googlesource.com/chromium/src/base/+log/b4e00c1e1f..f354a1f6fd
* src/build: https://chromium.googlesource.com/chromium/src/build/+log/6be968106c..07ec6f3a67
* src/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/86d8d59707..d110f6238f
* src/buildtools/third_party/libc++/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/43c39fecf3..abad4bb576
* src/buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/f7460fc60a..5559ffe8ca
* src/buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/c4ed9cba55..aecf8d01b9
* src/ios: https://chromium.googlesource.com/chromium/src/ios/+log/12280da40b..3702bec69f
* src/third_party: https://chromium.googlesource.com/chromium/src/third_party/+log/de8b115dfb..35d4bb70e7
* src/third_party/androidx: Q8JPQbrQ0L3piEiSuY49ZgHsn3rkbi1UpetSEm8GmCYC..waVlDuvM1_o0siiUN39LBaTpj0pfqoBRglXQgdicJicC
* src/third_party/freetype/src: https://chromium.googlesource.com/chromium/src/third_party/freetype2.git/+log/713580f41d..7f9499044e
* src/third_party/perfetto: https://android.googlesource.com/platform/external/perfetto.git/+log/f396a983fe..e85c60ec55
* src/third_party/r8: zPOmDMk4QXwcUPUy6oi9KUfzwEIlk0aIB0fl0KQWCGAC..PwglNZFRNPkBBXdnY9NfrZFk2ULWDTRxhV9rl2kvkpUC
* src/tools: https://chromium.googlesource.com/chromium/src/tools/+log/7472b56c14..e23ae148de
DEPS diff: https://chromium.googlesource.com/chromium/src/+/0763795d99..bc324e05cd/DEPS

No update to Clang.

BUG=None

Change-Id: I2be6a3725a3b508af3afdee08eac78261e629141
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294420
Bot-Commit: Autoroller <[email protected]>
Commit-Queue: Autoroller <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39359}
This CL gives the ability to explicitly set the network labels in the network quality metrics reporter, so that reported metrics can be aligned with peer names in case "alice" and "bob" are not used as peer names.

Bug: webrtc:14897
Change-Id: Ib66d4683af71ff4302696aff4dcb9932b47e4efd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293161
Reviewed-by: Harald Alvestrand <[email protected]>
Reviewed-by: Artem Titov <[email protected]>
Reviewed-by: Andrey Logvin <[email protected]>
Reviewed-by: Mirko Bonadei <[email protected]>
Commit-Queue: Artem Titov <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39360}
…creencast_portal.(cc|h)

Bug: webrtc:14917
Change-Id: I40e8f011b7263675aab99c452cda8f89ad137cc5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294283
Auto-Submit: Björn Terelius <[email protected]>
Reviewed-by: Alexander Cooper <[email protected]>
Commit-Queue: Alexander Cooper <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39361}
Change log: https://chromium.googlesource.com/chromium/src/+log/bc324e05cd..d76cada124
Full diff: https://chromium.googlesource.com/chromium/src/+/bc324e05cd..d76cada124

Changed dependencies
* fuchsia_vesion: version:11.20230221.0.1..version:11.20230221.2.1
* src/base: https://chromium.googlesource.com/chromium/src/base/+log/f354a1f6fd..0fc91d5d90
* src/build: https://chromium.googlesource.com/chromium/src/build/+log/07ec6f3a67..07283ef796
* src/ios: https://chromium.googlesource.com/chromium/src/ios/+log/3702bec69f..143d6295ff
* src/testing: https://chromium.googlesource.com/chromium/src/testing/+log/55a2da42a2..b93e19cb40
* src/third_party: https://chromium.googlesource.com/chromium/src/third_party/+log/35d4bb70e7..82835c7ebd
* src/third_party/android_build_tools/aapt2: cbNG7g8Sinh-lsT8hWsU-RyXqLT_uh4jIb1fjCdhrzIC..36NqCian2RIwuM6SFfizdUgKoXyZhy3q6pFfsws0szYC
* src/third_party/android_build_tools/manifest_merger: EnlN2b-khJhe8B9hSfh7UxvglJXEwWDKaMm4ixhLYTMC..EbRaK62t9grqlZqL-JTd_zwM4t1u9fm1x4c2rLE0cqQC
* src/third_party/perfetto: https://android.googlesource.com/platform/external/perfetto.git/+log/e85c60ec55..55985e77ff
* src/third_party/r8/d8: qGtBu6TtxyR5XNy4cmsslb7c946YtkZF5_QCjVP-wc8C..PwglNZFRNPkBBXdnY9NfrZFk2ULWDTRxhV9rl2kvkpUC
* src/tools: https://chromium.googlesource.com/chromium/src/tools/+log/e23ae148de..6e72739081
DEPS diff: https://chromium.googlesource.com/chromium/src/+/bc324e05cd..d76cada124/DEPS

No update to Clang.

BUG=None

Change-Id: I61144a5720b9d6c1a5cfc309fbd9a8ff5f8e78fa
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294460
Bot-Commit: Autoroller <[email protected]>
Commit-Queue: Autoroller <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39362}
verifying these are transferred to the individual m-lines.
Also verify that mixed usage both at session level as well as
media level is not allowed as described in
  https://www.rfc-editor.org/rfc/rfc5285#section-6

BUG=None

Change-Id: Iade387817c9f31362d0a26c5f13a3012c72b51b0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294360
Reviewed-by: Florent Castelli <[email protected]>
Commit-Queue: Philipp Hancke <[email protected]>
Reviewed-by: Harald Alvestrand <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39363}
Bug: webrtc:14919
Change-Id: Iba00b2782b7e7c3dbd345a94aba541fad8c979ee
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294289
Commit-Queue: Jesus de Vicente Pena <[email protected]>
Reviewed-by: Gustaf Ullberg <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39364}
This test verifies perkj's fixes in https://crbug.com/webrtc/14817.
I ran the test 6000 times locally and it didn't fail once.

Bug: webrtc:14817
Change-Id: I3f78f3ae2ca09b328cbfa12a89ad228d3de899c2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294522
Reviewed-by: Per Kjellander <[email protected]>
Commit-Queue: Per Kjellander <[email protected]>
Auto-Submit: Henrik Boström <[email protected]>
Commit-Queue: Henrik Boström <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39365}
in favor of the variant with (or returning) a Timestamp object.

BUG=webrtc:14813,webrtc:13756

Change-Id: I7b40f48f640a8be40a134b380a7a1b99cc99913b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294287
Reviewed-by: Henrik Boström <[email protected]>
Reviewed-by: Danil Chapovalov <[email protected]>
Commit-Queue: Philipp Hancke <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39366}
This class is used for both simulcast and SVC use cases. Update variable
names and code comments to reflect this fact.

Also add TODOs that we'll need to address for VP9 simulcast.

Bug: webrtc:14884
Change-Id: I814c8fa0097306b16d552f55ca391ac8f716348a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294383
Commit-Queue: Henrik Boström <[email protected]>
Reviewed-by: Ilya Nikolaevskiy <[email protected]>
Reviewed-by: Erik Språng <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39367}
Bug: webrtc:11031
Change-Id: I44405d0d15e885307b3134b1b88dcb74b96381fb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294400
Reviewed-by: Erik Språng <[email protected]>
Commit-Queue: Danil Chapovalov <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39368}
Replace the existing variable capture_time_identifier_ms_ with
capture_time_identifier_ in webrtc::VideoFrame and
webrtc::VideoFrame::Builder. This variable uses webrtc::Timestamp as its
type versus using int64_t which creates confusion about whether it is
being recorded in milliseconds/microseconds.

Change-Id: I0b83a6235fb1d5732f7afe2c14d7d6121f1e985b
Bug: webrtc:14878
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293520
Reviewed-by: Harald Alvestrand <[email protected]>
Commit-Queue: Palak Agarwal <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39369}
With LTR and SVC etc., H.264 should be able to skip lost frames, and continue to play from the new frames. With DependencyDescriptor, it is allowed to reference the previous frames, even there is a gap in the middle. However, we found there is a special logic for H.264 in packet_buffer.cc, which requires no gap for H.264.

We should allow gaps if the packet has GenericDescriptorInfo (either GenericDescriptor or DependencyDescriptor header extension).

Bug: webrtc:14887
Change-Id: Id66726bab33229bd883f257136ff2e8523fb44c0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294062
Commit-Queue: Philip Eliasson <[email protected]>
Reviewed-by: Philip Eliasson <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39370}
This uses the field trial introduced is crbug.com/1406331 and
extends the usage to OpenH264. This simplifies experimentation
whether this change improves performance without requiring
multi-slice encoding.

BUG=webrtc:14368

Change-Id: I0031e59059f7113dd5453234869c957d46f311bb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294340
Reviewed-by: Erik Språng <[email protected]>
Reviewed-by: Sergey Silkin <[email protected]>
Reviewed-by: Henrik Boström <[email protected]>
Commit-Queue: Philipp Hancke <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39371}
Without the flag enabled: https://screenshot.googleplex.com/BZ6fqsNHQAUxbyU

With the flag enabled: https://screenshot.googleplex.com/4GKrfvAdUpsQDx9

Bug: webrtc:12707
Change-Id: Ia1a9761aeaedc57cff6a2d1eca3c61519b9dd26e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293660
Commit-Queue: Diep Bui <[email protected]>
Reviewed-by: Per Kjellander <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39372}
Bug: webrtc:13931, webrtc:14920
Change-Id: I451869e295e099a1d08c0c80e481decd53149f1b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294382
Reviewed-by: Henrik Boström <[email protected]>
Commit-Queue: Harald Alvestrand <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39373}
This CL propagates capture_time_identifier introduced in
webrtc::VideoFrame and propagates it to EncodedImage. For use cases
involving EncodedTransforms, this identifier is further propagated to
TransformableVideoSenderFrame.

VideoEncoder::Encode function is overriden by each encoder. Each of
these overriden functions needs to be changed so that they can handle
this new identifier and propagate its value in the created EncodedImage.

Change-Id: I5bea4c5a3fe714f1198e497a4bcb5fd059afe516
Bug: webrtc:14878
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291800
Reviewed-by: Tony Herre <[email protected]>
Reviewed-by: Harald Alvestrand <[email protected]>
Commit-Queue: Palak Agarwal <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39374}
Bug: webrtc:14708
Change-Id: I7926b3cfa6530e02eb13c31fecbc9e2e73f78f71
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293744
Reviewed-by: Tove Petersson <[email protected]>
Reviewed-by: Danil Chapovalov <[email protected]>
Commit-Queue: Tony Herre <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39375}
The Xenial instrumented libraries are no longer used and can be removed.

Bug: chromium:1260217
Change-Id: If3e7cb97f8e6d1b1b482e43885b215d5b199333e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294640
Reviewed-by: Mirko Bonadei <[email protected]>
Auto-Submit: Thomas Anderson <[email protected]>
Commit-Queue: Mirko Bonadei <[email protected]>
Cr-Commit-Position: refs/heads/main@{#39376}
…back

Since AddTrack now has an implicit init_encodings value, it will also
have a StableState saved when associating a transceiver.
That state may not have a saved mid and mline_index, and so on a
rollback, it could blindly reset the mid and mline_index of an
associated transceiver.

This is wrong, the mid and mline_index of associated transceivers
should only be updated when the StableState objects actually
have one saved.

(cherry picked from commit b3d424c)

Bug: chromium:1424238
Change-Id: I8e80a04cd072d90200ca7643de892c0ef29b1f1a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/297920
Commit-Queue: Florent Castelli <[email protected]>
Reviewed-by: Henrik Boström <[email protected]>
Cr-Original-Commit-Position: refs/heads/main@{#39577}
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/297983
Reviewed-by: Per Kjellander <[email protected]>
Commit-Queue: Henrik Boström <[email protected]>
Cr-Commit-Position: refs/branch-heads/5615@{#1}
Cr-Branched-From: cdfeb4f-refs/heads/main@{#39376}
This reverts commit be03c09.
Causes regression in web projects that
1/ add a stopped-by-default extension in SRD
2/ call createAnswer
3/ munge the stopped-by-default extension back in SLD
4/ create a subsequent offer and expect the extension to be present

BUG=chromium:1427442,chromium:1051821

Change-Id: I2e48831e92384963a254d873398f54eaee96739a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299143
Reviewed-by: Harald Alvestrand <[email protected]>
Commit-Queue: Philipp Hancke <[email protected]>
Reviewed-by: Henrik Boström <[email protected]>
Cr-Commit-Position: refs/branch-heads/5615@{#2}
Cr-Branched-From: cdfeb4f-refs/heads/main@{#39376}
…to-m112

# Conflicts:
#	call/rtp_payload_params.cc
#	call/rtp_video_sender.cc
#	call/rtp_video_sender_unittest.cc
#	net/dcsctp/tx/outstanding_data_test.cc
#	pc/rtp_sender_receiver_unittest.cc
#	sdk/objc/api/peerconnection/RTCPeerConnectionFactory.h
#	sdk/objc/api/peerconnection/RTCPeerConnectionFactory.mm
#	sdk/objc/native/src/audio/audio_device_ios.h
#	tools_webrtc/ios/build_ios_libs.py
@x-0o0 x-0o0 self-requested a review May 9, 2023 02:09
Copy link

@x-0o0 x-0o0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it was a very hard review 🤣

@mininny mininny merged commit 685f7cb into develop May 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.