42898 Commits

Author SHA1 Message Date
Per K
8e137d0509 Replace use of SignalReadPacket in DtlsTransport
Instead use PacketTransportInternal::NotifyPacketReceived

Bug: webrtc:15368
Change-Id: I70a83865c9b564429366bd297abc7dbd50da02e4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340301
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41816}
2024-02-27 06:17:41 +00:00
webrtc-version-updater
09e81ccb27 Update WebRTC code version (2024-02-27T04:11:00).
Bug: None
Change-Id: I39d2496e8a2354b7ad79c9f6dff6cd60a79e7351
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/341181
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@{#41815}
2024-02-27 05:37:54 +00:00
Qiu Jianlin
c32a509da0 Export h.265 bitstream parser APIs.
This exports neccessary API as dependency for h.265 parameter sets tracker to be submitted at CL:5307256.

Bug: webrtc:13485
Change-Id: I042599472f17d12ece4fa862c3715497502a5d76
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340004
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Jianlin Qiu <jianlin.qiu@intel.com>
Cr-Commit-Position: refs/heads/main@{#41814}
2024-02-27 01:36:42 +00:00
Danil Chapovalov
91ebd5fd12 Add missing absl::optional includes
Bug: None
Change-Id: I4abece77b021a866175253cbb2bd212ff618910c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/341022
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41813}
2024-02-26 18:21:16 +00:00
Christoffer Dewerin
7098d110e1 Revert "p2p: separate ICE tie breaker and foundation seed"
This reverts commit d99499abbae94793a02944a1f28f7015816447f5.

Reason for revert: Breaks downstream projects and I can also repro locally when running the rtc_unittest test target (it does however pass in isolation indicating test cleanup/setup needs to be fixed)

Original change's description:
> p2p: separate ICE tie breaker and foundation seed
>
> BUG=webrtc:14626
>
> Change-Id: I189a708192c9cef0b50c3fcbe798b30376d3b547
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/338982
> Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
> Commit-Queue: Philipp Hancke <phancke@microsoft.com>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#41806}

Bug: webrtc:14626
Change-Id: If45f8a33395c562c9388b3d3748e8566efa87ecb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/341081
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Commit-Queue: Christoffer Dewerin <jansson@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Owners-Override: Christoffer Dewerin <jansson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41812}
2024-02-26 16:05:15 +00:00
Per K
14613639bf Make PeerConnectionInteface methods pure virtual.
Bug: none
Change-Id: I3fc8e6f87d3559544e8dfb7cacdd4d0d47ebad7b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340143
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Original-Commit-Position: refs/heads/main@{#41782}
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340961
Owners-Override: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41811}
2024-02-26 13:01:27 +00:00
Danil Chapovalov
5261619ad2 Remove rtc::TaskQueue in AudioDeviceBuffer
Instead stop/delete TaskQueueBase in destructor explicitly and explain potential race.

Bug: webrtc:14169
Change-Id: Ica7a78f149be11ba1a82cbf79d4244c918aa9d0a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/335360
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41810}
2024-02-26 12:55:27 +00:00
Danil Chapovalov
3f7566abda Cleanup rtc::TaskQueue in AsyncAudioProcessing
use TaskQueueBase directly - rtc::TaskQueue wrapper adds no benefit here.

Bug: webrtc:14169
Change-Id: If3d4feb11ffa507919a8ce4d7545172a25f0aa86
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/335322
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41809}
2024-02-26 12:22:56 +00:00
Markus Handell
97df932ecc Remove multiplex codec.
The feature isn't in use by Google and has proven to contain security
issues. It's time to remove it.

Bug: b/324864439
Change-Id: I80344eb2f2060469d2d69a54dc4519fdd02ab4ea
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340324
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41808}
2024-02-26 11:26:04 +00:00
Philipp Hancke
db2f52ba88 Reland "Make setCodecPreferences only look at receive codecs"
This is a reland of commit 1cce1d7ddcbde3a3648007b5a131bd0c2638724b
after updating the WPT that broke on Mac.

Original change's description:
> Make setCodecPreferences only look at receive codecs
>
> which is what is noted in JSEP:
>   https://www.rfc-editor.org/rfc/rfc8829.html#name-setcodecpreferences
>
> Some W3C spec modifications are required since the W3C specification
> currently takes into account send codecs as well.
>
> Spec issue:
>   https://github.com/w3c/webrtc-pc/issues/2888
> Spec PR:
>  https://github.com/w3c/webrtc-pc/pull/2926
>
> setCodecPreferences continues to modify the codecs in an offer.
>
> Also rename RtpSender::SetCodecPreferences to RtpSender::SetSendCodecs for consistent semantics.
>
> BUG=webrtc:15396
>
> Change-Id: I1e8fbe77cb2670575578a777ed1336567a1e4031
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/328780
> 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@{#41719}

Bug: webrtc:15396
Change-Id: I0c7b17f00de02286f176b500460e17980b83b35b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339541
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41807}
2024-02-26 10:52:23 +00:00
Philipp Hancke
d99499abba p2p: separate ICE tie breaker and foundation seed
BUG=webrtc:14626

Change-Id: I189a708192c9cef0b50c3fcbe798b30376d3b547
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/338982
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41806}
2024-02-26 07:47:28 +00:00
Philipp Hancke
7c5f9cf47f Add nonstandard x-google-per-layer-pli fmtp for enabling per-layer keyFrames in response to PLIs
which needs to be added to the remote codecs a=fmtp:

This also forces SimulcastCastEncoderAdapter to avoid issues with codecs that have native simulcast capability but do require synchronized keyframes.

This parameter allows for large-scale experimentation and A/B testing
whether the new behavior has advantages. It is to be considered
transitional and may be removed again in the future.

BUG=webrtc:10107

Change-Id: I81f496c987b2fed7ff3089efb746e7e89e89c033
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/333560
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41805}
2024-02-26 07:11:45 +00:00
webrtc-version-updater
3fff83d02a Update WebRTC code version (2024-02-26T04:03:26).
Bug: None
Change-Id: I2e892556bf007b9121ef833993f8b001f098217f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340902
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@{#41804}
2024-02-26 05:00:07 +00:00
Li-Yu Yu
7391ecf268 Add directory for ChromiumOS specific tools
Bug: b:326526592
Change-Id: I5e1cdc196db88812130861c044129b2e2c284421
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340420
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Li-Yu Yu <aaronyu@google.com>
Cr-Commit-Position: refs/heads/main@{#41803}
2024-02-26 03:46:59 +00:00
Tommi
c7a4b2a7eb Change internal candidate type to enum
Bug: webrtc:15846
Change-Id: I66480cd2a239655a897af5ed2625959e8d6cc33a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/338644
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41802}
2024-02-25 23:46:52 +00:00
Per K
a021d99d2a Move implementation of PacketTransportInternal::RegisterReceivedPacketCallback
Moved to cc file to fix link issue when linking with dynamic library
(crd).

Bug: webrtc:15368
Change-Id: I51cefcd439fda93d1135fcffa75198ab680e8583
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340302
Reviewed-by: Jonas Oreland <jonaso@google.com>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41801}
2024-02-25 18:46:58 +00:00
webrtc-version-updater
d0491a3431 Update WebRTC code version (2024-02-25T04:13:05).
Bug: None
Change-Id: Ieb109f9efa7309072d067bb7a527399a14d21e57
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340761
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@{#41800}
2024-02-25 05:38:42 +00:00
chromium-webrtc-autoroll
4438dd36f9 Roll chromium_revision 1f0d2a10bd..af00cd208a (1264465:1264869)
Change log: 1f0d2a10bd..af00cd208a
Full diff: 1f0d2a10bd..af00cd208a

Changed dependencies
* src/base: 4edcfa650a..65e713f121
* src/build: e36f984f6f..d50a0a69f0
* src/buildtools: 88acf0de99..90b471f681
* src/ios: 0f9045d95e..272a109a71
* src/testing: c863d4783f..2f53c3ca75
* src/third_party: 9338c47087..646491e14a
* src/third_party/android_build_tools/manifest_merger: tQIUabJkFuwAI7BH20b0nn5fKWSPAa_M8cbkzpIW0VkC..ebz_Y3LqXzAa7YSsVInCAghbwoZuC4tySvJ1XPJLCzIC
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/23824fa0fe..4fe29ebc75
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/189b13f92e..4dc7721a14
* src/third_party/depot_tools: 9d64acedea..cb43b5d82d
* src/third_party/freetype/src: 47574f7ea4..546237e1bb
* src/third_party/google_benchmark/src: b177433f3e..344117638c
* src/third_party/libc++/src: 1506720cb3..5a3d13ed42
* src/third_party/r8: ArRcmPYQPKnDIwdwwIr6T8QKNoFb-sQoKac2acxErbsC..XyJJ5GEKJUXldBnoKKraiUIjSbnXGqjNBcLoNuJvKccC
* src/tools: 2b7d7f5046..ac20c40fa9
DEPS diff: 1f0d2a10bd..af00cd208a/DEPS

Clang version changed llvmorg-19-init-2319-g7c4c2746:llvmorg-19-init-2941-ga0b3dbaf
Details: 1f0d2a10bd..af00cd208a/tools/clang/scripts/update.py

BUG=None

Change-Id: I05feeacd77b6489505ecfe10750362c5b8f5f765
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340560
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@{#41799}
2024-02-24 08:43:49 +00:00
Per K
3fe69c504c Update MockPeerConnectionInterface and fake with missing methods.
Goal is to make PeerConnectionInterface methods pure virtual.
This is a split of cl https://webrtc-review.googlesource.com/c/src/+/340143 in order to be able to fix Chromium test RTCPeerConnectionHandlerTest.OnRenegotiationNeeded


Bug: none
Change-Id: I5eac4d9a96c1b594c9e2b3505ef2466046065dc8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340481
Auto-Submit: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41798}
2024-02-24 08:31:45 +00:00
webrtc-version-updater
3f0d399c07 Update WebRTC code version (2024-02-24T04:01:40).
Bug: None
Change-Id: Id55690ecc2f18cc730c3fe18fc4cfa0f08383205
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340371
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@{#41797}
2024-02-24 05:32:32 +00:00
Mirko Bonadei
8adb080624 Roll chromium_revision a4279f2842..1f0d2a10bd (1259805:1264465)
Change log: a4279f2842..1f0d2a10bd
Full diff: a4279f2842..1f0d2a10bd

Changed dependencies
* fuchsia_version: version:18.20240207.3.1..version:18.20240215.1.1
* reclient_version: re_client_version:0.131.1.784ddbb-gomaip..re_client_version:0.132.0.1a8ff94-gomaip
* src/base: fd5eca261f..4edcfa650a
* src/build: a3566ffdee..e36f984f6f
* src/buildtools: f35a7d885a..88acf0de99
* src/buildtools/linux64: git_revision:a2e2717ea670249a34b0de4b3e54f268d320bdfa..git_revision:03d10f1657b4ddace618c34ab61b6357d1ae9c9a
* src/buildtools/mac: git_revision:a2e2717ea670249a34b0de4b3e54f268d320bdfa..git_revision:03d10f1657b4ddace618c34ab61b6357d1ae9c9a
* src/buildtools/reclient: re_client_version:0.131.1.784ddbb-gomaip..re_client_version:0.132.0.1a8ff94-gomaip
* src/buildtools/win: git_revision:a2e2717ea670249a34b0de4b3e54f268d320bdfa..git_revision:03d10f1657b4ddace618c34ab61b6357d1ae9c9a
* src/ios: 37d33be47e..0f9045d95e
* src/testing: a7e90605df..c863d4783f
* src/third_party: 121de111a9..9338c47087
* src/third_party/android_build_tools/manifest_merger: DEhOvoBwWVbV8XAI9NG-tn5g27KeMh2pXa44mY4dY10C..tQIUabJkFuwAI7BH20b0nn5fKWSPAa_M8cbkzpIW0VkC
* src/third_party/android_deps/libs/com_google_android_gms_play_services_base: version:2@18.0.1.cr1..version:2@18.1.0.cr1
* src/third_party/androidx: W2mpTbVe6yo3_GJiaoEVjCGnpicqsSrxcRMEADDJzMMC..t9WCSa3pyfLqHhv8_577tLFVY-ANlLru3HBHLPHdgAAC
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/10a2132f50..23824fa0fe
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/c712e9cc34..189b13f92e
* src/third_party/dav1d/libdav1d: 47107e384b..7b15ca1375
* src/third_party/depot_tools: f76550541c..9d64acedea
* src/third_party/ffmpeg: 7c1b0b524c..79a88d3393
* src/third_party/icu: a622de35ac..1112fa6b3b
* src/third_party/kotlinc/current: 8nR_4qTn61NDCwL0G03LrNZzpgmsu5bbyRGior3fZX8C..ZrpoPpdqeDMIMIhXyd95yML-ZbNUIKDXSeYiWuxz2J0C
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/0cee19cfc8..a2d599c975
* src/third_party/libc++/src: 9d119c1f4a..1506720cb3
* src/third_party/libvpx/source/libvpx: 96b64eaac5..3316c11240
* src/third_party/libyuv: 2f2c04c157..a6a2ec654b
* src/third_party/perfetto: e01c38d714..4183dabcac
* src/third_party/r8: tp4vVuXzmyHJxDFlwxDb7RYZLLEufc3EnGTyOTCTNkgC..ArRcmPYQPKnDIwdwwIr6T8QKNoFb-sQoKac2acxErbsC
* src/third_party/re2/src: ab7c5918b4..f9550c3f72
* src/tools: 2b9f1d699f..2b7d7f5046
* src/tools/luci-go: git_revision:c7b026b3a6a1f877ce46a90c5f761b10e5149891..git_revision:3df60a11d33a59614c0e8d2bccc58d8c30984901
* src/tools/luci-go: git_revision:c7b026b3a6a1f877ce46a90c5f761b10e5149891..git_revision:3df60a11d33a59614c0e8d2bccc58d8c30984901
Added dependencies
* src/third_party/android_deps/libs/com_google_android_gms_play_services_tflite_java
* src/third_party/android_deps/libs/com_google_android_gms_play_services_tflite_impl
* src/third_party/android_deps/libs/org_tensorflow_tensorflow_lite_api
DEPS diff: a4279f2842..1f0d2a10bd/DEPS

Clang version changed llvmorg-18-init-17730-gf670112a:llvmorg-19-init-2319-g7c4c2746
Details: a4279f2842..1f0d2a10bd/tools/clang/scripts/update.py

BUG=b/325398782

Change-Id: I2fa689dc0694e45d7ab7279da2dcbde215437c2d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340402
Owners-Override: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41796}
2024-02-23 23:57:11 +00:00
Per K
ff0c960ee7 Introduce PacketTransportInternal::NotifyPacketReceived
Plan is to replace SignalReadPacket with this new method and have clients register as listeners.
rtc::ReceivedPacket is ammended with Descryption information so that receivers can know how to treat a received packet.
This will replace the current "flag". Also see https://webrtc-review.googlesource.com/c/src/+/340301/3

Bug: webrtc:15368
Change-Id: I9ea1f34e8b1e923d67c2e92e36a22b3dd10dbd73
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340181
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41795}
2024-02-23 18:03:13 +00:00
Philipp Hancke
845d6bef52 Fix handling of rejected m-lines without transport description
A fingerprint should not be required for m-lines which are rejected.

BUG=chromium:326493639,webrtc:11066

Change-Id: I7428c91a144ca46650e13d72868f160652a98339
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340322
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#41794}
2024-02-23 14:49:17 +00:00
Tommi
efbfc40029 Demote RTC_CHECK for sctp_mid() to RTC_LOG(LS_ERROR) if unavailable
Bug: chromium:326275823
Change-Id: Icfb8850867d1e39f23661422693da4f2829ecc57
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340460
Reviewed-by: Evan Shrubsole <eshr@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41793}
2024-02-23 14:20:23 +00:00
Danil Chapovalov
4f63ea423f Deprecate VP8Decoder::Create
Migrate remaining usages inside webrtc (all are test only) to CreateVp8Decoder

Bug: webrtc:15791
Change-Id: I6a8317a8761953208ba746ac785fa1606217e6f5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340300
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41792}
2024-02-23 13:31:53 +00:00
Danil Chapovalov
bf20cf8a30 Implement Create instead of CreateVideoDecoder in remaining test VideoDecoderFactories
to allow Create become virtual in the VideoDecoderFactory interface

Bug: webrtc:15791
Change-Id: Id0d793164906473fa37346fa9177248ad8ef29bb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340341
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41791}
2024-02-23 13:09:44 +00:00
Mirko Bonadei
de3b1cd597 Revert "Make PeerConnectionInteface methods pure virtual."
This reverts commit bff68580b5e575457f9334cd2ee1275f72fa9507.

Reason for revert: Breaks roll into Chromium.

Example https://ci.chromium.org/ui/p/chromium/builders/try/linux-rel/1714596/overview and https://chromium-review.googlesource.com/c/chromium/src/+/5316782.

Original change's description:
> Make PeerConnectionInteface methods pure virtual.
>
> Bug: none
> Change-Id: I64fc23f5159bc6a5cd83c0b00b292641f4976513
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340143
> Commit-Queue: Per Kjellander <perkj@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#41782}

Bug: none
Change-Id: I477d27d33ac2bcf98ed51c3da356605ed9afb6da
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340323
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Owners-Override: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41790}
2024-02-23 10:21:37 +00:00
Per K
2fafcec0c5 Remove unused AsyncPacketSocket::NotifyPacketReceived
Bug: webrtc:15368
Change-Id: Icb1d566670442604172fa1c03fc77e75ab9fde1f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340144
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41789}
2024-02-23 08:12:28 +00:00
webrtc-version-updater
26794681fd Update WebRTC code version (2024-02-23T04:03:45).
Bug: None
Change-Id: I49cb616c8577fbcd1149623888fd43c668995830
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340401
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@{#41788}
2024-02-23 05:29:05 +00:00
Joachim Reiersen
4a97488714 Rename AudioLevel to AudioLevelExtension in rtp_header_extensions.h
To prepare for a new AudioLevel struct to be added to the public WebRTC API, rename the internal RTP extension reader/writer class to AudioLevelExtension. A temporary alias is provided to avoid breaking downstream projects.

Bug: webrtc:15788
Change-Id: Ie231668f25932fd9b539229114128b1d0b949a6e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339887
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41787}
2024-02-22 23:12:52 +00:00
Danil Chapovalov
b2f827cb79 Remove extra trait to read only mandatory part of the dependency descriptor
Same can be achieved by having multiple Parse functions in the same
RtpDependencyDescriptorExtension trait

Bug: None
Change-Id: I4eab0001d1ffff631a9d70fafde13e51f5c6ce36
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340320
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41786}
2024-02-22 16:35:09 +00:00
Per K
d440358cca Dont create RTX receive stream before media SSRC is known
The feauture was added in https://webrtc-review.googlesource.com/c/src/+/291119 in order to ensure RTX packet is part of BWE even before the RTP stream is known.
However, it cause an issue if media is signaled with an SSRC that has this RTX SSRC.
Since BWE is now notified about received packets before demuxing to the correct receive stream, it is not necessary to demux RTX packets before the media SSRC is known.

Note that WebRTC require at least one negotiated SSRC/MID before RTCP feedback can be sent. Ie, for BWE to work, at least one  media SSRC must be known after this cl. It can either be unsignaled or signaled.

BWE tested with BweRampupWithInitialProbeTest.

Bug: webrtc:14795, webrtc:14817, b/320258158
Change-Id: Icf2c67bedc352720bf846b9ee38d509346af36f2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340141
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41785}
2024-02-22 14:40:43 +00:00
Danil Chapovalov
179444c0a8 Pass webrtc::Environment through InternalDecoderFactory::Create
Bug: webrtc:15791
Change-Id: I1c7cecffaa58f42f3a23520a8afdbc5ad1086d67
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340280
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41784}
2024-02-22 12:03:31 +00:00
Danil Chapovalov
9cd5c3f48e Pass webrtc::Environment through VideoDecoderFactoryTemplate::Create
Bug: webrtc:15791
Change-Id: Ia648995b7edd53a59f64afde0d74994b68524d39
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340142
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41783}
2024-02-22 10:03:20 +00:00
Per K
bff68580b5 Make PeerConnectionInteface methods pure virtual.
Bug: none
Change-Id: I64fc23f5159bc6a5cd83c0b00b292641f4976513
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340143
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41782}
2024-02-22 06:25:20 +00:00
webrtc-version-updater
e166dec0a9 Update WebRTC code version (2024-02-22T04:03:12).
Bug: None
Change-Id: I3120a04aaa792afcde65ce1bc05e73851ffbe752
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340261
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@{#41781}
2024-02-22 05:36:50 +00:00
Sergey Silkin
efea7bb8cc Ignore WebRTC-LibvpxVp9Encoder-SvcFrameDropConfig in VP9 fuzzer
Bug: chromium:326188141, webrtc:15827
Change-Id: I0dca4df354db0f9e2f758e9ecf32c8b50f735aff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340220
Auto-Submit: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41780}
2024-02-21 18:48:22 +00:00
Danil Chapovalov
fa01e3fdc0 Delete deprecated variant of the VideoDecoderSoftwareFallbackWrapper without Environment
Bug: webrtc:15791
Change-Id: I8efa1eb7a8393f322f5adaa7c62d8f6bb7d090a0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340061
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41779}
2024-02-21 12:21:31 +00:00
Zoé Lepaul
dc6a001b6b Update and open WebRtcAudioUtils
Opening the visibility of a few methods from this utils class to allow
it to be used by other implementations of `AudioDeviceModule`.

Also updating a few methods, like adding new audio device types from
recent Android SDKs, and updating the definition of an emulator.

Bug: b/287409066
Change-Id: I1473fa0342252347ce92ee2319380ebb14e9885b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339905
Commit-Queue: Zoé Lepaul <xalep@webrtc.org>
Reviewed-by: Ranveer Aggarwal‎ <ranvr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41778}
2024-02-21 11:18:40 +00:00
Danil Chapovalov
56d3cf0c6d Make VideoDecoderFactory::CreateVideoDecoder private
To ensure CreateVideoDecoder is only used as a fallback when Create is not implemented,
and thus make it safer to migrate VideoDecoderFactory implementations to Create.

Bug: webrtc:15791
Change-Id: Ifb15cf1d303348949ba51a3bb4c91b855a06627f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339841
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41777}
2024-02-21 11:07:04 +00:00
Sergey Silkin
74a4038ead Limit max frame size in DAV1D decoder
Bug: chromium:325284120
Change-Id: Iea0aea0a17bb0b1f73b3c1cbd408b7a6cd2b216e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340180
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41776}
2024-02-21 11:05:44 +00:00
Emil Lundmark
88a8e44a51 Remove nonexempt field trials from POLICY_EXEMPT_FIELD_TRIALS
These were added in [1, 2] but are not exempt from the policy.

[1] https://webrtc-review.googlesource.com/c/src/+/322602
[2] https://webrtc-review.googlesource.com/c/src/+/324021

Bug: webrtc:15530, webrtc:15585
Change-Id: Icaa1dae6b0aaa7307f650e63d831d685b14e6853
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339561
Auto-Submit: Emil Lundmark <lndmrk@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41775}
2024-02-21 10:14:08 +00:00
Tommi
f2431a97d5 Move ComputeFoundation to Candidate.
Move code from P2PTransportChannel to Candidate, where we set the
foundation value for remote prflx candidates.

Bug: none
Change-Id: I7dbcb85bca35dca7297136b0706092dd8d2b153c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339902
Reviewed-by: Philipp Hancke <phancke@microsoft.com>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41774}
2024-02-21 09:24:32 +00:00
webrtc-version-updater
6bc92ce7b7 Update WebRTC code version (2024-02-21T04:01:38).
Bug: None
Change-Id: I7cba0514324d331c6408b80e737b2262ef74903c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340164
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@{#41773}
2024-02-21 05:44:54 +00:00
Philipp Hancke
9384bb24ce Document how codec comparisons happen
and when the different codec comparison methods are applied.
No functional changes.

BUG=webrtc:15847

Change-Id: I583c6a42869a80d3a920b9caf18e2a18431c5b94
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339700
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#41772}
2024-02-20 16:38:51 +00:00
Philipp Hancke
bc9af41e8f Sync definitions of IsSameCodecSpecific
until the code duplication can be removed which requires breaking
up the circular dependency.

BUG=webrtc:15847

Change-Id: Icc5f27dfcda26b1fcf16b19f79005d8b52fb6af3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339903
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#41771}
2024-02-20 14:27:28 +00:00
Sergey Silkin
2a3db3131d Disable Android specific threading settings in libvpx VP8 encoder
It used up to 3 threads for QVGA on Android before. This change disables Android-specific code path in NumberOfThreads() and uses the generic settings, which configure 1 thread for resolutions <=VGA, instead. The change is guarded by a killswitch.

For reference, frame encode time for VGA 512kbps using 1 thread on Pixel 2 (7 years old device; SD835) is ~5.5ms: https://chromeperf.appspot.com/report?sid=6e80c701ef6ff0d008a299fb122a16f0d2600ddfcd9981d3d75cd722c92b2869

Bug: webrtc:15828, b/316494683
Change-Id: I0e9571ede64c6cb77d529d21ccb0310ccb8bfdaf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/337601
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41770}
2024-02-20 13:10:49 +00:00
Philipp Hancke
0e9b8fe22b Compare codec number of channels and clockrate in MatchesRtpCodec for RTX too
This should be a no-op since RTX is only supported for video which
has one channel and uses a clockrate of 90000.

Parameters are not compared for RTX since the RTX capabilities do not
include the associated payload type (apt).

BUG=webrtc:15847

Change-Id: Ibe6677135ecc56cdc5f3d3ccdc2e680dd449f66f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339801
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41769}
2024-02-20 12:23:47 +00:00
Jianjun Zhu
41c44cde41 Add some comments for H265 RTP depacketizer.
This CL helps readers to understand which part of the spec
VideoRtpDepacketizerH265 implements.

Bug: webrtc:13485
Change-Id: Ie78a6ce781e6af559d59b1b07ce2854115368a86
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340008
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41768}
2024-02-20 12:22:41 +00:00
Danil Chapovalov
36d5eec6e1 Propagate webrtc::Environment through objc VideoDecoderFactory
Bug: webrtc:15791
Change-Id: I9e9206c6e2f7be2d2d59f80241cafcc27b9e6ad6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339864
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41767}
2024-02-20 11:08:21 +00:00