Commit Graph

28748 Commits

Author SHA1 Message Date
a854921813 Enable custom metrics gathering from stats API in PC framework.
It is done by making QualityMetricsReporter implements
StatsObserverInterface.

Bug: webrtc:10138
Change-Id: Ied6c9a7e53bf942d0e48ce107f668b6af8e42735
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149807
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28916}
2019-08-20 11:33:18 +00:00
e21f3f574b Revert "Delete mac_utils.h and mac_utils.cc"
This reverts commit ada8e17125d2124f5bcdc1558182ce95d6311d93.

Reason for revert: Breaks chromium, due to undeclared dependency on SystemConfiguration.framework

Original change's description:
> Delete mac_utils.h and mac_utils.cc
> 
> They defined two functions: ToUtf16 and ToUtf8. The former was unused,
> and the latter is moved to
> modules/desktop_capture/mac/window_list_utils.cc, the only user.
> 
> Tbr: sergeyu@chromium.org
> Bug: None
> Change-Id: Ib8a513da42e43ba8d41a2de4c1645b3f48448dc9
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148531
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Sergey Ulanov <sergeyu@google.com>
> Cr-Commit-Position: refs/heads/master@{#28913}

TBR=zijiehe@chromium.org,nisse@webrtc.org,kthelgason@webrtc.org,sergeyu@google.com,sergeyu@chromium.org

Change-Id: I9d6a2f63b3acde0eefab92d034529b800d6adcab
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149811
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28915}
2019-08-20 09:58:37 +00:00
6b117a5f3a Make the callbacks to PollStats for RampUp* tests more regular.
Before I had assumed that it wasn't critical for these tests
to have the stats polled at a very regular interval but the perf
waterfall disagrees, so I'm accounting for drift when scheduling
the callbacks.

Bug: chromium:993688
Change-Id: If7f1d3919093f97508774c0c635fff6fe5081c10
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149809
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28914}
2019-08-20 09:10:58 +00:00
ada8e17125 Delete mac_utils.h and mac_utils.cc
They defined two functions: ToUtf16 and ToUtf8. The former was unused,
and the latter is moved to
modules/desktop_capture/mac/window_list_utils.cc, the only user.

Tbr: sergeyu@chromium.org
Bug: None
Change-Id: Ib8a513da42e43ba8d41a2de4c1645b3f48448dc9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148531
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Sergey Ulanov <sergeyu@google.com>
Cr-Commit-Position: refs/heads/master@{#28913}
2019-08-20 08:52:28 +00:00
928146f546 Removing all external access to the integer sample data in AudioBuffer
This CL removes all external access to the integer sample data in the
AudioBuffer class. It also removes the API in AudioBuffer that provides this.

The purpose of this is to pave the way for removing the sample
duplicating and implicit conversions between integer and floating point
sample formats which is done inside the AudioBuffer.

Bug: webrtc:10882
Change-Id: I1438b691bcef98278aef8e3c63624c367c2d12e9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149162
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28912}
2019-08-20 08:36:47 +00:00
93d4c10ffc Declare references as constant in the metal renderers.
This silences a warning that appeared with iOS 13, and is more efficient
in general.

Bug: webrtc:10866
Change-Id: I23db6b78af36e59b1d825d3f0cccc6008f9b626a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149808
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28911}
2019-08-20 08:30:47 +00:00
2579f0c584 RTCError as return type for PeerConnectionInterface::SetConfiguration
Bug: None
Change-Id: I6dd7378ceac617e29945d72906cb8e2e0bd49538
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149166
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28910}
2019-08-20 06:52:05 +00:00
7627fdd68a Sanitize the address field of peer-reflexive remote candidates.
Per the latest WebRTC stats spec
(https://w3c.github.io/webrtc-stats/#dom-rtcicecandidatestats)
the address field of a peer-reflexive remote candidate should be concealed
until the same address is learnt via addIceCandidate.

This CL also refactors the sanitization-related code paths.

Bug: chromium:968161
Change-Id: I74c5da78232b2f604689867bda2937b8af827c4f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149381
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28909}
2019-08-20 06:29:25 +00:00
7c78e42a50 Roll chromium_revision 21d23ea529..5a34954f26 (688221:688384)
Change log: 21d23ea529..5a34954f26
Full diff: 21d23ea529..5a34954f26

Changed dependencies
* src/base: 5c997cda2e..d30a0f305c
* src/build: 38c83d25ac..a84fe227a4
* src/ios: d75d8cbe01..fe2bd88772
* src/testing: 2445c42c9e..10f7870b5e
* src/third_party: 4475b195cb..254300bf25
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1f288d915d..939b6b1f1c
* src/third_party/depot_tools: 73b9263523..df7093214c
* src/third_party/ffmpeg: e0e3133c40..0f36d36f49
* src/third_party/googletest/src: 27e17f7851..d5e9e0c38f
* src/third_party/icu: 9a5af81f58..2b2ee71586
* src/third_party/r8: 6mmxCrRGY15GNu1r-XmGVxohZfruF6_XjiKSCZakkN4C..PiWJNu1SdDl433fYwX_rFSX3zNZWizTfghShod_8QZ0C
* src/tools: 3cb6888ac0..f00b7b92ad
DEPS diff: 21d23ea529..5a34954f26/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I1c35478f2241a3fcaf1fdeae4168d162580bafcc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149980
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28908}
2019-08-20 02:36:04 +00:00
587991c7e1 Remove jeroendb@webrtc.org from OWNERS
Also makes shampson@webrtc.org the primary owner of SCTP.

Bug: None
Change-Id: Ib9ab9718d415f54602fb72f03941b2ca1bef0059
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149941
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Commit-Queue: Seth Hampson <shampson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28907}
2019-08-19 22:49:41 +00:00
a0b52b5708 Remove zhihuang@webrtc.org from OWNERS
Bug: webrtc:10381
Change-Id: I7c3ff938b7ebb8d00ffa4dc1bd384722cf24e71c
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140320
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28906}
2019-08-19 22:37:51 +00:00
9bdb1b1dc5 Roll chromium_revision afb0a631b9..21d23ea529 (688061:688221)
Change log: afb0a631b9..21d23ea529
Full diff: afb0a631b9..21d23ea529

Changed dependencies
* src/base: 845cdcdcd2..5c997cda2e
* src/build: 7539a9c425..38c83d25ac
* src/ios: 17cf6dfd7e..d75d8cbe01
* src/testing: c96b0fc8eb..2445c42c9e
* src/third_party: d9108ec1ca..4475b195cb
* src/third_party/depot_tools: 72fbaf4d46..73b9263523
* src/tools: 054f3713fb..3cb6888ac0
DEPS diff: afb0a631b9..21d23ea529/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I730cf764bad00252e555f0227c180b20e02180cd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149921
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28905}
2019-08-19 20:50:46 +00:00
1ba5dec769 Reland "Set the usage pattern bits for adding remote ICE candidates from SDP."
This is a reland of 7c6f74ab0344e9c6201de711d54026e9990b8e6c

Compared to the previous commit, new bits are added to log calls of
AddIceCandidate, and the gathering and reception of IPv6 candidates.

Original change's description:
> Set the usage pattern bits for adding remote ICE candidates from SDP.
>
> Currently these bits are only set when a remote ICE candidate is
> successfully added via addIceCandidate. For non-trickled sessions in
> which the remote candidates are added via the remote description, these
> bits are lost. This also happens for trickled sessions, though a rare
> case, when addIceCandidate does not succeed because the peer connection
> is not ready to add any remote candidate.
>
> Bug: webrtc:10868
> Change-Id: Ib2f199f9ffc936060473934d25ba397ef31131a3
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148880
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28844}

Bug: webrtc:10868
Change-Id: Ifac0593dcfb64d88619fd24b4ab61c14a0810beb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149024
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28904}
2019-08-19 19:32:26 +00:00
0d1996f6c6 Removes empty p2p/base/transport.h
Bug: webrtc:9883
Change-Id: Ic87a7e2f6aba6b072f87408aa5bbb0d82e555d2d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149822
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28903}
2019-08-19 18:42:29 +00:00
fdf38802a6 Make "WebRTC-BweAllocProbingOnlyInAlr/Enabled/" default and remove key.
Bug: chromium:951299
Change-Id: Idf612040e21f2962cc63d7de3dcb237bbf868034
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148985
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Konrad Hofbauer <hofbauer@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28902}
2019-08-19 15:39:25 +00:00
e3a10e1b43 Remove usage of RtpRtcp::SetSSRC() in video/
That method is going away in favor in construction time setting.

Bug: webrtc:10774
Change-Id: I2aba5a2537e5846a3c9438a5b376b230e84c5f32
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149826
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28901}
2019-08-19 14:20:30 +00:00
185243b335 Remove most of PacedSenderUnittest
These tests are now run as part of PacingControllerUnittest instead.

Bug: webrtc:10809
Change-Id: If59e622e8a66565be678106d9341aa6eee78c299
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149803
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28900}
2019-08-19 13:32:59 +00:00
a2bc362ca0 Roll chromium_revision c7f14188a3..afb0a631b9 (687843:688061)
Additionally, remove stale ios recipe variables due to this change:
https://chromium-review.googlesource.com/c/chromium/src/+/1394435

Change log: c7f14188a3..afb0a631b9
Full diff: c7f14188a3..afb0a631b9

Changed dependencies
* src/base: 1ed92f77f9..845cdcdcd2
* src/build: 8f7634e82e..7539a9c425
* src/ios: d5987ad4b8..17cf6dfd7e
* src/testing: db51c13bec..c96b0fc8eb
* src/third_party: d53a889e2e..d9108ec1ca
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/3a96577620..1f288d915d
* src/third_party/googletest/src: e9d5f427b5..27e17f7851
* src/tools: 6f8134e8f5..054f3713fb
DEPS diff: c7f14188a3..afb0a631b9/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I97a8a461afa46f79fab683a6467d8622024b56a3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149806
Reviewed-by: Artem Titarenko <artit@webrtc.org>
Commit-Queue: Artem Titarenko <artit@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28899}
2019-08-19 12:54:42 +00:00
fce0b72c0b NetEq fuzzer: reduce max input size slightly to avoid timeout
Notry=True

Bug: chromium:988542
Change-Id: I10610f29cd3bb67bf6aa6c40654a2b5a600969e4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149170
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28898}
2019-08-19 12:28:47 +00:00
62c174c5a1 Reland of Correct conversion between float and fixed formats
This CL changes the way that values are converted
between fixed and floating point to
-Avoid the former asymmetric conversion causing
nonlinear distortions.
-Reduce the complexity.

In contrast to the initial CL, the DCHECKS on the incoming sample
range was changed to limiting.

Bug: webrtc:6594
Change-Id: I8218dfd5c45388ad5aac61be453d2f28725a2475
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/132783
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Original-Commit-Position: refs/heads/master@{#28867}
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149169
Cr-Commit-Position: refs/heads/master@{#28897}
2019-08-19 12:15:07 +00:00
5870503d5e Revert "Introduce ability to test echo in PC level test framework"
This reverts commit 77acb015b6ba886da3e7adb9c2106cf873fa8497.

Reason for revert: Downstream tests are failing.

Original change's description:
> Introduce ability to test echo in PC level test framework
> 
> Bug: webrtc:10138
> Change-Id: Ie638eaec5a46e37dc0eb52e9432fdebd0e4a1c4d
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147866
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Sam Zackrisson <saza@webrtc.org>
> Commit-Queue: Artem Titov <titovartem@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28892}

TBR=mbonadei@webrtc.org,saza@webrtc.org,kwiberg@webrtc.org,titovartem@webrtc.org

Change-Id: Idc87c1cb679712d701d30902bcae4e2c698cf1cd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10138
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149804
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28896}
2019-08-19 11:46:04 +00:00
93f518917f Remove some usage of RtpRtcp::SetSSRC()
Bug: webrtc:10774
Change-Id: Ib8fa84f5d70ceb7e715405eae2901bcd7bdfebfe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/146984
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28895}
2019-08-19 11:11:41 +00:00
cd277b84da AEC3: Fix computation of audio buffer delay
This change fixes a bug where the initial delay could be set incorrectly.

Bug: webrtc:10896
Change-Id: I66b2234b69c46639488f4561e973384001230861
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149820
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28894}
2019-08-19 11:05:21 +00:00
17f9ee5358 Enable VideoReceiveStreamTestWithFakeDecoder.RenderedFrameUpdatesGetSources for iOS.
This change re-enables a previously flaky unit tests for iOS. It seems to have the same root cause as webrtc:10827 and which was fixed by: https://webrtc-review.googlesource.com/c/src/+/149171

Bug: webrtc:10872, webrtc:10827
Change-Id: I71b2581cf8c75e0dd6a39b77e6cf34c121ff22f4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149802
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Commit-Queue: Chen Xing <chxg@google.com>
Cr-Commit-Position: refs/heads/master@{#28893}
2019-08-19 10:44:42 +00:00
77acb015b6 Introduce ability to test echo in PC level test framework
Bug: webrtc:10138
Change-Id: Ie638eaec5a46e37dc0eb52e9432fdebd0e4a1c4d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147866
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28892}
2019-08-19 10:19:41 +00:00
3ab8eb5e6f Add steps logging into PC test framework
For now there are a lot of logging from signaing phase and from WebRTC
internal components during the call. So this CL will add log entries
about starting or ending important phase of the test to easier determine
when what happend.

Bug: webrtc:10138
Change-Id: I4bf30d687be6ba830daff4c1d6f2e72afd5eb43d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149064
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28891}
2019-08-19 10:08:15 +00:00
83773b555c Delete deprecated RtpRtcp::CreateRtpRtcp factory
Bug: None
Change-Id: I2ace74c380b89d300a6d0e7cca4766147f33cb1d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149821
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28890}
2019-08-19 10:07:10 +00:00
3c7abdc4bd Roll chromium_revision d5a13ccb8e..c7f14188a3 (687732:687843)
Change log: d5a13ccb8e..c7f14188a3
Full diff: d5a13ccb8e..c7f14188a3

Changed dependencies
* src/base: e6ee54664a..1ed92f77f9
* src/build: 36d9c4f858..8f7634e82e
* src/ios: 73642be5c4..d5987ad4b8
* src/testing: be751f12d5..db51c13bec
* src/third_party: 85c6d9ad77..d53a889e2e
* src/third_party/android_sdk/public: DLK621q5_Bga5EsOr7cp6bHWWxFKx6UHLu_Ix_m3AckC..5DL7LQQjVMLClXLzLgmGysccPGsGcjJdvH9z5-uetiIC
* src/third_party/depot_tools: 9f4b37db0e..72fbaf4d46
* src/third_party/libjpeg_turbo: cd241207cb..d460d6b1cb
* src/tools: c549e0f77a..6f8134e8f5
DEPS diff: d5a13ccb8e..c7f14188a3/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Id6a3d67eb127e463f024d0038d354f402742abdd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149823
Reviewed-by: Artem Titarenko <artit@webrtc.org>
Commit-Queue: Artem Titarenko <artit@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28889}
2019-08-19 10:03:50 +00:00
637f110667 Remove rtcbot.
Bug: None
Change-Id: I8bd33860356613f3f342a52bbd28183f6f0b1b08
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/146717
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28888}
2019-08-19 09:26:08 +00:00
6b430867b8 Reland "[GetStats] Expose video codec implementation in standardized metrics."
This is a reland of 2b9fa09fa3e3379fd8e76490c394f25670352ef2.

It got reverted because I forgot to whitelist the new metrics in chromium,
which has now been done:
https://chromium-review.googlesource.com/c/chromium/src/+/1760209
Relanding requires no changes to the CL.

Original change's description:
> [GetStats] Expose video codec implementation in standardized metrics.
>
> Spec issue: https://github.com/w3c/webrtc-stats/issues/445
> Spec PR: https://github.com/w3c/webrtc-stats/pull/473
>
> Now that the spec's RTCCodecStats.implementation has moved to
> RTCOutboundRtpStreamStats.encoderImplementation and
> RTCInboundRtpStreamStats.decoderImplementation, this CL implements them
> using the same string that the legacy getStats() API used.
>
> Bug: webrtc:10890
> Change-Id: Ic43ce44735453626791959df3061ee253356015a
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149168
> Commit-Queue: Henrik Boström <hbos@webrtc.org>
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28877}

TBR=ilnik@webrtc.org

Bug: webrtc:10890
Change-Id: Ib874b608856c2795b1ca08f6af43c61dd859ea21
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149800
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28887}
2019-08-19 09:09:18 +00:00
d05edecf4c Extract most of PacedSender into PacedSendingController.
The Pacer now just handles interaction with Module/ProcessThread and
forwarding packets to PacketRouter.
All other logic is moved to PacedSendingController, including tests.
PacedSender unittest are now just some basic sanity tests.

Bug: webrtc:10809
Change-Id: I69223cd9d8300997375b03706d2e99c88e46241c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149041
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28886}
2019-08-19 09:07:28 +00:00
9755f97e7f Update constributing source before publishing frame
This patch is a follow up to https://webrtc-review.googlesource.com/c/src/+/143177.

That patch modified the updating of CSRCS until "publishing" the frame
to the renderer, however the update was added to just after
calling renderer->OnFrame(video_frame).

This patch reverses the calls of renderer->OnFrame(video_frame)
and source_tracker_.OnFrameDelivered(video_frame.packet_infos())
so that the CSRCS are available when the frame is available.

This fixes the the flakes described in webrtc:10827 that has a
test that checks the CSRCs directly after a frame is available.

Note: an optimal/correct solution would be to update the renderer
and the source tracker in the same critical section so that they
would be available at the same time.

Bug: webrtc:10827
Change-Id: Ibf6efa832d8f2f2bcce0a9b0b946188bb67d48b1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149171
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Chen Xing <chxg@google.com>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28885}
2019-08-19 08:15:21 +00:00
fa8f4eee40 Only combine media transport and ICE states if used for media.
Media transport (or, equivalently, datagram transport) may only be
created for data channels.  In this case, it's not appropriate to
consider ICE not-yet-connected or failed due to the media transport's
state.  If the media transport disconnects or fails, it will signal data
channels separately.

Bug: webrtc:9719
Change-Id: Ieb7cb307116e479d01616559d8bafdfc650a78c5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149420
Reviewed-by: Benjamin Wright <benwright@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28884}
2019-08-16 23:55:42 +00:00
015c3cbf51 Remove deprecated constructors of RtpSource
Bug: webrtc:10650
Change-Id: I1dee27252068ad33e62978ee3a3b3f60b266a2c7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149220
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28883}
2019-08-16 20:56:56 +00:00
0e1a558fb3 Allowing 40ms audio frame length.
Currently 20ms, 60ms and 120ms frame length are supported. The motivation is to better adapt audio bit rate to network conditions with more frame length choices.

This is continuation of https://webrtc-review.googlesource.com/c/src/+/146206, since crodbro is out of office, I created this commit for continuing the code review.

Bug: webrtc:10820
Change-Id: I0e35e91b524f63686bfdf767b7a95c51aeb24716
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/146780
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28882}
2019-08-16 20:24:18 +00:00
0ee431178f Roll chromium_revision c7f850c75e..d5a13ccb8e (687596:687732)
Change log: c7f850c75e..d5a13ccb8e
Full diff: c7f850c75e..d5a13ccb8e

Changed dependencies
* src/build: d501102a9b..36d9c4f858
* src/ios: 6707a43010..73642be5c4
* src/third_party: e5611f0d45..85c6d9ad77
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4eafd3bf8d..3a96577620
* src/tools: 26cd8f59c9..c549e0f77a
DEPS diff: c7f850c75e..d5a13ccb8e/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Ibac2512cc3b88ef6a33cd30bea66f4c14f215ba4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149360
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28881}
2019-08-16 18:31:38 +00:00
f5e5d250bc BalancedDegradationSettings: add option to configure a min framerate diff.
If a framerate reduction (input fps - restricted fps) is less than the
configured diff, shorten interval to next qp check.

Bug: none
Change-Id: Ia0b9e0638e5ba75cdc20a1bb45bfcb7d858c5f89
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149040
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28880}
2019-08-16 16:13:46 +00:00
df625f46c0 Revert "[GetStats] Expose video codec implementation in standardized metrics."
This reverts commit 2b9fa09fa3e3379fd8e76490c394f25670352ef2.

Reason for revert: speculative revert since it seems to break Chrome FYI bots. See https://ci.chromium.org/p/chromium/builders/webrtc.fyi/WebRTC%20Chromium%20FYI%20Linux%20Tester/4206

Original change's description:
> [GetStats] Expose video codec implementation in standardized metrics.
> 
> Spec issue: https://github.com/w3c/webrtc-stats/issues/445
> Spec PR: https://github.com/w3c/webrtc-stats/pull/473
> 
> Now that the spec's RTCCodecStats.implementation has moved to
> RTCOutboundRtpStreamStats.encoderImplementation and
> RTCInboundRtpStreamStats.decoderImplementation, this CL implements them
> using the same string that the legacy getStats() API used.
> 
> Bug: webrtc:10890
> Change-Id: Ic43ce44735453626791959df3061ee253356015a
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149168
> Commit-Queue: Henrik Boström <hbos@webrtc.org>
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28877}

TBR=ilnik@webrtc.org,hbos@webrtc.org

Change-Id: Ia0b7f9806564cf28881c50d6371b8141a22e3431
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10890
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149175
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28879}
2019-08-16 15:29:28 +00:00
6094953ed1 Add helper functions to convert between integer milliseconds and fixed-point seconds.
This change adds the following helper functions to convert between "integer milliseconds"-style timestamps and durations, and "UQ32.32 and Q32.32"-style NTP timestamps and durations:
- Int64MsToQ32x32
- UInt64MsToUQ32x32
- Q32x32ToInt64Ms
- UQ32x32ToUInt64Ms

The Q-format NTP timestamps and durations are used by some RTP/RTCP packets.

Bug: webrtc:10739
Change-Id: I89123d2dba7370f26e239d722a4975bf5ac6e668
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148444
Commit-Queue: Chen Xing <chxg@google.com>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28878}
2019-08-16 14:49:46 +00:00
2b9fa09fa3 [GetStats] Expose video codec implementation in standardized metrics.
Spec issue: https://github.com/w3c/webrtc-stats/issues/445
Spec PR: https://github.com/w3c/webrtc-stats/pull/473

Now that the spec's RTCCodecStats.implementation has moved to
RTCOutboundRtpStreamStats.encoderImplementation and
RTCInboundRtpStreamStats.decoderImplementation, this CL implements them
using the same string that the legacy getStats() API used.

Bug: webrtc:10890
Change-Id: Ic43ce44735453626791959df3061ee253356015a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149168
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28877}
2019-08-16 14:10:46 +00:00
cc96db6de2 Simplify stats poller stop in PC level framework
Bug: webrtc:10138
Change-Id: I9f6c2fd4109439df813b2bd0a47466eefb64defd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149065
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28876}
2019-08-16 13:51:06 +00:00
6950b3088c Fix thread naming in Call constructor
This only fixes the name string you get when you query the threads, the
functionality is not changes.

Bug: None
Change-Id: I29408cf38e0e41faa127a70a010d37a980bb24ce
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149167
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28875}
2019-08-16 12:44:30 +00:00
bbeb10925e Reporting audio device underrun counter
Bug: webrtc:10884
Change-Id: I35636fcbc1e2a19a89242379cdff6ec5c12fd21a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149200
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Alex Narest <alexnarest@google.com>
Cr-Commit-Position: refs/heads/master@{#28874}
2019-08-16 11:49:55 +00:00
9b29d69650 Make ANA frame length controller more robust to encoder frame lengths.
Bug: webrtc:10820
Change-Id: Ic3a30976d0181de9cdd35e44d4c5439cadad4812
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149163
Commit-Queue: Minyue Li <minyue@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28873}
2019-08-16 10:55:39 +00:00
533c225c93 Revert "Correct conversion between float and fixed formats"
This reverts commit 67e43c8b95057a889ba9946e47d50a265e1e9ac9.

Reason for revert: speculative revert since we see failing bots on Android after this change

https://ci.chromium.org/p/chromium/builders/webrtc.fyi/WebRTC%20Chromium%20FYI%20Android%20Tests%20%28dbg%29%20%28K%20Nexus5%29/4124

Original change's description:
> Correct conversion between float and fixed formats
> 
> This CL changes the way that values are converted
> between fixed and floating point to
> -Avoid the former asymmetric conversion causing
> nonlinear distortions.
> -Reduce the complexity.
> 
> Bug: webrtc:6594
> Change-Id: I64d0cc31c5d16f397686a59a062cfbc4b336d94d
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/132783
> Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
> Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
> Commit-Queue: Per Åhgren <peah@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28867}

TBR=henrik.lundin@webrtc.org,gustaf@webrtc.org,peah@webrtc.org

Change-Id: Id828a09de7075e48556fe2d0beba7a0c6ec227f6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:6594
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149165
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28872}
2019-08-16 10:40:11 +00:00
07a6652865 Roll chromium_revision f54998af9c..c7f850c75e (687496:687596)
Change log: f54998af9c..c7f850c75e
Full diff: f54998af9c..c7f850c75e

Changed dependencies
* src/base: c245b4c2cf..e6ee54664a
* src/build: b9e0d9224b..d501102a9b
* src/ios: fa891cf749..6707a43010
* src/testing: e70d524717..be751f12d5
* src/third_party: 82f8cd10f8..e5611f0d45
* src/third_party/android_ndk: https://chromium.googlesource.com/android_ndk.git/+log/4e2cea441b..62582753e8
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/2ae52adeee..4eafd3bf8d
* src/third_party/depot_tools: 26a8b9f356..9f4b37db0e
* src/tools: a44e1c7798..26cd8f59c9
DEPS diff: f54998af9c..c7f850c75e/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I07c1eccccca2624b9242f7efa72e3710d851c35a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149343
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28871}
2019-08-16 08:31:10 +00:00
98bbd88883 Roll chromium_revision 7a2da7b921..f54998af9c (686822:687496)
Change log: 7a2da7b921..f54998af9c
Full diff: 7a2da7b921..f54998af9c

Changed dependencies
* src/base: d22535e67d..c245b4c2cf
* src/build: 8ff415306c..b9e0d9224b
* src/ios: 84f749199b..fa891cf749
* src/testing: c3408396aa..e70d524717
* src/third_party: 6f8122c50d..82f8cd10f8
* src/third_party/android_deps/libs/com_android_support_animated_vector_drawable: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_appcompat_v7: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_cardview_v7: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_design: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_gridlayout_v7: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_leanback_v17: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_mediarouter_v7: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_palette_v7: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_preference_leanback_v17: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_preference_v14: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_preference_v7: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_recyclerview_v7: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_support_annotations: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_support_compat: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_support_core_ui: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_support_core_utils: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_support_fragment: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_support_media_compat: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_support_v13: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_support_v4: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_support_vector_drawable: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/android_deps/libs/com_android_support_transition: version:27.0.0-cr0..version:28.0.0-cr0
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/73af388b69..2ae52adeee
* src/third_party/depot_tools: 9185e4495d..26a8b9f356
* src/third_party/googletest/src: 90a443f9c2..e9d5f427b5
* src/tools: 9c1b72ffba..a44e1c7798
Added dependencies
* src/third_party/android_deps/libs/com_android_support_cursoradapter
* src/third_party/android_deps/libs/com_android_support_localbroadcastmanager
* src/third_party/android_deps/libs/com_android_support_drawerlayout
* src/third_party/android_deps/libs/com_android_support_slidingpanelayout
* src/third_party/android_deps/libs/android_arch_lifecycle_livedata
* src/third_party/android_deps/libs/com_android_support_collections
* src/third_party/android_deps/libs/com_android_support_versionedparcelable
* src/third_party/android_deps/libs/com_android_support_customview
* src/third_party/android_deps/libs/com_android_support_viewpager
* src/third_party/android_deps/libs/com_android_support_asynclayoutinflater
* src/third_party/android_deps/libs/android_arch_lifecycle_livedata_core
* src/third_party/android_deps/libs/com_android_support_print
* src/third_party/android_deps/libs/com_android_support_loader
* src/third_party/android_deps/libs/com_android_support_swiperefreshlayout
* src/third_party/android_deps/libs/com_android_support_interpolator
* src/third_party/android_deps/libs/android_arch_lifecycle_viewmodel
* src/third_party/android_deps/libs/com_android_support_coordinatorlayout
* src/third_party/android_deps/libs/com_android_support_documentfile
* src/third_party/android_deps/libs/android_arch_core_runtime
DEPS diff: 7a2da7b921..f54998af9c/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Iceda756a8201f7a04d415922a5f73266bc7b8362
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149321
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28870}
2019-08-16 00:35:23 +00:00
e5defb167a Sanitize the selected candidate pair in the public API.
The public API to obtain the selected candidate pair is changed to
GetSelectedCandidatePair in the ICE transport, and the returned pair
has address-sanitized candidates.

Bug: chromium:993878
Change-Id: I44f9d2385a84f9e22447108be2e57ef9e62671eb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149080
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28869}
2019-08-15 18:36:35 +00:00
ffc525bb96 Fix a bug/typo in WebRtcSpl_FilterAR which updates the wrong state vector
Bug: webrtc:10877
Change-Id: I089ac68d71a31914ddb020cb78a44295230cb44b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149028
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28868}
2019-08-15 16:46:22 +00:00
67e43c8b95 Correct conversion between float and fixed formats
This CL changes the way that values are converted
between fixed and floating point to
-Avoid the former asymmetric conversion causing
nonlinear distortions.
-Reduce the complexity.

Bug: webrtc:6594
Change-Id: I64d0cc31c5d16f397686a59a062cfbc4b336d94d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/132783
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28867}
2019-08-15 13:51:39 +00:00