2875 Commits

Author SHA1 Message Date
Philipp Hancke
740d726739 Move DTLS related code from p2p/base to p2p/dtls
BUG=webrtc:367395350

Change-Id: I3fd1551f974705ce6b10e2c757f4d406a520a2c1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/370460
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@meta.com>
Cr-Commit-Position: refs/heads/main@{#43528}
2024-12-10 15:55:26 +00:00
Philipp Hancke
65fbc51b61 Remove srtpfilter_unittest rule from DEPS
srtpfilter was a SDES thing which is gone.

BUG=None

Change-Id: I060582b5ba9e72d1fdad3662e2b478042f0c780c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/370640
Commit-Queue: Philipp Hancke <phancke@meta.com>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43517}
2024-12-09 17:34:59 +00:00
Björn Terelius
711e1a8beb Create a custom test launcher for android
Set use_default_launcher=false in rtc_test on android

Bug: webrtc:42223878
Change-Id: If05da40b420d5da8f9e0f39560eb07380ebada14
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/368921
Owners-Override: Jeremy Leconte <jleconte@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Jeremy Leconte <jleconte@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43505}
2024-12-06 09:30:37 +00:00
Philipp Hancke
1cf342a321 Add IceConfig getter to IceTransportInternal(Interface)
and misc cleanup

BUG=webrtc:367395350
No-Iwyu: remaining IWYU failure is deep inside gtest which is unrelated to the changes and needs to be investigated separately

Change-Id: I5c2b7a6cc6b15fc5474c55eb98635cb9145b7373
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/370180
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@meta.com>
Cr-Commit-Position: refs/heads/main@{#43498}
2024-12-05 09:13:32 +00:00
Evan Shrubsole
1d2f30b8b9 Add utility WaitUntil for testing for an eventual condition
This replaces the WaitUntilCondition function that was used in the
peer_connection_encodings_integrationtest previously. Along with that it
adds tests and improved error message printing.

As a drive-by, matchers were added for RTCError as these are the return
type of this utility function.

Bug: webrtc:381524905
Change-Id: If7ff18692396d3996b5b289f2d2c92520226003e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/369980
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43494}
2024-12-04 13:51:30 +00:00
Harald Alvestrand
e046787a5a Revert "Use PayloadTypePicker for video PT assignment"
This reverts commit e5048949b0fcc275264e24f3b2a4c658fcc84aa3.

Reason for revert: Broke internal tests.

Original change's description:
> Use PayloadTypePicker for video PT assignment
>
> This includes changes that change the order of codecs.
> It is preparatory to doing late assignment of video PTs.
>
> Bug: webrtc:360058654
> Change-Id: Id5ddaf94d4b9557c0502a373e42635108d8fdf26
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366400
> Reviewed-by: Henrik Boström <hbos@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#43489}

Bug: webrtc:360058654
Change-Id: I5c94a7bafa49bdf17f665480398707155e458d26
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/370240
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43490}
2024-12-03 22:24:21 +00:00
Harald Alvestrand
e5048949b0 Use PayloadTypePicker for video PT assignment
This includes changes that change the order of codecs.
It is preparatory to doing late assignment of video PTs.

Bug: webrtc:360058654
Change-Id: Id5ddaf94d4b9557c0502a373e42635108d8fdf26
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366400
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43489}
2024-12-03 18:18:28 +00:00
Harald Alvestrand
ad63489c58 Remove orphis from OWNERS files
also fix a few TODOs

Bug: None
Change-Id: I2d287ed1a58f71ef32d5dc5624879ae8c63348b5
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/370122
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43485}
2024-12-03 15:00:21 +00:00
Qiu Jianlin
c596dd5eb6 Fix setCodecPreference issue with asymmetrical send/recv level
For an offer in sendrecv direction, if for example it can send H.265
level 5.2 while receiving 6.0, setCodecPreferences on offerer's transceiver will currently remove H.265 from the offer SDP, since currently we do a precise level match on send_recv_codecs with the codecs from setCodecPreferences.
Update the matching logic to ignore the level when matching.

Bug: chromium:41480904
Change-Id: Id0f89cbf117ce62249a99257dcce18b35f407cb9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/369960
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43477}
2024-12-02 09:41:56 +00:00
Harald Alvestrand
8d085422ed Tolerate very large deltas in abs-capture-timestamp
Cases above 100 ms have been observed on mac; use 60 seconds as
an offset.

Bug: webrtc:380712819
Change-Id: I52a085cb196472188bb5493276a1b32524717c1f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/369881
Auto-Submit: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Olga Sharonova <olka@webrtc.org>
Commit-Queue: Olga Sharonova <olka@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43473}
2024-11-29 12:53:24 +00:00
Evan Shrubsole
934c983404 Deflake VP9_SimulcastDeactiveActiveLayer_StandardSvc
Two fixes to deflake,

1. Increase the ramp up time for all layers - short time was flaky for
   720p.

2. Wait for both the scalability mode AND implementation name to update.
   Sometimes the implementation name would change before the scalability
   mode did due to a race, so some OutboundRtpStats would have the wrong
   values.

To achieve #2 (and #1 with some debugging) a new utility
WaitForCondition was added in order to apply matchers to a condition.
This is used instead of EXPECT_WAIT_EQ and similar because it gives
clear feedback on failure.

I have made 500 runs without a further flake.

Bug: webrtc:381216372
Change-Id: I0132377774e379857664e9a0c20f432bc9dc9fb7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/369742
Reviewed-by: Olga Sharonova <olka@webrtc.org>
Commit-Queue: Olga Sharonova <olka@webrtc.org>
Auto-Submit: Evan Shrubsole <eshr@google.com>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43472}
2024-11-29 12:11:18 +00:00
Harald Alvestrand
56c5507ae3 Fix delta computation in abs-capture statistics
Previous computation assumed that local clock is UTC. It isn't.
Adding integration test for abs-capture stats.

Bug: webrtc:380712819
Change-Id: I054d61984cbd017b7ad04ab13e5a687eab89db69
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/369421
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Johannes Kron <kron@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43465}
2024-11-27 16:17:21 +00:00
Tommi
d257b4a054 Minor ClearChannel() and SetChannel() simplifications
Bug: none
Change-Id: I3ee302429b1412143fecf3036766c89a5226f8e7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/324302
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43456}
2024-11-26 11:20:10 +00:00
Tommi
98b3588974 Make CreateSendChannel and CreateReceiveChannel methods pure virtual
These methods previously had a default implementation that triggered
a crash. All implementations must now return a valid object, which
simplifies the code that calls them.

Bug: webrtc:13931
Change-Id: I877fbc929b58c6b83767c6ac5a81c8aa942e3fef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/369021
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43453}
2024-11-26 09:17:35 +00:00
Tomas Lundqvist
b40c559858 Set voice RTCP mode based on the RemoteContent and not based on the LocalContent.
The RTCP mode is a send property for both send and receive channels. Send properties should be configured based on what peers support/prefer, which is described by the remote description (content).


Bug: webrtc:340041654
Change-Id: I18cd59e98aecfbbd8f4919b98381836184c10d77
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/368980
Reviewed-by: Jakob Ivarsson‎ <jakobi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tomas Lundqvist <tomasl@google.com>
Cr-Commit-Position: refs/heads/main@{#43449}
2024-11-25 14:06:39 +00:00
Danil Chapovalov
c63e43f27d Deprecate PeerConnectionFactoryDependencies::audio_processing
Bug: webrtc:369904700
Change-Id: Ic0982abcff2097e4e52e55a4b9c90ec25ae33b90
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367961
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43444}
2024-11-22 13:21:24 +00:00
Harald Alvestrand
24992e9518 Report all usage patterns to UKM
This stores usage for all cases, making it easier to discover
abusive usages on unexpected patterns.

Bug: None
Change-Id: I62c9b07498e811ac04c221f57cfbc02312aaaacc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/368902
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43442}
2024-11-22 11:13:47 +00:00
Harald Alvestrand
2e7e049bb4 Don't use transport-cc if RFC8888 feedback is negotiated.
Bug: webrtc:378698658
Change-Id: I06536445d32577b7b4d24ae7ca529d9b270b34d0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/368863
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43435}
2024-11-21 18:15:05 +00:00
Harald Alvestrand
2a69ddbe9e Remove an unused conversion function.
Followup to https://webrtc-review.googlesource.com/c/src/+/366943

Bug: None
Change-Id: I3a1fa2307300f7ea4f03a73b9c162d8b98d4c02f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/368640
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43430}
2024-11-20 13:06:08 +00:00
Harald Alvestrand
fb62f90706 Verify that transport-cc is used when RFC8888 field trial is off.
This is preparatory to ensuring that transport-cc gets turned off when
RFC8888 ccfb is negotiated.

Bug: webrtc:378698658
Change-Id: Ie76677bd6aa046701562bbd93d8489858488f863
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/368543
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43426}
2024-11-19 13:27:58 +00:00
Qiu Jianlin
2d47c9395b Correct H.265 level-id in fmtp line for offer/answer.
On a sendrecv m-line, the offered level-id represents the maximum that
can be both sent and received; on a sendonly m-line, the offered
level-id represents the maximum that can be sent; on a recvonly m-line,
the offered level-id represents the maximum that can be received.
Also according to RFC 7798 section 5, the highest level indicated by the
answer is either equal to or lower than that in the offer

Bug: chromium:41480904
Change-Id: I1729c8edc3aed0c00c41cea96204abafc37c002b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367322
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Jianlin Qiu <jianlin.qiu@intel.com>
Cr-Commit-Position: refs/heads/main@{#43425}
2024-11-19 13:09:13 +00:00
Qiu Jianlin
7ef1360485 Fix issue that all macros not defined in rtc_pc_unittests
The gn target for rtc_pc_unittests cleared the "configs" that is by
default set for rtc_test. Restore it back so we get RTC_ENABLE_H265
macro when rtc_use_h265 is configured.

BUG: chromium:41480904
Change-Id: If172482776e5be2ad99d976db12dcfa556ee8a24
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/368183
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Jianlin Qiu <jianlin.qiu@intel.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43403}
2024-11-15 09:22:17 +00:00
Harald Alvestrand
0c6d31919e Enable RFC 8888 feedback if negotiated
This will turn on RFC 8888 feedback messages if "ack ccfb" is negotiated.

This should eliminate the need for the "force" flag in the field trial.

Bug: webrtc:42225697
Change-Id: Iec7a894c244a417a8499200861550a33f89966a2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367400
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43398}
2024-11-14 06:27:45 +00:00
Elad Alon
d4a3002b9b srtp: remove deprecated non-span versions of key setters
BUG=webrtc:357776213

Change-Id: Idca7defe99b6d3dafb538a8a7599fe7edf2bff43
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/363141
Commit-Queue: Philipp Hancke <phancke@meta.com>
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43397}
2024-11-13 16:58:35 +00:00
Philipp Hancke
7a79d68645 Remove WebRTC-SetCodecPreferences-ReceiveOnlyFilterInsteadOfThrow killswitch
which launched a while back.

BUG=webrtc:40644399,webrtc:364825888

Change-Id: Ied1d76d8ab2cbb395e09c08f6354d99b4e082cef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367840
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@meta.com>
Cr-Commit-Position: refs/heads/main@{#43383}
2024-11-11 06:58:35 +00:00
Emil Vardar
416cb498cc Rename corruption related metrics according to WebRTC's Statistics API.
See https://www.w3.org/TR/webrtc-stats/#dom-rtcinboundrtpstreamstats-totalcorruptionprobability for more details.

Bug: webrtc:358039777
Change-Id: I34236b9423864008486a9f9949f46397ff8b9f92
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367960
Commit-Queue: Emil Vardar (xWF) <vardar@google.com>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43379}
2024-11-08 11:57:59 +00:00
Evan Shrubsole
e6f0c2fd23 SEA discards inactive encoders in implementation name
Inactive encoders are included in the string when they are paused due to
bitrate allocation being 0 for that simulcast layer.

#rtc_ktlo

Bug: webrtc:376804631
Change-Id: I4234b452b60fee58981907380df41962fda5bf40
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367660
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@google.com>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43367}
2024-11-07 11:04:27 +00:00
Harald Alvestrand
9317a307e1 Add generation of CCFB in answer (RFC8888 support)
Note: This still doesn't enable CCFB - it just completes the signalling.

Bug: webrtc:42225697
Change-Id: I2dfd346075f2adcc438588f592c8f735f4101c89
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367260
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43348}
2024-11-01 15:01:29 +00:00
Harald Alvestrand
a25c1c061c Add generation of CCFB in offer (RFC8888 support)
Bug: webrtc:42225697
Change-Id: I288a808c4aae852212b09fdf9551e20fe3066e39
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367205
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43341}
2024-10-31 21:15:48 +00:00
Björn Terelius
fabe3a1173 Minor cleanup in media_session
- Avoid redundant get() when dereferencing smartpointers
- Use const ref instead of copy for RtpExtension
- Use `.empty()` instead of `.size() == 0`
- Remove some unused using declarations

Bug: None
Change-Id: I0dfdc0dfdf165f153c9ba119c115cd492e9599fb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367100
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43334}
2024-10-30 15:15:38 +00:00
Harald Alvestrand
dd493e56a4 Remove functions from rtp_parameters_conversion.
These functions seem to have been unused except for tests.
It seems to have been added in 2017.

Bug: None
Change-Id: I01983f4b72456b1df27ec2d346014e0de1b5cae7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366943
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43332}
2024-10-30 11:28:11 +00:00
Danil Chapovalov
dc03d8731f Rename AudioProcessingFactory to Builder
To stress there is no intention to use each instance more than once.

Bug: webrtc:369904700
Change-Id: Id53ad804f39f8ee596ec0b45ff15393009fdfab0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366640
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43324}
2024-10-29 16:34:01 +00:00
Harald Alvestrand
75a106672e Guard against redefining a PT within a single codec list.
Bug: webrtc:360058654
Change-Id: I433031a11f40a70cedc3862edb3eee4e94ddbdc9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366563
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43318}
2024-10-28 12:16:13 +00:00
Jakob Ivarsson
68f4e27794 Add RtpSender OnFirstPacketSent callback.
It works in the same way as the first packet received callback and can be used for latency measurements.

One important detail is that RTCP and probe packets are excluded from triggering the callback.

Bug: b/375148360
Change-Id: I5f99b565f96b622e864669cf227be5534aab0fc7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366644
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Jakob Ivarsson‎ <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43309}
2024-10-25 16:17:04 +00:00
Henrik Boström
e8c97c0d09 Reland "Rename requested_resolution to scale_resolution_down_to."
This is a reland of commit 82617ac51e7825db53451818f4d1ad52b69761fd

The reason for the revert was a downstream use of
`rtc::VideoSinkWants::requested_resolution`, so in this reland we don't
rename this field, it's fine just to rename the one in
RtpEncodingParameters for now.

Original change's description:
> Rename `requested_resolution` to `scale_resolution_down_to`.
>
> This is a pure refactor/rename CL without any changes in behavior.
>
> This field is called scaleResolutionDownTo in the spec and JavaScript.
> Let's make C++ match to avoid confusion.
>
> In order not to break downstream during the transition a variable with
> the old name being a pure reference to the renamed attribute is added.
> This means we have to add custom constructors, but we can change this
> back to "= default" when the transition is completed, which should only
> be a couple of CLs away.
>
> Bug: webrtc:375048799
> Change-Id: If755102ccd79d46020ce5b33acd3dfcc29799e47
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366560
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
> Commit-Queue: Henrik Boström <hbos@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#43300}

NOTRY=True

Bug: webrtc:375048799
Change-Id: Ic4ee156c1d50aa36070a8d84059870791dcbbe5e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366660
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43304}
2024-10-25 08:39:49 +00:00
Florent Castelli
af44d8ff06 Revert "Rename requested_resolution to scale_resolution_down_to."
This reverts commit 82617ac51e7825db53451818f4d1ad52b69761fd.

Reason for revert: Break downstream projects

Original change's description:
> Rename `requested_resolution` to `scale_resolution_down_to`.
>
> This is a pure refactor/rename CL without any changes in behavior.
>
> This field is called scaleResolutionDownTo in the spec and JavaScript.
> Let's make C++ match to avoid confusion.
>
> In order not to break downstream during the transition a variable with
> the old name being a pure reference to the renamed attribute is added.
> This means we have to add custom constructors, but we can change this
> back to "= default" when the transition is completed, which should only
> be a couple of CLs away.
>
> Bug: webrtc:375048799
> Change-Id: If755102ccd79d46020ce5b33acd3dfcc29799e47
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366560
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
> Commit-Queue: Henrik Boström <hbos@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#43300}

Bug: webrtc:375048799
Change-Id: Ie41723a39420e12e7b5b681d3d00ccd14f66b4b1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366642
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#43301}
2024-10-24 14:51:29 +00:00
Henrik Boström
82617ac51e Rename requested_resolution to scale_resolution_down_to.
This is a pure refactor/rename CL without any changes in behavior.

This field is called scaleResolutionDownTo in the spec and JavaScript.
Let's make C++ match to avoid confusion.

In order not to break downstream during the transition a variable with
the old name being a pure reference to the renamed attribute is added.
This means we have to add custom constructors, but we can change this
back to "= default" when the transition is completed, which should only
be a couple of CLs away.

Bug: webrtc:375048799
Change-Id: If755102ccd79d46020ce5b33acd3dfcc29799e47
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366560
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43300}
2024-10-24 11:38:21 +00:00
Henrik Boström
1c262bf5a4 Allow not specifying requested_resolution on inactive encodings.
This fixes the bug where scaleResolutionDownTo must be specified even
on inactive encodings (scaleResolutionDownTo is the JavaScript name for
what is called requested_resolution inside WebRTC).

Bug: chromium:375048792
Change-Id: I3206ef7de09eaba24a5b4305d888ec4904617e58
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366522
Auto-Submit: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43292}
2024-10-23 12:37:14 +00:00
Harald Alvestrand
b7abaee819 Revert "Use Payload Type suggester for all codec merging"
This reverts commit 0bac2aae596771db020f01a57fee4828081fbc38.

Reason for revert: Suspected breakages downstream

Original change's description:
> Use Payload Type suggester for all codec merging
>
> Bug: webrtc:360058654
> Change-Id: Id475762253c427c1800c2352a60fc0121c2dc388
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364783
> Reviewed-by: Florent Castelli <orphis@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#43267}

Bug: webrtc:360058654, b/375132036
Change-Id: Ieda626270193e7e6c93903b3c03a691b2bf0c1e2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366540
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43290}
2024-10-23 11:37:18 +00:00
Tom Sepez
7085a884aa Avoid string duplication when returning StringBuilder strings
The const-ref result of .str() must be copied into the returned
value, whereas the result of .Release() can be moved.

Bug: webrtc:374845009
Change-Id: I3abc98be30ce9947127c7664f5ffa6846b772ea2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366480
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43288}
2024-10-23 07:54:18 +00:00
Emil Vardar
a2205e3943 Propagate the corruption_score metric to RTCInboundRtpStreamStats.
Bug: webrtc:358039777
Change-Id: I7e956188a5ef913cbe1647d00ca02b5a46a99b3a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/362083
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Emil Vardar (xWF) <vardar@google.com>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43281}
2024-10-22 12:53:14 +00:00
Åsa Persson
929c02a479 Add IsSameRtpCodec method to Codec.
This is similar to MatchesRtpCodec but not an exact match of parameters, unspecified parameters are treated as default. Use IsSameRtpCodec for comparison when codec is configured via encodings.

Bug: b:299588022
Change-Id: I0ea800e50af6f5666e3e867a928e15b0aa044635
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/365142
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43272}
2024-10-21 11:25:24 +00:00
Harald Alvestrand
0bac2aae59 Use Payload Type suggester for all codec merging
Bug: webrtc:360058654
Change-Id: Id475762253c427c1800c2352a60fc0121c2dc388
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364783
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43267}
2024-10-18 16:58:42 +00:00
Philipp Hancke
03b2c9f6fc Let ZeroOnFreeBuffer do the memcpy for DTLS-SRTP key extraction
and use uint8_t instead of unsigned char. Follow-up from
  https://webrtc-review.googlesource.com/c/src/+/365274

BUG=webrtc:357776213

Change-Id: Ibc97e5cc85316ba69b4133b7f3c42e3afbdd7abd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/365540
Commit-Queue: Philipp Hancke <phancke@meta.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Jeremy Leconte <jleconte@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43263}
2024-10-18 11:18:21 +00:00
Philipp Hancke
e5c391248b Remove unneccessary base64 includes and deps from pc/
with the exception of the legacy stats collector unittest

BUG=None

Change-Id: I1ef28ab2052b1194ec788fa69606418d42d5a433
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/366020
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@meta.com>
Cr-Commit-Position: refs/heads/main@{#43258}
2024-10-17 16:24:38 +00:00
Olov Brändström
558c2dc539 Change timestamps type from int64 to Timestamp in MediaReceiverInfo.
We should use the Timestamp type, rather then int64, to store timestamps. In https://webrtc-review.googlesource.com/c/src/+/365001/ an additional int64 timestamp was added (last_sender_report_timestamp_ms).

This CL fixes the new timestamp, as well as other similar timestamps in MediaReceiverInfo (last_sender_report_utc_timestamp_ms and last_sender_report_remote_utc_timestamp_ms).

Bug: webrtc:372393493
Change-Id: I0e473730e85a69ec595b421e2c3db920364008eb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/365641
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Olov Brändström <brandstrom@google.com>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43248}
2024-10-16 11:02:37 +00:00
Danil Chapovalov
9c21f6386f Replace AudioProcessingBuilderForTesting with the BuiltinAudioProcessingFactory
Bug: webrtc:369904700
Change-Id: Ie96dc1a9c052cb5340b10bf834d95f88f0a96a14
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/365801
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43247}
2024-10-16 10:55:38 +00:00
Emil Vardar
d3562286a0 Do not change crypto options in peer_connection.cc
Bug: webrtc:358039777
Change-Id: Icae795a122e0113c64fabd69d0fc2222e9562765
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/365360
Commit-Queue: Emil Vardar (xWF) <vardar@google.com>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43245}
2024-10-16 08:18:27 +00:00
Danil Chapovalov
ad49112cd0 Introduce AudioProcessingFactory interface
This interface allows to delegate construction of AudioProcessing to
the PeerConnectionFactory where it can provide propagated field trials

Bug: webrtc:369904700
Change-Id: Ie05cd771e4a869fa5f43173e127256800ae0727f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/365320
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43233}
2024-10-14 10:56:07 +00:00
Philipp Hancke
ce88f7fa87 add DTLSSrtpTransport/SrtpTransport integration test
which shows that a DtlsSrtpTransport can send and receive
from the SrtpTransport which extracts the key from its DTLS transport.

The SrtpTransport takes its keys from the DtlsSrtpTransport which
(by the way of encryption and decryption) ensures both sides agree
on the keys to use

BUG=webrtc:357776213

Change-Id: I605c6ae660eab5a53bef69bcf84d7e70a34d7be1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/365274
Reviewed-by: Jeremy Leconte <jleconte@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@meta.com>
Cr-Commit-Position: refs/heads/main@{#43231}
2024-10-14 09:47:45 +00:00