convert rtc_base/network and collateral.
This also remove last usage of system_wrappers/field_trials
in p2p/...Yay!
Bug: webrtc:10335
Change-Id: Ie8507b1f52bf7f3067e9b4bf8c81a825e4644fda
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256640
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36357}
If an instance of AudioRtpReceiver was initialized with a valid media
channel pointer (i.e. SetMediaChannel() was not being called), then
OnChanged() notification would not be handled correctly.
This fixes the issue by making sure the safety flag is marked as
'alive' when [re]starting the media channel.
Bug: webrtc:13854
Fixes: webrtc:13854
Change-Id: Iaa5cfeb4036bfc9dc2efbfa9e1319d508ab151a9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256361
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36290}
Also update API proxy Create() factory functions to accept the inner
reference counted object via scoped_refptr instead of a raw pointer.
This is to avoid accidentally creating and deleting an object when
passing an inner object to a proxy class.
Consider something like:
auto proxy = MyProxy::Create(
signaling_thread(), make_ref_counted<Foo>());
Bug: webrtc:13464, webrtc:12701
Change-Id: I55ccfff43bbc164a5e909b2c9020e306ebb09075
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256010
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36261}
This seems to be unused and also differs from other proxy
implementations in that proxies are generally for reference counted
interfaces whereas the 'owned proxy' macros are not.
Bug: webrtc:13464, webrtc:12701
Change-Id: I2fc2c2f186bccab8388928d41610112c3b5f88ac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256018
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36255}
This is the third wave of dependencies in the rtc_pc_base breakup.
Bug: webrtc:13805
Change-Id: I79122f2f0395864d595fdffcc4dafa8ed09c560d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/255960
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36230}
This allows to delete non-needed headers from .h files.
Ran this on peer_connection.cc to demonstrate.
Bug: none
Change-Id: I69ce48be25a9778297e521282898c6ac31e7ea6c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/254600
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36170}
This is an initial step, defining targets so that external users
can add dependencies.
Bug: webrtc:13805
Change-Id: I5d2caf2fd746d459f747c390eb783bb4d6f179ef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/254480
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36168}
This cl/
1) move WebRtcKeyValueConfig from api/transport to api/ directory.
2) add a test/ScopedKeyValueConfig (compare ScopedFieldTrials).
3) removes usage of webrtc::field_trial:: from the pc/ directory.
4) removes a few unused includes of system_wrappers/field_trial.h.
Bug: webrtc:10335
Change-Id: If29c07900dbe791050b0a5ad05332bedfad035f2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/253903
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36160}
This cl/ extends the RTCIceCandidateStats object with
network_adapter_type and vpn, so that it maps the underlying
WebRTC objects completly.
Bug: webrtc:13773
Change-Id: I5cf79972c60ca6bf2a127dc96fa90811263ba6fd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/253241
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36110}
This flag was used as a kill switch in case turning off payload type
demuxing in some Unified Plan cases (https://crbug.com/webrtc/12814)
would cause any issues. That landed way back in M93 and no issues were
ever reported, so time to clean up the flag.
Bug: webrtc:12814
Change-Id: I1970936131384dc0be1cd118e6b0ac877b8c289c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/253240
Auto-Submit: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36109}
This cl/ changes so that the RTCTransportStats bytes/packets
sent/recevied is computed in P2PTransportChannel. Previously
they were computed by aggregating over the Connections, but that
does not work when Connections are created and destroyed.
Bug: webrtc:13769
Change-Id: Ia97dfae70b5aced897d4813ec007ba61bc032f87
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/253100
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36103}
Also apply IWYU to all .cc files in pc/, and correct BUILD file to match.
Note: Some files came out wrong when iwyu was applied. These are not included.
Bug: none
Change-Id: Ib5ea46b8fcc505414d0447cca7218ad3afc2e321
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/252280
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36064}
This makes SetChannel() consistently make 2 invokes instead of a
multiple of senders+receivers (previous minimum was 4 but could be
larger).
* Stop() doesn't hop to the worker thread.
* SetMediaChannel(), an already-required step on the worker thread for
senders and *sometimes* for receivers[1], is now consistently required
for both. This simplifies transceiver teardown and enables the next
bullet.
* Transceiver stops all senders and receivers in one go rather than
ping ponging between threads.
[1] When not required, it was done implicitly inside of Stop().
See changes in `RtpTransceiver::SetChannel`
Bug: webrtc:13540
Change-Id: Ied61636c8ef09d782bf519524fff2a31e15219a8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/249797
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36057}
This is a reland of 962bf1896185c0d84232f2bfae492eeb04e1236d
Original change's description:
> Use internal() in VideoTrack when invoking the source.
>
> This skips going through the proxy and potentially hide a thread hop
> should a regression occur.
>
> This CL contains a part of a previously reviewed, landed, reverted,
> relanded and re-reverted CL:
> https://webrtc-review.googlesource.com/c/src/+/250180
>
> Bug: webrtc:13540
> Change-Id: If098f5c04a263547fb53f44e9f9738b8e941a294
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251861
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#36026}
Bug: webrtc:13540
Change-Id: I00e998be6614b1a478ddf02110b3a2d67bd42274
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/252043
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36053}
To disable dcSCTP and fallback to usrsctp, you can use the field trial
WebRTC-DataChannel-Dcsctp/Disabled/
Also remove a hidden no-break space in dcSCTP logging causing issues in
some log parsing.
Bug: chromium:1243702
Change-Id: I46136a8913a6d803a3c63c710f3ed29523e4d773
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251867
Auto-Submit: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Victor Boivie <boivie@google.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36027}
Minor related updates to AudioTrack and VideoTrack's sequence checkers.
There's more that can be done (or arguably needs to), but this is
a start.
Bug: none
Change-Id: I3ccf8eb9bbb6bef62b83248a23a68871b9fcd9e1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251843
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36021}
To disable dcSCTP and fallback to usrsctp, you can use the field trial
WebRTC-DataChannel-Dcsctp/Disabled/
Bug: chromium:1243702
Change-Id: Ia90b796562245558a61481317bcded437400b045
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251800
Auto-Submit: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36018}
This CL sets all visibility to ":*" (this buildfile) where no users
outside this directory are known, and marks up publicly exported
targets and Chrome dependencies explicitly.
Bug: webrtc:13661
Change-Id: I9b2c304ea222f401d71a1ec86eb7a052051f0be3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251690
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36004}
Wires up DecodeSynchronizer in Call if there is a Metronome injected
into the PeerConnectionFactoryDependencies.
Change-Id: I362cd12648bfa0c32e73111fcd0f3296fca2b275
Bug: webrtc:13658
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251341
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35996}