360 Commits

Author SHA1 Message Date
henrika
5b6afc0ce6 Adds stream-switch support in new Windows ADM.
Second round of the new Windows ADM is now ready for review. Main
changes are:

Supports internal (automatic) restart of audio streams when an active
audio stream disconnects (happens when a device is removed).

Adds support for IAudioClient3 and IAudioClient2 for platforms which
supports it (>Win8 and >Win10).

Modifies the threading model to support restart "from the inside" on
the native audio thread.

Adds two new test methods for the ADM to emulate restart events or
stream-switch events.

Adds two new test methods to support rate conversion to ensure that
audio can be tested in loopback even if devices runs at different
sample rates.

Added initial components for low-latency support. Verified that it works
but disabled it with a flag for now.

Bug: webrtc:9265
Change-Id: Ia8e577daabea6b433f2c2eabab4e46ce8added6a
Reviewed-on: https://webrtc-review.googlesource.com/86020
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24578}
2018-09-05 13:04:01 +00:00
Ying Wang
b29409064e Revert "Explicitly wrap main thread in test_main.cc."
This reverts commit 711a31aead9007e42dd73c302c8ec40f9e931619.

Reason for revert: Speculative revert

Original change's description:
> Explicitly wrap main thread in test_main.cc.
> 
> Bug: webrtc:9714
> Change-Id: I6ee234f9a0b88b3656a683f2455c3e4b2acf0d54
> Reviewed-on: https://webrtc-review.googlesource.com/97683
> Reviewed-by: Tommi <tommi@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24560}

TBR=mbonadei@webrtc.org,kwiberg@webrtc.org,nisse@webrtc.org,tommi@webrtc.org

Change-Id: I4c50ced1b63d9d5d20770e7a121c34c1e3da344c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9714
Reviewed-on: https://webrtc-review.googlesource.com/98020
Reviewed-by: Ying Wang <yinwa@webrtc.org>
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24572}
2018-09-05 09:40:50 +00:00
Mirko Bonadei
822928a04b Fix rtc_base_generic webrtc_overrides dependencies.
This change is needed in order to land
https://chromium-review.googlesource.com/c/chromium/src/+/1203773.

Bug: chromium:824831
Change-Id: Ie37a099fa6059039f53feb76f1c640610ca25696
Reviewed-on: https://webrtc-review.googlesource.com/97940
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24565}
2018-09-05 08:24:27 +00:00
Ying Wang
1d52d2c24d Revert "Add SSLConfig object to IceServer."
This reverts commit 7f1ffcccce563a086da037334aec2d4faa723edb.

Reason for revert: Speculative revert

Original change's description:
> Add SSLConfig object to IceServer.
> 
> This is being added to allow greater configurability to TLS connections.
> tlsAlpnProtocols, tlsEllipticCurves and tlsCertPolicy will be removed from IceServer in a
> follow-up CL.
> 
> Bug: webrtc:9662
> Change-Id: I33cb804b02c26c662ed2a28c76f9a9dc2df40f36
> Reviewed-on: https://webrtc-review.googlesource.com/96020
> Commit-Queue: Diogo Real <diogor@google.com>
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Reviewed-by: Benjamin Wright <benwright@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24559}

TBR=steveanton@webrtc.org,sakal@webrtc.org,kthelgason@webrtc.org,juberti@webrtc.org,emadomara@webrtc.org,qingsi@webrtc.org,benwright@webrtc.org,diogor@google.com

Change-Id: Iae9fc68b77f743876bda36fc2a04f6d791aae8e2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9662
Reviewed-on: https://webrtc-review.googlesource.com/98000
Reviewed-by: Ying Wang <yinwa@webrtc.org>
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24563}
2018-09-05 08:15:29 +00:00
Niels Möller
711a31aead Explicitly wrap main thread in test_main.cc.
Bug: webrtc:9714
Change-Id: I6ee234f9a0b88b3656a683f2455c3e4b2acf0d54
Reviewed-on: https://webrtc-review.googlesource.com/97683
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24560}
2018-09-05 06:44:59 +00:00
Diogo Real
7f1ffcccce Add SSLConfig object to IceServer.
This is being added to allow greater configurability to TLS connections.
tlsAlpnProtocols, tlsEllipticCurves and tlsCertPolicy will be removed from IceServer in a
follow-up CL.

Bug: webrtc:9662
Change-Id: I33cb804b02c26c662ed2a28c76f9a9dc2df40f36
Reviewed-on: https://webrtc-review.googlesource.com/96020
Commit-Queue: Diogo Real <diogor@google.com>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Benjamin Wright <benwright@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24559}
2018-09-04 22:46:19 +00:00
Robert Sesek
b0800519b0 Do not leak the Mach thread port in GetThreadCpuTimeNanos().
Bug: chromium:879307
Change-Id: Ia6b5b3ea4684354d8a21dc85e43f67166832cc19
Reviewed-on: https://webrtc-review.googlesource.com/96980
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Robert Sesek <rsesek@chromium.org>
Cr-Commit-Position: refs/heads/master@{#24554}
2018-09-04 13:43:24 +00:00
Jonas Olsson
46d65e2c2c Revert "Consolidate loggability checks and replace streams."
This reverts commit 4092cd6db459ab8152588143b7b76e0946d2c433.

Reason for revert: Some g3 things depend on log macro implementation details.

Original change's description:
> Consolidate loggability checks and replace streams.
> 
> Currently we check if a message should be printed at the call site using LogMessage::Loggable, in the LogMessage itself using LogMessage::IsNoop and in LogMessage::OutputToDebug using log_to_stderr_.
> 
> This change unifies the first two of these into a early return in Log().
> 
> Bug: webrtc:8982
> Change-Id: Ia4e3e12b34716d76c05807e44db1ed4a62dffb87
> Reviewed-on: https://webrtc-review.googlesource.com/97440
> Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24547}

TBR=kwiberg@webrtc.org,jonasolsson@webrtc.org

Change-Id: I06f0a5b50c96c08a5e7be4d8d2bcb22d50c0179f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8982
Reviewed-on: https://webrtc-review.googlesource.com/97720
Reviewed-by: Jonas Olsson <jonasolsson@webrtc.org>
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24553}
2018-09-04 13:42:20 +00:00
Jonas Olsson
4092cd6db4 Consolidate loggability checks and replace streams.
Currently we check if a message should be printed at the call site using LogMessage::Loggable, in the LogMessage itself using LogMessage::IsNoop and in LogMessage::OutputToDebug using log_to_stderr_.

This change unifies the first two of these into a early return in Log().

Bug: webrtc:8982
Change-Id: Ia4e3e12b34716d76c05807e44db1ed4a62dffb87
Reviewed-on: https://webrtc-review.googlesource.com/97440
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24547}
2018-09-04 09:49:13 +00:00
Sebastian Jansson
ec76466da2 Adds % unit to float field trial parser.
This can improve readability in some situations and prevents the need
to define a parameter as some_value_in_percent.

Bug: webrtc:9510
Change-Id: I0959d2b6c463f1bc1cea8e66f0bd5b56380b8c03
Reviewed-on: https://webrtc-review.googlesource.com/97302
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24538}
2018-09-03 15:02:58 +00:00
Sebastian Jansson
fea4637cfe Adds check for unused field trial parameters.
This adds a dcheck to detect if a FieldTrialParameter has been created
but not used in parsing a field trial. This is an easy mistake to make
and cause extra work debugging why nothing happens.

Also improving the ergonomics of using the parameter and optional
classes. Making it easier to use them as drop in replacements for their
underlying classes. In particular, the optional parameter class
implements and interface more similar to the optional class.

Bug: webrtc:9510
Change-Id: I5a12dd66396fa4cac9c9cf517172ae2f06984060
Reviewed-on: https://webrtc-review.googlesource.com/96761
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24527}
2018-09-03 08:52:51 +00:00
Jonas Olsson
88e1848fd5 Add a StringBuilder class.
String builder is similar to SimpleStringBuilder, but the difference is
that StringBuilder is built around a std::string instance and supports
dynamic resizing.

Change-Id: I874d22e69e639ff9ef3d5929366f4ba71c545787
Bug: webrtc:8982
Reviewed-on: https://webrtc-review.googlesource.com/58980
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24526}
2018-09-03 08:48:42 +00:00
Niels Möller
689b5874d4 Use monotonic clock for PhysicalSocketServer timeouts.
Bug: webrtc:9684
Change-Id: Ia50e2d8f8100364ca8047b9b6cf55674206d8d8b
Reviewed-on: https://webrtc-review.googlesource.com/96680
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24522}
2018-09-03 07:05:56 +00:00
Danil Chapovalov
a10d164b4a Implement periodic cancelable task for task queue
using shared pointer to boolean flag.

Bug: None
Change-Id: I9d7ad7d7b187fefa7daa0247a1379e1ddd7e2b24
Reviewed-on: https://webrtc-review.googlesource.com/96300
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24511}
2018-08-31 16:10:20 +00:00
Qingsi Wang
558b93b3e9 Add the multicast DNS message format.
This CL adds the utilities to generate and parse mDNS messages (RFC 1035
and RFC 6762).

TBR=phoglund@webrtc.org

Bug: webrtc:9605
Change-Id: Id6121c17926887cd3a41a2dfc829462fd15f3a4c
Reviewed-on: https://webrtc-review.googlesource.com/93241
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24505}
2018-08-31 00:02:44 +00:00
“Michael
f9fc171568 Add rtt_mult_experiment to evaluate video robustness vs. latency
Bug: webrtc:9670
Change-Id: Idb4ca130bfa652b2d0bddb5bee9ed8e34c97150a
Reviewed-on: https://webrtc-review.googlesource.com/96060
Commit-Queue: Michael Horowitz <mhoro@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24457}
2018-08-27 15:51:52 +00:00
Sergey Silkin
40b7050ac6 Add copy and move constructors to RateStatistics.
Bug: none
Change-Id: I589a7f202ee1c4b8c06e8f44aa570c47d066ab72
Reviewed-on: https://webrtc-review.googlesource.com/95647
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24445}
2018-08-27 11:28:37 +00:00
Artem Titov
63af828a1b Remove old sigslot.h header
To be landed after 22th Aug 2018

Bug: webrtc:8366
Change-Id: Icaf758cbbb31ec843f5ee85d65963271a98fead0
Reviewed-on: https://webrtc-review.googlesource.com/90412
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24397}
2018-08-23 08:35:03 +00:00
Jonas Olsson
6b1985de95 Reimplement rtc::ToString and rtc::FromString without streams.
Bug: webrtc:8982
Change-Id: I3977435b035fdebef449732301d6e77fc899e7ba
Reviewed-on: https://webrtc-review.googlesource.com/86941
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24319}
2018-08-16 16:14:01 +00:00
Mirko Bonadei
b889a20968 Change the default behaviour rtc_builtin_ssl_root_certificates.
Instead of defining a pre-processor macro when someone wants to
include built-in ssl roots certs, this CL switches the default and
assumes everyone prefer to include built-in ssl roots certs.

If built-in ssl roots certs are not needed because they are injected
in the PeerConnection it will be possible to define a pre-processor
macro (WEBRTC_EXCLUDE_BUILT_IN_SSL_ROOT_CERTS) to remove them.

In a GN build it is possible to tell GN to define the macro by setting
rtc_builtin_ssl_root_certificates to false in "gn args".

Bug: webrtc:9332
Change-Id: Icc3f2caeddca6899cbc5974f21b480d75d15556f
Reviewed-on: https://webrtc-review.googlesource.com/94147
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Benjamin Wright <benwright@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24302}
2018-08-16 06:49:42 +00:00
Mirko Bonadei
d8661a05ff Remove public_deps from rtc_base:protobuf_utils.
Bug: webrtc:8603
Change-Id: I8dfc176b570d28ce8003f5f8f1ed995848af9a9d
Reviewed-on: https://webrtc-review.googlesource.com/93761
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24273}
2018-08-13 14:06:31 +00:00
Minyue Li
656d609a95 Add UTC time to init event in AEC debug dump.
Bug: webrtc:9616
Change-Id: I1350212f0b8835fb64427483269da96d51670c01
Reviewed-on: https://webrtc-review.googlesource.com/92620
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Commit-Queue: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24267}
2018-08-11 20:29:07 +00:00
Mirko Bonadei
2ad8c43ae7 Change visibility of some build targets that are publicly used.
Bug: None
Change-Id: I9b0dc56364648ac4d4fa4b8bb67af44700621b24
Reviewed-on: https://webrtc-review.googlesource.com/93282
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24256}
2018-08-10 09:56:51 +00:00
Artem Titov
43a6d2bbf8 Remove old base64 header
To be landed after 8th Aug 2018

Bug: webrtc:8366
Change-Id: Icf5f2ecbf2e64de93ce3e6758966629f9cc3a2b9
Reviewed-on: https://webrtc-review.googlesource.com/90244
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24240}
2018-08-09 10:06:41 +00:00
Mirko Bonadei
ca14a3a78c Making rtc_base:ptr_util and rtc_base:refcount public.
Bug: None
Change-Id: I6f4b372c087c6d25e8c451ab5577cb3bcb13f6f0
Reviewed-on: https://webrtc-review.googlesource.com/93284
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24237}
2018-08-09 08:34:21 +00:00
Mirko Bonadei
8e5014a392 Remove definition and usage of macro GTEST_RELATIVE_PATH.
The macro GTEST_RELATIVE_PATH is obsolete and since it is always
defined this CL just removes it.

Bug: webrtc:9564
Change-Id: Ieafa5b77351c4df87864588ba6b3de8f60d54e89
Reviewed-on: https://webrtc-review.googlesource.com/92080
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24226}
2018-08-08 11:00:11 +00:00
Karl Wiberg
c2342031f4 Remove rtc::{Make,Wrap}Unique and their header file + unit tests
We've switched to absl::make_unique and absl::WrapUnique.

Bug: webrtc:9473
Change-Id: I08aef72d52b571c511c0f4adb4c68d6cc2654192
Reviewed-on: https://webrtc-review.googlesource.com/87262
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24225}
2018-08-08 10:45:52 +00:00
Steve Anton
f0d5fc9601 Add steveanton@ and qingsi@ as rtc_base OWNERs
We both frequentyly work on this code and much of it is intertwined with
pc/ and p2p/ code which we have OWNERs for already.

NOTRY=True

Bug: None
Change-Id: If56ebca6ef44cf9b7837e8d4bc3afa367a5d5216
Reviewed-on: https://webrtc-review.googlesource.com/90084
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24211}
2018-08-07 15:47:05 +00:00
Artem Titov
10d70caa13 Fix guards for headers in third party
Bug: webrtc:8366
Change-Id: I86309265c822dd4430c5578d813bdddc77102d05
Reviewed-on: https://webrtc-review.googlesource.com/90416
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24203}
2018-08-07 09:39:06 +00:00
Oleh Prypin
7d984ee1d7 Don't allocate an array of size 0, it causes a UBSan failure
Bug: webrtc:9587
Change-Id: I56bdf3c5c8744044b2d0d1fa3531fca504ea200f
Reviewed-on: https://webrtc-review.googlesource.com/92091
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24178}
2018-08-03 07:49:46 +00:00
Mirko Bonadei
6e250820b1 Removing rtc_base:base build target.
This build target is unused and outdated (the name was still base
because rtc_base is the real target). It is better for users to
depend on real targets instead of this group.

Bug: None
Change-Id: I870669dc8688810b132616b8edebb8196826701f
Reviewed-on: https://webrtc-review.googlesource.com/91720
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24158}
2018-08-01 08:10:52 +00:00
Jiawei Ou
e635e9807d Fix compilation error of opensslutility.cc when compiling with OpenSSL.
https://webrtc-review.googlesource.com/c/64841/ added LogSSLErrors(..) with used two new OpenSSL ERR_get_error() and ERR_error_string_n() without including the proper header from OpenSSL.

TBR=kwiberg@webrtc.org

Bug: webrtc:9567
Change-Id: I118a5e18243828a3e3dfd287a0c41fe1bc5e4ad3
Reviewed-on: https://webrtc-review.googlesource.com/90820
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Benjamin Wright <benwright@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24136}
2018-07-27 17:34:56 +00:00
Qingsi Wang
01560dead9 Use "wildcard" instead of "unknown" for ADAPTER_TYPE_ANY in stats.
TBR=hta@webrtc.org

Bug: None
Change-Id: I3ccff01f2ad51aebc1241fab2b41518b769adc8a
Reviewed-on: https://webrtc-review.googlesource.com/90800
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24120}
2018-07-26 22:02:02 +00:00
Niels Möller
b4731ff9cb Delete unused code in httpbase and httpcommon.
Deleted features include HttpBase::GetDocumentStream(), and support for
other operations than GET.

Bug: webrtc:6424
Change-Id: Ib16537cd1db87de53150f8e9e30dd89778a20c2e
Reviewed-on: https://webrtc-review.googlesource.com/84140
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24102}
2018-07-25 15:20:13 +00:00
Niels Möller
a12c42a6b2 Delete root header file typedef.h.
Usage replaced with stdint.h, rtc_base/system/arch.h and
rtc_base/system/unused.h, as appropriate.

Bug: webrtc:6854
Change-Id: I97225465d14b969903d92979e2df3c3c05d35f18
Reviewed-on: https://webrtc-review.googlesource.com/90249
Reviewed-by: Niklas Enbom <niklas.enbom@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24100}
2018-07-25 14:59:26 +00:00
Artem Titov
e41c433502 Move sigslot to proper third_party directory
Extract sigslot into separate target and move it to proper third_party
directory.

Bug: webrtc:8366
Change-Id: Id2e0712bd020bfad811947803c94553dce06d976
Reviewed-on: https://webrtc-review.googlesource.com/84141
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Niklas Enbom <niklas.enbom@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24099}
2018-07-25 14:53:33 +00:00
Steve Anton
ea1bb35e27 Cleanup networkroute.h
This change removes the constructors in favor of naming the fields
of the struct.

TBR=kwiberg@webrtc.org

Bug: None
Change-Id: I23ae1165c20994d2efef10184570065957b279af
Reviewed-on: https://webrtc-review.googlesource.com/90081
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24071}
2018-07-23 19:35:28 +00:00
Artem Titov
a76af0ca2e Move base64.h to the proper location.
Move base64.h to the proper location and put redirect header into the
old place to be able to switch downstream users on new location.

Bug: webrtc:8366
Change-Id: I5191fe631d32178d2efd1315ca9abd4250102291
Reviewed-on: https://webrtc-review.googlesource.com/88223
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24069}
2018-07-23 15:40:36 +00:00
Jeroen de Borst
4f6d233dcc Added explicit EOR to sctp messages and coalesce messages on the receiving side.
TBR=pthatcher@webrtc.org

Bug: webrtc:7774
Change-Id: I41d1cd98d1e7b2ad479177eb2e328a5e2c704824
Reviewed-on: https://webrtc-review.googlesource.com/88900
Commit-Queue: Jeroen de Borst <jeroendb@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24031}
2018-07-19 01:26:59 +00:00
Oleh Prypin
dd21474da5 Replace accidental usages of source_set with rtc_source_set
Bug: None
Change-Id: I80c5ad9e1e9942eb51ace014cd7b9127959d601b
Reviewed-on: https://webrtc-review.googlesource.com/89061
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24004}
2018-07-17 12:40:17 +00:00
Qingsi Wang
7fc821d42d Reland "Reland "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.""
This is a reland of 1a2cc0acba6a66f89249455d8e5775849b56f755

Original change's description:
> Reland "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*."
>
> This is a reland of 870bca1f418a1abf445169a638a61f9a649d557f
>
> Original change's description:
> > Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.
> >
> > We now use RTC_HISTOGRAM_* macros in system_wrappers/include/metrics.h
> > to report the metrics in pc/ and p2p/ that are currently been reported
> > using MetricsObserverInterface.
> >
> > TBR=tommi@webrtc.org
> >
> > Bug: webrtc:9409
> > Change-Id: I47c9975402293c72250203fa1ec19eb1668766f6
> > Reviewed-on: https://webrtc-review.googlesource.com/83782
> > Commit-Queue: Qingsi Wang <qingsi@google.com>
> > Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> > Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23914}
>
> TBR=steveanton@webrtc.org,hta@webrtc.org,tommi@webrtc.org
>
> Bug: webrtc:9409
> Change-Id: I37fc95ced60dea25aa9b4f5ad44bdf7174c8bd5c
> Reviewed-on: https://webrtc-review.googlesource.com/88060
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Cr-Commit-Position: refs/heads/master@{#23919}

TBR=steveanton@webrtc.org,tommi@webrtc.org

Bug: webrtc:9409
Change-Id: Ib55f0b6c9bcb9d9585924a4dfac5cf643ff4d76b
Reviewed-on: https://webrtc-review.googlesource.com/88343
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23957}
2018-07-12 21:35:47 +00:00
Qingsi Wang
78fef76e6a Revert "Reland "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.""
This reverts commit 1a2cc0acba6a66f89249455d8e5775849b56f755.

Reason for revert: It breaks internal Android debug build. Need further investigation.

Original change's description:
> Reland "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*."
> 
> This is a reland of 870bca1f418a1abf445169a638a61f9a649d557f
> 
> Original change's description:
> > Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.
> >
> > We now use RTC_HISTOGRAM_* macros in system_wrappers/include/metrics.h
> > to report the metrics in pc/ and p2p/ that are currently been reported
> > using MetricsObserverInterface.
> >
> > TBR=tommi@webrtc.org
> >
> > Bug: webrtc:9409
> > Change-Id: I47c9975402293c72250203fa1ec19eb1668766f6
> > Reviewed-on: https://webrtc-review.googlesource.com/83782
> > Commit-Queue: Qingsi Wang <qingsi@google.com>
> > Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> > Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23914}
> 
> TBR=steveanton@webrtc.org,hta@webrtc.org,tommi@webrtc.org
> 
> Bug: webrtc:9409
> Change-Id: I37fc95ced60dea25aa9b4f5ad44bdf7174c8bd5c
> Reviewed-on: https://webrtc-review.googlesource.com/88060
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Cr-Commit-Position: refs/heads/master@{#23919}

TBR=steveanton@webrtc.org,deadbeef@webrtc.org,tommi@webrtc.org,hta@webrtc.org,qingsi@google.com,qingsi@webrtc.org

Change-Id: I4a75fc7f52bfd0780526537a5a9a016fb9c20d6a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9409
Reviewed-on: https://webrtc-review.googlesource.com/88320
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#23938}
2018-07-11 18:37:36 +00:00
Qingsi Wang
1a2cc0acba Reland "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*."
This is a reland of 870bca1f418a1abf445169a638a61f9a649d557f

Original change's description:
> Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.
>
> We now use RTC_HISTOGRAM_* macros in system_wrappers/include/metrics.h
> to report the metrics in pc/ and p2p/ that are currently been reported
> using MetricsObserverInterface.
>
> TBR=tommi@webrtc.org
>
> Bug: webrtc:9409
> Change-Id: I47c9975402293c72250203fa1ec19eb1668766f6
> Reviewed-on: https://webrtc-review.googlesource.com/83782
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23914}

TBR=steveanton@webrtc.org,hta@webrtc.org,tommi@webrtc.org

Bug: webrtc:9409
Change-Id: I37fc95ced60dea25aa9b4f5ad44bdf7174c8bd5c
Reviewed-on: https://webrtc-review.googlesource.com/88060
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#23919}
2018-07-11 04:40:26 +00:00
Qingsi Wang
13f4c896d5 Revert "Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*."
This reverts commit 870bca1f418a1abf445169a638a61f9a649d557f.

Reason for revert: it breaks internal tests and builds

Original change's description:
> Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.
>
> We now use RTC_HISTOGRAM_* macros in system_wrappers/include/metrics.h
> to report the metrics in pc/ and p2p/ that are currently been reported
> using MetricsObserverInterface.
>
> TBR=tommi@webrtc.org
>
> Bug: webrtc:9409
> Change-Id: I47c9975402293c72250203fa1ec19eb1668766f6
> Reviewed-on: https://webrtc-review.googlesource.com/83782
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23914}

TBR=steveanton@webrtc.org,deadbeef@webrtc.org,hta@webrtc.org,tommi@webrtc.org

Change-Id: I1afd92d44f3b8cf3ae9aa6e6daa9a3a272e8097f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9409
Reviewed-on: https://webrtc-review.googlesource.com/88040
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@google.com>
Cr-Commit-Position: refs/heads/master@{#23916}
2018-07-10 21:26:28 +00:00
Qingsi Wang
870bca1f41 Replace the usage of MetricsObserverInterface by RTC_HISTOGRAM_*.
We now use RTC_HISTOGRAM_* macros in system_wrappers/include/metrics.h
to report the metrics in pc/ and p2p/ that are currently been reported
using MetricsObserverInterface.

TBR=tommi@webrtc.org

Bug: webrtc:9409
Change-Id: I47c9975402293c72250203fa1ec19eb1668766f6
Reviewed-on: https://webrtc-review.googlesource.com/83782
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23914}
2018-07-10 20:02:16 +00:00
Mirko Bonadei
3e8cb4718b Delegate WIN32_LEAN_AND_MEAN definition to the toolchain.
The macro WIN32_LEAN_AND_MEAN is always defined by the toolchain, see
the config //build/config/win:lean_and_mean [1].

This means that WebRTC should not define it in its source files, this
causes two problems:

1. rtc_base:rtc_base_generinc needs to use /wd4005 to avoid a compiler
   warning (because the macro is redefined without checking).
2. the macro is not consistently defined before including windows.h,
   which means that WebRTC already relies on the toolchain almost
   everywhere.

[1] - https://cs.chromium.org/chromium/src/build/config/win/BUILD.gn?l=514&rcl=54f7be95955c9b35e64569c1d40e0c3dd097359c

Bug: webrtc:9251
Change-Id: I2b0b3c16856023db2a38a38f7652bb849ff283c7
Reviewed-on: https://webrtc-review.googlesource.com/87582
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23889}
2018-07-09 19:54:28 +00:00
Mirko Bonadei
4524c74171 Removing /wd4703 from rtc_base:rtc_base_generic.
This warning suppression flag is not needed.

Bug: webrtc:9251
Change-Id: I3319e57f737d44e991ab7283647fd5522bd4bd37
Reviewed-on: https://webrtc-review.googlesource.com/87581
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23886}
2018-07-09 14:32:06 +00:00
Karl Wiberg
918f50c5d1 Use absl::make_unique and absl::WrapUnique directly
Instead of going through our wrappers in ptr_util.h.

This CL was generated by the following script:

  git grep -l ptr_util | xargs perl -pi -e 's,#include "rtc_base/ptr_util.h",#include "absl/memory/memory.h",'
  git grep -l MakeUnique | xargs perl -pi -e 's,\b(rtc::)?MakeUnique\b,absl::make_unique,g'
  git grep -l WrapUnique | xargs perl -pi -e 's,\b(rtc::)?WrapUnique\b,absl::WrapUnique,g'
  git checkout -- rtc_base/ptr_util{.h,_unittest.cc}
  git cl format

Followed by manually adding dependencies on
//third_party/abseil-cpp/absl/memory until `gn check` stopped
complaining.

Bug: webrtc:9473
Change-Id: I89ccd363f070479b8c431eb2c3d404a46eaacc1c
Reviewed-on: https://webrtc-review.googlesource.com/86600
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23850}
2018-07-05 10:59:49 +00:00
Jonas Olsson
d000b0a32e Move RTC_CHECK_OP error message construction out of header file.
This simplifies the logic, prevents emitting code for every pair of
argument types to RTC_CHECK_OP and partially unblocks removing streams from
the check code altogether.

Bug: webrtc:8982
Change-Id: Ib6652ac9a342e4471c12574a79872833cc943407
Reviewed-on: https://webrtc-review.googlesource.com/86544
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23821}
2018-07-03 15:21:13 +00:00
Ishan Khot
a3b6601c9b Make ReceiveSendsFromThread use Dispatch
The ReceiveSendsFromThread function calls the OnMessage function.
However, instead we should be calling the Dispatch function which does the same thing as the OnMessage function except that it also does additional logging.
This logging is being missed for the cases where we call functions on a thread using the Invoke function.
Calling Dispatch fixes the issue and makes sure that this code path is consistent with other paths of posting to a thread like Post function which goes through Dispatch ultimately.

Bug: None
Change-Id: I75a5c8b464226cf4de60a3d19dff48f9e6197cca
Reviewed-on: https://webrtc-review.googlesource.com/85885
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23813}
2018-07-03 09:09:43 +00:00