Commit graph

1627 commits

Author SHA1 Message Date
Philipp Hancke
1cc41ea84f Remove unused Win32Window class
BUG=None

Change-Id: I1d6b4e64a01076166d841c7c72eb0e2b968dd812
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/306441
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40140}
2023-05-25 10:48:40 +00:00
Ying Wang
aa6d4fa622 Adds WebRTC-DisableRtxRateLimiter for enable/disable RTX rate limiter.
Change-Id: I22e65c5b2a0b5017aa52a3f1af0fc2fd6357f439
Bug: webrtc:15184
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/305660
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40116}
2023-05-23 09:59:11 +00:00
Mirko Bonadei
efb1292574 Remove WEBRTC_EXTERNAL_JSON.
The flexibility offered by the GN `rtc_jsoncpp_root` should be enough
to wire a different version of jsoncpp.

Bug: b/281848049
Change-Id: I8af39fec2406e27c3af7b7ec1949a4762dce762f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/304861
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40045}
2023-05-10 21:34:52 +00:00
Yury Yarashevich
c0b470c327 Update ssl_roots.h with https://pki.goog/roots.pem
Bug: webrtc:11710
Change-Id: Idc2f28ad0f9a37f2d3d38e3ce377bf903c1de1a8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/304701
Commit-Queue: Yury Yarashevich <yura.yaroshevich@gmail.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40040}
2023-05-10 13:37:34 +00:00
Joachim Reiersen
aac19d3136 Fix SSLStreamAdapterTestDTLSCertChain when building with OpenSSL
These tests were failing when building WebRTC against OpenSSL instead of
BoringSSL. The reason is that OpenSSLStreamAdapter::SSLVerifyCallback in
the BoringSSL mode returns the full cert_chain by calling
SSL_get0_peer_certificates. This API does not exist in OpenSSL, instead
only a single certificate is fetched via X509_STORE_CTX_get0_cert.

ifdef out the parts of the test that assert on cert[1] and cert[2].

An alternative but more involved way to fix these tests could be to use
X509_STORE_CTX_get1_chain to fetch the full chain on the OpenSSL path.

Bug: webrtc:15153
Change-Id: I1ede6a3c5a63d4afd2de849f5e44fcd67592aa3c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/304400
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@{#40022}
2023-05-09 11:03:39 +00:00
Diep Bui
7e2aa7d70a Add logs to see if network is ignored because flag IFF_RUNNING is not set.
Some chrome os endpoints get ICE NEVER CONNECTED because their wireless interfaces are ignored. One possible explanation is that result from getifaddrs is incorrect because some interfaces can work even if IFF_RUNNING is not set. Comparing to chromium code, not all messages with IFF_RUNNING on wireless interface are considered (https://chromium.googlesource.com/chromium/src/+/refs/heads/main/net/base/address_tracker_linux.cc#539). Thus the log print helps us to verify our explanation.

Chrome log: https://screenshot.googleplex.com/8SnDn66F56HAKfQ
Webrtc log: https://screenshot.googleplex.com/4jKxPsTHxExNBgz

Bug: webrtc:14334
Change-Id: Icd67dbe4e8ddcaed8b583f2fdb5f1fadfd7bac60
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/304460
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Diep Bui <diepbp@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40020}
2023-05-09 10:01:36 +00:00
Tommi
301e546a68 Remove SequenceCheckerImpl::valid_system_queue_
As pointed out in issue webrtc:15146 this Mac/iOS specific variable,
makes the SequenceChecker behave incorrectly on those platforms.

The variable was introduced in a CL that merged the previous checker
classes, ThreadChecker and SequencedTaskChecker, but curiously neither
one of them had such a variable. So I'm not exactly sure what problem
was being solved. Hence I'm wondering if we actually need it.

Reference: https://webrtc-review.googlesource.com/c/src/+/129721

Bug: webrtc:15146
Change-Id: Ia7a9eb17b993c4f8a1e8204c658bf0b3dbdaa1e0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/304401
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40019}
2023-05-09 09:40:51 +00:00
Markus Handell
c8c4a282a6 Introduce support for video packet batching.
This CL introduces a new feature enabling video packet send batches.
The feature is enabled via
PeerConnectionInterface
::RTCConfiguration
::MediaConfig
::enable_send_packet_batching.

PacketOptions have been augmented with attribute "batchable" (set for
all video packets) and attribute "last_packet_in_batch" which gives
injected AsyncPacketSockets a chance to understand when a batch begins
and ends.

When the feature is on, packets are collected in RtpSenderEgress. On
reception of OnBatchComplete from PacingController, RtpSenderEgress
sends the collected batch, setting "last_packet_in_batch" to true
in the last packet.

Bug: chromium:1439830
Change-Id: I1846b9d4a8a0efd227d617691213a2e048bdc8a2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/303720
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40012}
2023-05-08 16:24:03 +00:00
Diep Bui
41daa40203 Update log level in network.cc to avoid excessive log printing
Bug: webrtc:14334
Change-Id: I034a7db47b5af14fb437d7370331cdadfed0c1a1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/304021
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Diep Bui <diepbp@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39973}
2023-05-03 08:13:02 +00:00
Per K
d1771e925d Enable SSL logging per default
Done in order to simplify connection debuging.

Example log:

openssl_adapter.cc:829): connect_loop TLS client read_server_hello
(openssl_adapter.cc:829): connect_loop TLS client read_server_certificate
(openssl_adapter.cc:829): connect_loop TLS client read_certificate_status
(openssl_adapter.cc:829): connect_loop TLS client verify_server_certificate
(openssl_stream_adapter.cc:1128): Accepted peer certificate.
(openssl_adapter.cc:829): connect_loop TLS client read_server_key_exchange
(openssl_adapter.cc:829): connect_loop TLS client read_certificate_request
(openssl_adapter.cc:829): connect_loop TLS client read_server_hello_done
(openssl_adapter.cc:829): connect_loop TLS client send_client_certificate
(openssl_adapter.cc:829): connect_loop TLS client send_client_key_exchange
(openssl_adapter.cc:829): connect_loop TLS client send_client_certificate_verify
(openssl_adapter.cc:829): connect_loop TLS client send_client_finished
(openssl_adapter.cc:829): connect_loop TLS client finish_flight
(openssl_adapter.cc:829): connect_loop TLS client read_session_ticket
(openssl_adapter.cc:829): connect_exit TLS client read_session_ticket
(openssl_adapter.cc:829): accept_loop TLS server verify_client_certificate
(openssl_stream_adapter.cc:1128): Accepted peer certificate.
(openssl_adapter.cc:829): accept_loop TLS server read_client_key_exchange
(peer_connection.cc:1952): Changing IceConnectionState 0 => 1
(openssl_adapter.cc:829): accept_loop TLS server read_client_certificate_verify
(peer_connection.cc:1971): Changing standardized IceConnectionState 0 => 1
(peer_connection.cc:1971): Changing standardized IceConnectionState 0 => 1
(peer_connection.cc:1971): Changing standardized IceConnectionState 1 => 2
(peer_connection.cc:1971): Changing standardized IceConnectionState 1 => 2
(openssl_adapter.cc:829): accept_loop TLS server read_change_cipher_spec
(openssl_adapter.cc:829): accept_loop TLS server process_change_cipher_spec
(openssl_adapter.cc:829): accept_loop TLS server read_next_proto
(openssl_adapter.cc:829): accept_loop TLS server read_channel_id
(openssl_adapter.cc:829): accept_loop TLS server read_client_finished
(openssl_adapter.cc:829): accept_loop TLS server send_server_finished
(openssl_adapter.cc:829): accept_loop TLS server finish_server_handshake
(openssl_adapter.cc:829): accept_loop TLS server done
(openssl_adapter.cc:829): handshake_done TLS server done
(openssl_adapter.cc:829): accept_exit TLS server done
(dtls_transport.cc:688): DtlsTransport[0|1|__]: DTLS handshake complete.

Bug: b/275671043
Change-Id: Ib8d394aa74c5665c489b485bb44152aff67d3b7c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/302300
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39955}
2023-04-26 13:01:13 +00:00
Sameer Vijaykar
df7df199ab Clean up IPv6 fixes field trial artifacts.
The fixes have been default enabled, so clean up dead code.

Bug: webrtc:14334
Change-Id: I4967d5ad451ac333c54294fc14bea6c7ba1445e3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/301180
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Commit-Queue: Sameer Vijaykar <samvi@google.com>
Cr-Commit-Position: refs/heads/main@{#39949}
2023-04-25 14:59:55 +00:00
Jared Siskin
802e8e5fdb Format /rtc_base
git ls-files | grep -e  "\(\.h\|\.cc\)$" | grep -e  "^rtc_base/" | xargs clang-format -i ; git cl format
after landing: add to .git-blame-ignore-revs

Bug: webrtc:15082
Change-Id: I152228f7c7926adf95d2f3fbbe4178556fd75d0d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/302061
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39914}
2023-04-21 06:17:42 +00:00
Michael Horowitz
8a10dca8ff Set AV1 default bitrate limits.
Bug: webrtc:15097
Change-Id: I9106665ccb9e980e9c28f56c8f376c6c0a3c9d35
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/301802
Commit-Queue: Michael Horowitz <mhoro@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39898}
2023-04-19 18:45:33 +00:00
Sameer Vijaykar
1f251dd67e Default enable WebRTC-IPv6NetworkResolutionFixes
Fully launched on mobile and approved for chrome launch.

Removed tests for feature enablement with field trial.

Bug: webrtc:14334
Change-Id: I7ca7183ff618835fef8c820cfd52863e1c7fa25e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/301163
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Commit-Queue: Sameer Vijaykar <samvi@google.com>
Cr-Commit-Position: refs/heads/main@{#39879}
2023-04-17 20:28:53 +00:00
Diep Bui
5248228d79 Do not use deprecated IPv6 on Windows, and set temporary address attribute for IPv6
Currently webrtc does not have info about interface flags, thus it can use deprecated IPv6 and does not prefer temporary addresses as mentioned in https://www.rfc-editor.org/rfc/rfc8835#name-usage-of-temporary-ipv6-add

Test: not able to test it because cannot mock GetAdaptersAddresses system call on Windows. However, it should be correct because the implementation is the same as chromium code. https://source.chromium.org/chromium/chromium/src/+/main:net/base/network_interfaces_win.cc;l=182

Bug: webrtc:14334
Change-Id: Iae696b00368ae2f9480b542d2ddbc036338081f1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/300965
Commit-Queue: Diep Bui <diepbp@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39839}
2023-04-13 07:49:23 +00:00
Diep Bui
46849fc73c Print discovered network interfaces for debugging ICE_NEVER_CONNECTED endcause.
Bug: webrtc:14334
Change-Id: Iad2f25e44cd3a154d6dceda755696480e2618a93
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299421
Commit-Queue: Diep Bui <diepbp@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39716}
2023-03-29 11:58:22 +00:00
Tommi
c848268ab1 Use SequenceChecker(SequenceChecker::kDetached) in a few places.
This CL is partly a test to see if there's an impact on binary size:
- Not a big difference for binaries (decrease): -776b to -4Kb
- For libraries (libwebrtc.a) it actually increases the size: +40Kb

Secondarily this CL is basically to introduce this pattern to the
code base. In terms of LOC, this makes things slightly more compact.

From:

  class Foo {
   public:
     Foo() {
       checker_.Detach();
     }
   private:
    SequenceChecker checker_;
  };

To:

  class Foo {
   public:
     Foo() = default;
   private:
    SequenceChecker checker_{SequenceChecker::kDetached};
  };

Bug: none
Change-Id: I59fc34ccea10847e13455a349851ce9a0af458e3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299020
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39664}
2023-03-24 07:44:18 +00:00
Per K
7efd372f02 Per default endable reading incoming packet timestamp from socket
This cl per default enable the experiment WebRTC-SCM-Timestamp but
leaves the wiring in place for now to explictly allow disabling it.

Bug: webrtc:5773, webrtc:14066
Change-Id: I6118eef73384791ab4d1377e35d36435dc4fa0e8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298442
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39624}
2023-03-21 14:41:37 +00:00
Tommi
3da04a93cd Allow SequenceChecker to be initialized detached.
The motivation for this is to not have to implement this pattern:

foo.h:

class Foo {
 public:
  Foo();
 private:
  SequenceChecker checker_;
};

foo.cc:

Foo::Foo() {
  checker_.Detach();
}

And instead be able to do this inline in the .h file:

class Foo {
 public:
  Foo();
 private:
  SequenceChecker checker_{SequenceChecker::kDetached};
};

Bug: none
Change-Id: Idd7ca82d15c2f77f3aaccf26f1943a49f4b40661
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298445
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39616}
2023-03-21 12:34:15 +00:00
Jeremy Leconte
022d4ec34a Fix 'DoNotOptimize<int>' is deprecated issue.
Change-Id: Ia25b7f73882d45bd2f1a606f51569269ece25fe0
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/298042
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#39589}
2023-03-17 14:56:40 +00:00
Michael Horowitz
12910caf29 Apply resolution-bitrate limits collected from field trial (cl/294600) for AV1.
Bug: webrtc:14931
Change-Id: I1e8471a499bc884cb9479609a2b093de90f638d8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296120
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Michael Horowitz <mhoro@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39582}
2023-03-16 19:04:32 +00:00
Taylor Brandstetter
5136600626 Implement WaitPoll for Fuchsia
Fuchsia's libc provides `select` and `poll` but not `epoll`.

This CL adds a `WaitPoll` method, which is modeled after `WaitSelect` but uses `poll`. The pre-existing `WaitPoll` method was renamed to `WaitPollOneDispatcher`.

TESTED="2p video call on Fuchsia. WaitPoll is faster compared to
WaitSelect, primarily because WaitSelect pessimistically calls
getsockopt(SO_ERROR) on each fd, while WaitPoll does so only on fds that
have entered an error state."

Original author: tombergan@google.com

Bug: None
Change-Id: I83cc824fca40d691fd93712c1c933ff21b3f877c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296826
Reviewed-by: Markus Handell <handellm@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Tom Bergan <tombergan@google.com>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39564}
2023-03-15 14:35:08 +00:00
Peter Kasting
ab456dd092 Always check out google_benchmark, part 5.
Remove use of google_benchmark/buildconfig.gni.

Bug: chromium:1404759
Change-Id: I06e225b1457dd50e3777c5fcd277f639471f453a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/297700
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Peter Kasting <pkasting@chromium.org>
Cr-Commit-Position: refs/heads/main@{#39560}
2023-03-15 07:52:04 +00:00
Peter Kasting
049f5ef9b9 Always check out google_benchmark, part 4.
Remove use of non-WebRTC-specific arg to control benchmark use.

Bug: chromium:1404759
Change-Id: If50b215ff6c7698d385d1271bc8b6c38ed443e32
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/297680
Auto-Submit: Peter Kasting <pkasting@chromium.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39556}
2023-03-14 20:28:26 +00:00
Peter Kasting
1e6d77c29a Always check out google_benchmark, part 3.
Add a WebRTC-specific arg that can be used to control use of targets
that rely on //third_party/google_benchmarks, so the .gni in that
directory can eventually be removed.

Bug: chromium:1404759
Change-Id: I2a9422fae119ca13eb50028d962fc0a671b5fb33
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/297460
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Peter Kasting <pkasting@chromium.org>
Cr-Commit-Position: refs/heads/main@{#39553}
2023-03-14 12:14:51 +00:00
Hans Wennborg
1ee02d4580 Add missing include of pthread.h
This presumably worked before because some libc++ header included it
transitively, but that's no longer the case.

Bug: chromium:1423839
Change-Id: I6ed1c3474c1bfa02084a665c0b9e249484ac50d7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/297420
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Hans Wennborg <hans@chromium.org>
Cr-Commit-Position: refs/heads/main@{#39544}
2023-03-13 13:06:56 +00:00
Bruno Pitrus
86eb6ba207 Add missing header causing build error with GCC13
Bug: chromium:957519
Change-Id: I0146fdb18764b683b502e9804bce1c7b2ab05294
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296980
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Auto-Submit: Bruno Pitrus <brunopitrus@hotmail.com>
Cr-Commit-Position: refs/heads/main@{#39536}
2023-03-10 21:07:30 +00:00
Olov Brändström
3ca732d12d Prevent warnings from timestamp aligner used in AudioDeviceBuffer
The logcat is spammed with warnings from timestamp aligner.
This CL make a workaround to use the timestamp aligner to get capture times,
without generating the warnings.

Bug: webrtc:14970
Change-Id: Idab4b298e0484a57841a214db9440f9ac6faaa4d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/296324
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Olov Brändström <brandstrom@google.com>
Cr-Commit-Position: refs/heads/main@{#39486}
2023-03-06 15:47:51 +00:00
philipel
579a7b498c Add OptionalBlobEncoder for RTC event logs.
Bug: webrtc:14801
Change-Id: I7c14597e39b312c26573f034dca444cc1d90e332
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295480
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39449}
2023-03-02 12:02:07 +00:00
Markus Handell
2fa39bdfc9 Implement support for Chrome task origin tracing. #3.8/4
This CL forwards TaskQueue locations to the contained
task queue.

Bug: chromium:1416199
Change-Id: I989ae445a67991bf5a857407135dbe8bacbd3c55
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295622
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39446}
2023-03-01 16:04:36 +00:00
Markus Handell
fb727f3a5f Implement support for Chrome task origin tracing. #3.9/4
This CL forwards repeating task client locations to the passed
task queue.

Bug: chromium:1416199
Change-Id: I437d596f8d327d13498b47dfc0a03812af870331
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295623
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39443}
2023-03-01 15:47:54 +00:00
Markus Handell
8cb31cf125 Implement support for Chrome task origin tracing. #4/4
This CL forwards BlockingCall client locations to
BlockingCallImpl.

Fixed: chromium:1416199
Change-Id: Ic5865280ec5c72a09a64419940b8343e8a54986b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295624
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39442}
2023-03-01 15:46:49 +00:00
Markus Handell
a1ceae206b Implement support for Chrome task origin tracing. #3.5/4
This CL migrates unit tests to the new TaskQueueBase interface.

Bug: chromium:1416199
Change-Id: Ic15c694b28eb67450ac99fdd56754de1246a4d95
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295621
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39434}
2023-03-01 11:11:37 +00:00
Michael Horowitz
b27efd487d Add option to configure AV1 EncoderInfo resolution_bitrate_limits.
bug: webrtc:14931
Change-Id: I8ade2a888d29f76a0f690fc3541b45b7304ad4d3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294600
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Michael Horowitz <mhoro@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39426}
2023-02-28 20:48:33 +00:00
Emil Lundmark
227574804f Correctly register test field trials in parser unittest
Previously, field_trial::FindFullName would be called before
field_trial::FieldTrialsAllowedInScopeForTesting was initialized because
member variables will be initialized after the initializer list.

Bug: webrtc:14154
Change-Id: I69098259a21a55a268d5b45949c3ed02e82ae001
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295541
Commit-Queue: Emil Lundmark <lndmrk@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39420}
2023-02-28 15:47:54 +00:00
Markus Handell
2a256c82ec Implement support for Chrome task origin tracing. #2/4
This prepares TaskQueueBase sub classes to be able to migrate to
the location and traits-based API. It re-introduces a Location class
into the webrtc namespace, which is meant to be overridden by Chromium.

Bug: chromium:1416199
Change-Id: I712c7806a71b3b99b2a2bf95e555b357c21c15ae
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294381
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39400}
2023-02-27 13:17:38 +00:00
Sergey Silkin
8566e779e3 Add samples sum calculation
Bug: b/261160916, webrtc:14852
Change-Id: I88e464fce4673dd9b9683219b8d2837206579ba5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293942
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39386}
2023-02-24 11:48:39 +00:00
Seija K
1a890c13ba Changed OutputToDebug to create a CFString at compile-time, rather than runtime
CFStringFromCString is useful, however if we have a static C string, we can use the defined macro CFSTR to create a CFString at runtime instead.

Bug: None
Change-Id: I54b3f590b3ab07858409af27b817013c98556ded
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293060
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Auto-Submit: Seija K. <doremylover123@gmail.com>
Cr-Commit-Position: refs/heads/main@{#39341}
2023-02-19 22:41:59 +00:00
Mirko Bonadei
d76d4822b7 Remove base64 from publicly visible targets.
This library is not expected to be used outside of WebRTC.

Bug: None
Change-Id: I35e864eccc2e4101255332372e0c27bb0c492586
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293341
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39322}
2023-02-16 00:12:50 +00:00
Harald Alvestrand
5ad491ec87 Remove call operator from UniqueIdGenerator classes
Call operators do not improve code clarity, and usage was moderate.

Bug: None
Change-Id: I8d86bd7d435ce88e99f4abee8ab95a336d47dc22
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/292960
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39294}
2023-02-10 13:10:35 +00:00
Artem Titov
327405165b Add method to get FD for physical socket
Bug: b/264850454, webrtc:14866
Change-Id: I8a47aa3560fa8a5d20a9984cc507c543256788dd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291521
Reviewed-by: Victor Boivie <boivie@google.com>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39234}
2023-01-31 10:25:45 +00:00
Danil Chapovalov
2ded55e0df Cleanup Thread::BlockingCall
Remove integration with socket server of the current thread
Network thread that uses PhysicalSocketServer shouldn't be allowed to do blocking calls
Other threads that use NullSocketServer do not need to process any messages while blocking

Bug: webrtc:14856
Change-Id: I56865b86e0992e60376ecefe163ff6b23911edca
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291527
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39225}
2023-01-30 12:12:30 +00:00
Sameer Vijaykar
a2653bc236 Export some more symbols for use in chromium tests.
Bug: chromium:1408420
Change-Id: I4d427dfacf79c3dbbbcd9bf969f1af7fee4a2f67
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291522
Commit-Queue: Sameer Vijaykar <samvi@google.com>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39211}
2023-01-27 10:33:19 +00:00
Florent Castelli
05ce032486 Remove the //rtc_base target
Bug: webrtc:9838
Change-Id: I17d2a011df20019c517ae92ff25a778070065a5b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291185
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39173}
2023-01-23 14:00:21 +00:00
Mirko Bonadei
62ba379caa Add some RTC_EXPORT needed by Chromium.
These are needed by crrev.com/c/4165083.

Bug: chromium:1369096, webrtc:14131
Change-Id: Id0a46254b46cf866f2f3b7b07b97dc55066c047f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291117
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39165}
2023-01-20 18:29:08 +00:00
Sarah Pham
74f108a671 Add Fuchsia support to memory_usage.
Implement GetProcessResidentSizeBytes for Fuchsia.

Bug: webrtc:14825
Change-Id: I64582ce0da72d3bb0fa61ff64799a1a165e1192f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290922
Commit-Queue: Sarah Pham <smpham@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39154}
2023-01-20 00:06:50 +00:00
Yury Yarashevich
41010f95bb Log resolved & unresolved turn server address as sensitive string.
This should help to debug problems with DNS resolution of turn server
name. E.g. DNS server returns fake IP address to block turn server.

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

Bug: None
Change-Id: If1cc410f4cd0f89620d3678aabf05a0f1b22a393
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290992
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Yury Yarashevich <yura.yaroshevich@gmail.com>
Cr-Commit-Position: refs/heads/main@{#39152}
2023-01-19 18:26:50 +00:00
Sarah Pham
f1fa6ac7bf Implement time functions for Fuchsia.
Implement GetProcessCpuTimeNanos and GetThreadCpuTimeNanos for Fuchsia.
This is needed for the tests call_perf_tests and
video_pc_full_stack_tests on Fuchsia.

Bug: fuchsia:115601
Change-Id: Idd10db93d4087d10896ae3fde6abbc37176f625e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290920
Reviewed-by: Christoffer Jansson <jansson@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Sarah Pham <smpham@google.com>
Cr-Commit-Position: refs/heads/main@{#39119}
2023-01-16 23:06:21 +00:00
Florent Castelli
a6b9924988 Remove all usage of //rtc_base target
Bug: webrtc:9838
Change-Id: If813dbb426b4dc848185b64c0349d03fa9c059f2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290986
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Auto-Submit: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39116}
2023-01-16 14:36:06 +00:00
Evan Shrubsole
d8b6b06e70 [Unwrap] Delete rtc::TimestampWrapAroundHandler
Bug: webrtc:13982
Change-Id: Ia2999e952a55d97dbd69ff19cf12c8f712b1a62f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290882
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39087}
2023-01-12 14:21:03 +00:00