Commit graph

707 commits

Author SHA1 Message Date
Oscar Mira
e2d0b769f9
Revert "Remove more ProxyInfo references."
This reverts commit db6767dd0c.
2024-11-20 14:00:45 +01:00
Jim Gustafson
9280d4e8f0 Merge remote-tracking branch 'upstream/branch-heads/6723' 2024-10-17 09:03:43 -07:00
Jeremy Leconte
83d1f9abd0 Ensure <sys/socket.h> is included by using "rtc_base/net_helpers.h".
* IWYU export <sys/socket.h> from rtc_base/net_helpers.h.
* Add a presubmit check to ensures that <sys/socket.h> is included through net_helpers.h (expect if there is a IWYU pragma or a no-presubmit-check).
* Clean up existing includes of <sys/socket.h>

Change-Id: I4bc6cce045c046287f8f74f89edfc9321293b274
Bug: b/236227627
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/362082
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#42996}
2024-09-10 14:23:24 +00:00
Florent Castelli
8037fc6ffa Migrate absl::optional to std::optional
Bug: webrtc:342905193
No-Try: True
Change-Id: Icc968be43b8830038ea9a1f5f604307220457807
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361021
Auto-Submit: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42911}
2024-09-02 12:16:47 +00:00
Adel Lahlou
2888424bfd Merge remote-tracking branch 'upstream/branch-heads/6613' into 6613-testing 2024-08-31 02:18:43 -07:00
Dor Hen
1921fa5ea1 Apply include-cleaner to api/test/[^/]*
e.g all files in the api/test folder not including subdirectories

Bug: webrtc:42226242
Change-Id: I18d74a18f8feec41eb252faa9acfffd1d6f45ce4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/359420
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Dor Hen <dorhen@meta.com>
Cr-Commit-Position: refs/heads/main@{#42773}
2024-08-13 15:28:34 +00:00
Dor Hen
8aa4e7c453 Apply include-cleaner to api/test/(video|pclf|network_emulation)/.*
Bug: webrtc:42226242
Change-Id: I28dde76246f9c10e61cd6f294278edd364513267
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/359220
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Dor Hen <dorhen@meta.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42770}
2024-08-13 10:25:20 +00:00
Dor Hen
73195da677 Apply include-cleaner to api/test/metrics
Bug: webrtc:42226242
Change-Id: I3134d7a3885a86f0bd02ee5e12bb85b2e2d6ee8c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/359180
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42760}
2024-08-12 12:11:35 +00:00
Emil Vardar
59c7b2277b Log received frames QP value.
spatial_layers_qp holds the QP values for all the spatial layers. However, receiver only sees one of the spatial layers at a given time. It is of interest to know the shown spatial layers QP. This could also be used to indicate if upper layers are frequently dropped or not.

Bug: None
Change-Id: I462ea11e3447f8ffd11f4a6f2ccbf361102c762f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/358863
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Emil Vardar (xWF) <vardar@google.com>
Cr-Commit-Position: refs/heads/main@{#42759}
2024-08-12 08:58:25 +00:00
Lionel Koenig Gélas
b4462510c3 Pass receive_time through frame transformer
Bug: webrtc:344347965
Change-Id: Iee5ae13487f57f2b0c98dd6fb6a14286ff317fbb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/358100
Reviewed-by: Tony Herre <herre@google.com>
Commit-Queue: Lionel Koenig <lionelk@webrtc.org>
Reviewed-by: Jakob Ivarsson‎ <jakobi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42717}
2024-08-02 07:01:33 +00:00
Jeremy Leconte
53291d49b2 Add 'SkipNextFrame' to the FrameGeneratorInterface.
Also fix PRESUBMIT.py following https://webrtc-review.googlesource.com/c/src/+/358160.

Change-Id: I00682209607a184448255cf5ad8fd213fda7f4af
Bug: b/355120692
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/358320
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#42711}
2024-08-01 14:38:52 +00:00
Florent Castelli
0012bfa128 Change DataChannelInit::priority to integer and forward to SCTP transport
The new type PriorityValue is a strong 16-bit integer matching RFC 8831
requirements that can be built from a Priority enum.
The value is now propagated and used by the SCTP transport, but enabling
the feature still requires a field trial for now.

Bug: webrtc:42225365
Change-Id: I56c9f48744c70999a8c2d01415a08a0b6761df4b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/357941
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42695}
2024-07-30 15:07:25 +00:00
Tony Herre
5079e8a30a Allow supplying a custom NetworkControllerInterfaceFactory per-Call in PeerConnectionDependencies
This requires making CallConfig move-only so it can hold a unique_ptr to
the factory, but as discussed with Danil, that seems fine.

Bug: chromium:355610792
Change-Id: Ie52e33faaa4a2af748daeb25f5327b7a532936e2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/357862
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tony Herre <herre@google.com>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42679}
2024-07-29 07:17:14 +00:00
Tommi
41ffc51e45 Remove unused AudioprocFloat with input_aecdump param support
There's some test code associated with this code path that can
be deleted, so this is a first step towards removing it. From what
I can tell, this is never used.

Bug: none
Change-Id: Idfb8a6c58b929c2eedd0cfc7bdc72f5b3862f5bc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/356481
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42600}
2024-07-08 08:20:53 +00:00
Artem Titov
eb3da2b1ec Extract video writing into separate target
Bug: None
Change-Id: I3af192606eb623e21a4d648fb69bb62c14ab8b0d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/355560
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42541}
2024-06-26 12:47:15 +00:00
Jim Gustafson
49c96f3e79 Merge remote-tracking branch 'google/branch-heads/6478' 2024-06-21 16:31:45 -07:00
Jeremy Leconte
defafcb86e Pass random seed to SchedulableNetworkBehavior.
Change-Id: Icd2b2e638773243df26de3e163b18c9bd42c9245
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/354721
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42514}
2024-06-19 08:40:36 +00:00
Tony Herre
418bcf2acb Expose a PeerConnection's NetworkControllerInterface instance
Allow API users to access the NetworkControllerInterface instance that a
given PC ended up with, to allow integrators who have provided a
PeerConnectionFactoryDependencies.network_controller_factory to
associate a created instance of their custom network controller with the
PC using it.

Eg for the RTCRtpTransport Chromium implementation as in crrev.com/c/5607744.

Bug: chromium:345101934
Change-Id: Ia712ca4f45b90d5078f4e8e5977622d3e9f9aa6f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/353980
Commit-Queue: Tony Herre <herre@google.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42506}
2024-06-18 08:04:03 +00:00
Per K
da485a1b46 Implement delayed start of Scheduled network configuration
Before the schedule starts an absl::AnyInvocvable is executed every time
a packet is enqued. The incocable should return true, if the schedule should
be started.
The pupose is to allow tests to not start a schedule until ICE and DTLs
is connected.



Bug: webrtc:42224804
Change-Id: I61bd63508830f7c27d86f982299ce2be180ff460
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/354464
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42479}
2024-06-13 17:25:08 +00:00
Jim Gustafson
c43adafcd5 Merge m123/6312 2024-06-12 22:25:35 -07:00
Miriam Zimmerman
84b959dd20
Test fixes
Get webrtc unit tests building again, and fix some failures.
2024-06-11 10:30:46 -04:00
Per Kjellander
a0d1a51217 Reland "Add SchedulableNetworkBehavior and tests."
This reverts commit 045589e64c.

Reason for revert: Test flakiness fixed in https://webrtc-review.googlesource.com/c/src/+/352660

Original change's description:
> Revert "Add SchedulableNetworkBehavior and tests."
>
> This reverts commit 06815534d2.
>
> Reason for revert: Seems to break importer...
>
> Original change's description:
> > Add SchedulableNetworkBehavior and tests.
> >
> > This is a network behaviour that can change its parameters over time as specified with a schedule proto.
> >
> > Bug: webrtc:14525
> > Change-Id: Idd34cc48c8e3e8311975615f2c3dc3ffb522a708
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/352140
> > Reviewed-by: Björn Terelius <terelius@webrtc.org>
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Per Kjellander <perkj@webrtc.org>
> > Cr-Commit-Position: refs/heads/main@{#42390}
>
> Bug: webrtc:14525
> Change-Id: I4386ffb7629198c74249e416076cab3b4c23a79b
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/352501
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Per Kjellander <perkj@webrtc.org>
> Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
> Cr-Commit-Position: refs/heads/main@{#42391}

Bug: webrtc:14525
Change-Id: I68f536c67ab15d97fa59700ce6c3c4b9edc1d1b9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/352681
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42403}
2024-05-29 13:17:07 +00:00
Per Kjellander
045589e64c Revert "Add SchedulableNetworkBehavior and tests."
This reverts commit 06815534d2.

Reason for revert: Seems to break importer...

Original change's description:
> Add SchedulableNetworkBehavior and tests.
>
> This is a network behaviour that can change its parameters over time as specified with a schedule proto.
>
> Bug: webrtc:14525
> Change-Id: Idd34cc48c8e3e8311975615f2c3dc3ffb522a708
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/352140
> Reviewed-by: Björn Terelius <terelius@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Per Kjellander <perkj@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#42390}

Bug: webrtc:14525
Change-Id: I4386ffb7629198c74249e416076cab3b4c23a79b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/352501
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#42391}
2024-05-28 11:41:48 +00:00
Per K
06815534d2 Add SchedulableNetworkBehavior and tests.
This is a network behaviour that can change its parameters over time as specified with a schedule proto.

Bug: webrtc:14525
Change-Id: Idd34cc48c8e3e8311975615f2c3dc3ffb522a708
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/352140
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42390}
2024-05-28 11:25:23 +00:00
Florent Castelli
99c519b3fd Mass removal of absl_deps in all BUILD.gn files
Bug: webrtc:341803749
Change-Id: Id73844ba8d63b9f2f2c9391d8d8116ad0864c36d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/351540
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42372}
2024-05-23 15:09:46 +00:00
Tony Herre
a45c7056ad Add passkey to TransformableFrameInterface to prevent external impls
This makes the downcasts currently used in eg
modules/rtp_rtcp/source/rtp_sender_video_frame_transformer_delegate.cc
safer.

Bug: webrtc:339815768
Change-Id: Ie6c7ab84666d399dbca4c95846b850aac5327f1a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/350361
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tony Herre <herre@google.com>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42325}
2024-05-16 13:12:51 +00:00
Danil Chapovalov
179f96de7e Provide Environment to construct VideoBitrateAllocator
To allow various VideoBitrateAllocators to use propagated rather than global field trials

This relands the
https://webrtc-review.googlesource.com/c/src/+/349920
where patchset#1 is identical to the original change,
patchset#2 undoes (postpones) the expectation downstream propagates the Environment too.

Bug: webrtc:42220378
Change-Id: I4a9a32bb0926a875d37f3ba19dd5309e97546553
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/350364
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42298}
2024-05-14 11:36:42 +00:00
Jeremy Leconte
16fb7903e5 Revert "Provide Environment to construct VideoBitrateAllocator"
This reverts commit 4bf4e1753c.

Reason for revert: break upstream 

Original change's description:
> Provide Environment to construct VideoBitrateAllocator
>
> To allow various VideoBitrateAllocators to use propagated rather than global field trials
>
> Bug: webrtc:42220378
> Change-Id: I52816628169a54b18a4405d84fee69b101f92f72
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/349920
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Philip Eliasson <philipel@webrtc.org>
> Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#42288}

Bug: webrtc:42220378
Change-Id: I7d47eb635c2d312d97a870c2a8eca0b23d2f86a0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/350307
Owners-Override: Jeremy Leconte <jleconte@google.com>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#42290}
2024-05-13 13:32:28 +00:00
Danil Chapovalov
4bf4e1753c Provide Environment to construct VideoBitrateAllocator
To allow various VideoBitrateAllocators to use propagated rather than global field trials

Bug: webrtc:42220378
Change-Id: I52816628169a54b18a4405d84fee69b101f92f72
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/349920
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42288}
2024-05-13 12:12:01 +00:00
Per K
53d43d6a41 SimulatedNetworkNode::Builder use BuiltInNetworkBehaviorConfig.link_capacity
Bug: webrtc:14525
Change-Id: I0495e26244334a5bdb015912fbdaa7af7f2aefea
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/350280
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42263}
2024-05-08 16:28:40 +00:00
Sergey Sukhanov
26a082ce36 Introduce a mode that lets NetworkEmulationManager ignore DTLS handshake sizes.
Bug: b/169531206
Change-Id: I02c19385ff7078944f7509ecc07358b4315f7b08
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/350181
Commit-Queue: Sergey Sukhanov <sergeysu@webrtc.org>
Reviewed-by: Victor Boivie <boivie@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42261}
2024-05-08 13:20:20 +00:00
Per K
0d037df25f Reland "Add more accurate support for changing capacity in SimulatedNetwork"
Origina description:
NetworkBehaviorInterface::RegisterDeliveryTimeChangedCallback
adds support for a network behaviour to reschedule next time DequeueDeliverablePackets should be invoked.

SimulatedNetwork::SetConfig(const BuiltInNetworkBehaviorConfig& config,
                            Timestamp config_update_time)
adds possibility to change the configuration at config_update_time. Delivery time of a packet currently in the narrow section, will depend on the link capacity before and after the update.

Bug: webrtc:14525
Change-Id: Idaf3a4200cfeae0683e1e1d1e98e154119ddf22e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/350043
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42253}
2024-05-07 20:14:24 +00:00
Per Kjellander
6866da1822 Revert "Add more accurate support for changing capacity in SimulatedNetwork"
This reverts commit 51a70c0d6f.

Reason for revert: Breaks downstream project test.

Original change's description:
> Add more accurate support for changing capacity in SimulatedNetwork
>
> NetworkBehaviorInterface::RegisterDeliveryTimeChangedCallback
> adds support for a network behaviour to reschedule next time DequeueDeliverablePackets should be invoked.
>
> SimulatedNetwork::SetConfig(const BuiltInNetworkBehaviorConfig& config,
>                             Timestamp config_update_time)
> adds possibility to change the configuration at config_update_time. Delivery time of a packet currently in the narrow section, will depend on the link capacity before and after the update.
>
> Bug: webrtc:14525
> Change-Id: I271251992d05c68f9160bb81811ea8f2efe9c921
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/349461
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Björn Terelius <terelius@webrtc.org>
> Commit-Queue: Per Kjellander <perkj@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#42243}

Bug: webrtc:14525
Change-Id: Iace13b1b4ef21005c9668ff27f6d1ec8f3212baf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/349923
Owners-Override: Per Kjellander <perkj@webrtc.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42245}
2024-05-07 11:02:33 +00:00
Per K
51a70c0d6f Add more accurate support for changing capacity in SimulatedNetwork
NetworkBehaviorInterface::RegisterDeliveryTimeChangedCallback
adds support for a network behaviour to reschedule next time DequeueDeliverablePackets should be invoked.

SimulatedNetwork::SetConfig(const BuiltInNetworkBehaviorConfig& config,
                            Timestamp config_update_time)
adds possibility to change the configuration at config_update_time. Delivery time of a packet currently in the narrow section, will depend on the link capacity before and after the update.

Bug: webrtc:14525
Change-Id: I271251992d05c68f9160bb81811ea8f2efe9c921
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/349461
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42243}
2024-05-07 08:53:16 +00:00
Tony Herre
64437e8cc0 Calculate the audio level of audio packets before encoded transforms
Calculate the RMS audio level of audio packets being sent before
invoking an encoded frame transform, and pass them with the encode frame
object.

Before this, the audio level was calculated at send time by having rms_levels_ look at all audio samples encoded since the last send. This
is fine without a transform, as this is done synchronously after
encoding, but with an async transform which might take arbitrarily long,
we could end up marking older audio packets with newer audio levels, or
not at all.

This also makes things work correctly if external encoded frames are
injected from elsewhere to be sent, and exposes the AudioLevel on the
TransformableFrame interface.

Bug: chromium:337193823, webrtc:42226202
Change-Id: If55d2c1d30dc03408ca9fb0193d791db44428316
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/349263
Reviewed-by: Jakob Ivarsson‎ <jakobi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tony Herre <herre@google.com>
Cr-Commit-Position: refs/heads/main@{#42193}
2024-04-29 15:14:25 +00:00
Per K
569849e885 Move call/simulated_network to test/network
Old target and call/simulated.h exist but refer to new target in test/network.

Bug: webrtc:14525
Change-Id: Ida04cef17913f2f829d7e925ae454dc40d5e8240
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/349264
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Owners-Override: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42191}
2024-04-29 09:55:06 +00:00
Harald Alvestrand
b0e7057e1b Introduce the TransformerHost interface
This is the first step in implementing custom codecs in SDP.

Bug: none
Change-Id: I7789478208a769eaefd58b410ae6f488c604594d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/348662
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Tony Herre <herre@google.com>
Cr-Commit-Position: refs/heads/main@{#42171}
2024-04-25 07:54:28 +00:00
Florent Castelli
0afde7614d Move webrtc::AudioProcessing include to api/ folder
Bug: webrtc:15874
Change-Id: Ie8a6e031c0f0505cfe238f7d252c47e9c34408d4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/347983
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Auto-Submit: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42128}
2024-04-20 07:02:50 +00:00
Tommi
db6767dd0c Remove more ProxyInfo references.
This removes many references to the unsupported ProxyInfo struct
but leaves temporary implementations for methods while downstream
code gets updated.

Bug: none
Change-Id: Iab4410b362a8296b2e00cf71080010e515f9f4ba
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/344660
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42096}
2024-04-17 11:55:00 +00:00
Danil Chapovalov
4dfe7ea5af Delete legacy VideoEncoderFactory::CreateVideoEncoder
Bug: webrtc:15860
Change-Id: I892aeba67a4ea3be6d6551ff2dc88faaca0c7bd9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/342940
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42033}
2024-04-10 17:11:34 +00:00
Jakob Ivarsson
e0f08a325a Add SSRC filter and NetEq accessor to NetEq simulator.
Bug: None
Change-Id: I6b3f9c564199d75adf5830a7d0f58aeb50674c39
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/345440
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Jakob Ivarsson‎ <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42002}
2024-04-05 10:02:38 +00:00
Danil Chapovalov
c230da0f1b In IvfVideoFrameGenerator test helper allow to pass webrtc::Environment at construction
To reuse same environment in video encoder and thus avoid creating duplicated environment.

Bug: webrtc:15860, b/326933307
Change-Id: I1c56966301a9b453d615c45626407fede2a6d8b5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/344143
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41956}
2024-03-22 16:39:54 +00:00
Danil Chapovalov
329f0ead43 Provide Environment when creating VideoEncoder in test code
Bug: webrtc:15860
Change-Id: I8c79ff58619716842e02f33e78a0529c631494e6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/342280
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41884}
2024-03-12 11:09:31 +00:00
Danil Chapovalov
38c1ab1e6c Delete CreateVideoDecoder from VideoDecoderFactory interface
Instead require Create to be implemented

Bug: webrtc:15791
Change-Id: I17477b5f047d86b6a05bda594c66d20f8f43a2c6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340480
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41857}
2024-03-04 16:05:51 +00:00
Florent Castelli
524a06bc54 Change BuiltInNetworkBehaviorConfig.loss_percent to double
This should allow greater precision in the lower ranges of packet loss.

Bug: chromium:41175925
Change-Id: Ia35059ad673a3782443b23772511b0b952b07ce7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/341263
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Auto-Submit: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41822}
2024-02-27 14:38:31 +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
Mirko Bonadei
de3b1cd597 Revert "Make PeerConnectionInteface methods pure virtual."
This reverts commit bff68580b5.

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
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
Jim Gustafson
c37ca3fc86 Merge branch m122 2024-02-14 22:44:28 -08:00
Danil Chapovalov
61b1f53a4c Extend test::FunctionVideoDecoderFactory to propagate Environment
To reduce number calls to the CreateVideoDecoder

Bug: webrtc:15791
Change-Id: I5d6ecc2e5e68165d4e012b3ad7edb6eaa40e1913
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/336420
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41706}
2024-02-09 10:14:05 +00:00