Commit Graph

26868 Commits

Author SHA1 Message Date
c680c4a807 Revert "Running FrameBuffer on task queue."
This reverts commit 13943b7b7f6d00568912b9969db2c7871d18e21f.

Reason for revert: Breaks chromium import bots:
https://ci.chromium.org/p/chromium/builders/webrtc.fyi/WebRTC%20Chromium%20FYI%20Android%20Tests%20%28dbg%29%20%28K%20Nexus5%29

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

Original change's description:
> Running FrameBuffer on task queue.
> 
> This prepares for running WebRTC in simulated time where event::Wait
> based timing doesn't work.
> 
> Bug: webrtc:10365
> Change-Id: Ia0f9b1cc8e3c8c27a38e45b40487050a4699d8cf
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/129962
> Reviewed-by: Philip Eliasson <philipel@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Commit-Queue: Sebastian Jansson <srte@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27422}

TBR=sprang@webrtc.org,philipel@webrtc.org,srte@webrtc.org

Change-Id: I198a91ec1707cc8752a7fe55caf0f172e1b8e60a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10365
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/131120
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27436}
2019-04-03 10:27:51 +00:00
fc6f3e5873 Include duration of pauses into sum of squared frames duration.
Bug: webrtc:10502
Change-Id: Ie905c0c9e8ca8fe07be585ce5a0d75e9eed6e865
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130499
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27435}
2019-04-03 10:03:18 +00:00
78a5e96001 Reland "Add thread guards to JsepTransport"
This reverts commit caedb5db82b2bc8273910f4a0d1afb1d0e2994f3.

Reason for revert: Fixed issue (allow SetNeedsIceRestart from off-thread).

Original change's description:
> Revert "Add thread guards to JsepTransport"
>
> This reverts commit 7e1db52c93c57a180073906eda6a58919a9fd537.
>
> Reason for revert: Breaks downstream.
>
> Original change's description:
> > Add thread guards to JsepTransport
> >
> > This ensures that JsepTransport's methods are either only accessed on the thread
> > that creates it, or using methods that are marked for off-thread use
> > (using a lock to prevent simultaneous access).
> >
> > The intent is to document the existing contract, and to make it easy to find the
> > actions needed to convert the class to a pure single-threaded class.
> >
> > Bug: webrtc:10300
> > Change-Id: Ib5cdc027632c36baec55179937d6eb664bbaf6f5
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/121946
> > Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> > Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> > Reviewed-by: Henrik Boström <hbos@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#27427}
>
> TBR=steveanton@webrtc.org,solenberg@webrtc.org,kwiberg@webrtc.org,hbos@webrtc.org,hta@webrtc.org
>
> Change-Id: I30c65d2161de9376ccd1172e2b261f2280fb1d75
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:10300
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130519
> Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
> Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27429}

Change-Id: Ic32bfc04d96e657fc67c3d3999f77969e55ed994
Bug: webrtc:10300
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130962
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27434}
2019-04-03 09:41:38 +00:00
33d2a91737 Fix target bitrate RTCP messages behavior for SVC streams
This is a better solution than https://webrtc-review.googlesource.com/c/src/+/129929 (which got reverted).
This CL instead filters out unused SSRCs from RtpConfig for RtpVideoSender.

Bug: webrtc:10485
Change-Id: Iaa8d07681419a2387c8253eb38e08a0828e9e688
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130505
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27433}
2019-04-03 09:36:38 +00:00
dbfb58b850 Ignore ERROR_ACCESS_DENIED when stopping Windows platform threads.
Wine implements ::QueueUserAPC incorrectly and returns
ERROR_ACCESS_DENIED when the thread is terminating instead of
ERROR_GEN_FAILURE. This is (hopefully) safe to do, assuming
the correct Windows implementation would never use ERROR_ACCESS_DENIED
in an actual failure case. I can't find documentation that says one
way or the other.

Bug: None
Change-Id: If74a40bb7e1cd49cc2266c31684bd88f1c667422
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/131042
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27432}
2019-04-03 09:08:52 +00:00
d9bf720c20 Add thread safety annotations for some more PeerConnection members (part 11)
After reviewer feedback, this CL was reduced to just adding scary
comments on two variables.

Bug: webrtc:9987
Change-Id: Id1e251ffd02e4ca8050235bd9f3971b5363f0e3f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130960
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27431}
2019-04-03 09:05:41 +00:00
288cbe8200 Remove unused method in VCMInterFrameDelay.
Bug: none
Change-Id: I88f0f4011643736267f0dfa254cd65a936330253
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130475
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27430}
2019-04-03 07:35:28 +00:00
caedb5db82 Revert "Add thread guards to JsepTransport"
This reverts commit 7e1db52c93c57a180073906eda6a58919a9fd537.

Reason for revert: Breaks downstream.

Original change's description:
> Add thread guards to JsepTransport
> 
> This ensures that JsepTransport's methods are either only accessed on the thread
> that creates it, or using methods that are marked for off-thread use
> (using a lock to prevent simultaneous access).
> 
> The intent is to document the existing contract, and to make it easy to find the
> actions needed to convert the class to a pure single-threaded class.
> 
> Bug: webrtc:10300
> Change-Id: Ib5cdc027632c36baec55179937d6eb664bbaf6f5
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/121946
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Reviewed-by: Henrik Boström <hbos@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27427}

TBR=steveanton@webrtc.org,solenberg@webrtc.org,kwiberg@webrtc.org,hbos@webrtc.org,hta@webrtc.org

Change-Id: I30c65d2161de9376ccd1172e2b261f2280fb1d75
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10300
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130519
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27429}
2019-04-03 07:15:38 +00:00
0105dfcf08 Roll chromium_revision 80b8e2fb67..8a7888ec8b (646925:647072)
Change log: 80b8e2fb67..8a7888ec8b
Full diff: 80b8e2fb67..8a7888ec8b

Changed dependencies
* src/base: c120c15284..0b50d69249
* src/build: 846eecfa7b..0797ede5ef
* src/ios: 66b60fda52..e9d51ce300
* src/testing: d4e5a80cb9..a206cb6292
* src/third_party: 215bb7d384..c51b0e9f82
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e0703df92e..e1fc0b0b3d
* src/third_party/depot_tools: 3c830222ae..422c432dd2
* src/third_party/ffmpeg: f5b197fe66..e02fc00c5d
* src/tools: a8777b0878..9247105d80
DEPS diff: 80b8e2fb67..8a7888ec8b/DEPS

No update to Clang.

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

Change-Id: I5342a12d36abef1b2e34cc809da25e9a3596bf50
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/131080
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@{#27428}
2019-04-03 01:33:38 +00:00
7e1db52c93 Add thread guards to JsepTransport
This ensures that JsepTransport's methods are either only accessed on the thread
that creates it, or using methods that are marked for off-thread use
(using a lock to prevent simultaneous access).

The intent is to document the existing contract, and to make it easy to find the
actions needed to convert the class to a pure single-threaded class.

Bug: webrtc:10300
Change-Id: Ib5cdc027632c36baec55179937d6eb664bbaf6f5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/121946
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27427}
2019-04-02 21:49:36 +00:00
12d4e67d46 Roll chromium_revision d5a4101d31..80b8e2fb67 (646704:646925)
Change log: d5a4101d31..80b8e2fb67
Full diff: d5a4101d31..80b8e2fb67

Changed dependencies
* src/base: 9d4388e62e..c120c15284
* src/build: ac6645362a..846eecfa7b
* src/ios: 3c7dc6ae07..66b60fda52
* src/testing: 91f9ea29b9..d4e5a80cb9
* src/third_party: ffd87a131c..215bb7d384
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/83131f4f49..e0703df92e
* src/tools: 82ccf19769..a8777b0878
DEPS diff: d5a4101d31..80b8e2fb67/DEPS

Clang version changed 357316:356356
Details: d5a4101d31..80b8e2fb67/tools/clang/scripts/update.py

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

Change-Id: I01bf041f8fc8aee7c8d888848809886c9eaf0a1f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/131041
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@{#27426}
2019-04-02 21:23:16 +00:00
7d6a259baa Adds fake clock unit test.
Also removing unused ScopedRealClock.

Bug: webrtc:10365
Change-Id: I3cd95df894cba9bf4ee703d979f476e2c526bf35
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/128860
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27425}
2019-04-02 20:06:44 +00:00
27d5ad074c Fix mouse not being shared with Handgouts on Win10
When setting display scale to 200%, the mouse was shared only
for the top left quarter.

Regressed since https://chromium-review.googlesource.com/641075.
Indeed frame->rect() takes into account scale_factor while the
frame is constructed with a size that does not take this scale
factor into account.

Also make sure to do a float disivison in DesktopFrame::scale_factor()
so that it returns 1.5 instead of 1 when dpi is 144 (i.e. 150%).

Bug: chromium:948362
Change-Id: Ic10f44946c9f1b53181244a44a5b45109c259f9f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130371
Reviewed-by: Brave Yao <braveyao@webrtc.org>
Commit-Queue: Julien Isorce <julien.isorce@chromium.org>
Cr-Commit-Position: refs/heads/master@{#27424}
2019-04-02 19:10:34 +00:00
9435c61021 Expose TaskQueueFactory for webrtc::Call in peer connection api
making a step for GlobalTaskQueueFactory to be optional way
to provide TaskQueueFactory

Bug: webrtc:10284
Change-Id: Ife838b3691c256820973118bc5b3cb372dea09cf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130488
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27423}
2019-04-02 18:46:54 +00:00
13943b7b7f Running FrameBuffer on task queue.
This prepares for running WebRTC in simulated time where event::Wait
based timing doesn't work.

Bug: webrtc:10365
Change-Id: Ia0f9b1cc8e3c8c27a38e45b40487050a4699d8cf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/129962
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27422}
2019-04-02 18:34:59 +00:00
d98cbd8f91 Moves send side bandwidth estimation bandwidth cap inside class.
Bug: webrtc:9883
Change-Id: I0bcfacccf522de1a7276c5bee07418159c57e514
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130495
Reviewed-by: Jonas Olsson <jonasolsson@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27421}
2019-04-02 18:03:04 +00:00
5b84f67fba Cleaner reading of field trials in GoogCcNetworkController.
Bug: webrtc:9883
Change-Id: Ib871dfdef6221f2a231f6862edec6ed7db684613
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130515
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Jonas Olsson <jonasolsson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27420}
2019-04-02 17:58:09 +00:00
7a651c6e58 Add thread safety annotations for some more PeerConnection members (part 10)
Plus all the annotations that were necessary to make things compile
again.

Bug: webrtc:9987
Change-Id: I2b08c7db10dda7b18ad4ba036125f2a56ebf80a0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130478
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27419}
2019-04-02 17:40:37 +00:00
62bb47f5f8 Splits network node into link and router.
Bug: webrtc:9883
Change-Id: I5ec5265be0940922cff311d385f2bf190f731422
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130496
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27418}
2019-04-02 17:15:46 +00:00
3c15f468c6 Use SeqNumUnwapper to handle reordering of first packets
Fixed todo by replacing SequenceNumberUnwrapper with updated class
SeqNumUnwrapper that correctly handles reordering of early packets.

Bug: webrtc:10263
Change-Id: Iffd93db924fee132d35752996b8d29acbb315d24
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130498
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27417}
2019-04-02 16:17:32 +00:00
cb755b001c StreamDataCounters::last_packet_received_timestamp_ms added.
This a standard stat:
https://w3c.github.io/webrtc-stats/#dom-rtcinboundrtpstreamstats-lastpacketreceivedtimestamp

This is collected by StreamStatisticianImpl. A follow-up CL with plumb
it to the RTCStatsCollector.

Bug: webrtc:10449
Change-Id: I44e7f4735f9df78704ce21198f52e66d11e63740
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130479
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27416}
2019-04-02 14:46:06 +00:00
cf2df2fb97 Bases scenario frame matching on similarity.
Refactoring of quality measurement code, basing frame matching on
frame thumb likeness. This way the code is robust against variations
in timing and frame drops.

Bug: webrtc:9510
Change-Id: Ief7266e01f39ca621a529c0da736e5ed1df8560a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/124401
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27415}
2019-04-02 14:15:49 +00:00
1107cab646 Remove the ability for EchoRemover to override the render vs capture alignment
This change removes the (unused) ability of EchoRemover overriding
the delay of the RenderDelayController. The change is tested for
bit-exactness.

Bug: webrtc:8671
Change-Id: I188ef740f1437de64ffe236d07a7dcd4128192c2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130518
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27414}
2019-04-02 14:04:38 +00:00
f537da6c19 Fix threading model of video quality test with audio enabled
Bug: None
Change-Id: Ifb7fc57df54ec4d0a6f8c7f0504f3c06de6ac756
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130514
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27413}
2019-04-02 12:11:58 +00:00
a64f397397 Use the preferred capture format on windows.
The existing windows dshow capture code was ignoring the requested
capture format when enumerating preferred formats. This CL changes
the behavior to move the requested format to the start of the
preferred list. This should fix an issue causing MJPEG to be not
selected on certain devices because other formats were preferred,
resulting in reduced framerates for HD capture (USB 2.0 throughput
isn't high enough to support capturing 30fps 720p I420 data, and many
cameras, even internal, are on the USB 2.0 bus).

Note that Chromium has yet a different implementation, which is if
MJPEG is selected, it claims to *only* support MJPEG and no other
formats. This solution seems more correct; if, for some reason,
MJPEG was listed as supported but isn't asked of the pin, this
code will still produce some output, just possibly at a lower framerate
or resolution.

Bug: None
Change-Id: Id86f345936f6f32e08beec02925e41056c87a544
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130843
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27412}
2019-04-02 11:33:17 +00:00
2cc368fd7a Add thread safety annotations for some more PeerConnection members (part 9)
Plus all the annotations that were necessary to make things compile
again.

Bug: webrtc:9987
Change-Id: Ie958f4d86319e86527567ca1273a0595ccceee17
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130490
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27411}
2019-04-02 10:48:16 +00:00
66e7679fb8 Export symbols needed by the Chromium component build (part 8).
This CL uses RTC_EXPORT (defined in rtc_base/system/rtc_export.h)
to mark WebRTC symbols as visible from a shared library, this doesn't
mean these symbols are part of the public API (please continue to refer
to [1] for info about what is considered public WebRTC API).

[1] - https://webrtc.googlesource.com/src/+/HEAD/native-api.md

Bug: webrtc:9419
Change-Id: Ib2c29054b2ae008f5291bd3b762a504b18534326
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130513
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27410}
2019-04-02 10:13:36 +00:00
db6335efce Make sure screenshare_layers produce non-sync TL1 frames after keyframes
This fixes a regression introduces way back in August 2018:
https://webrtc-review.googlesource.com/c/src/+/91863/
For bonus points, also fixing an auxiliary test issue.

Bug: webrtc:10479, webrtc:10260
Change-Id: I4e99fe6e070446d10357d9d1a9d1ffc9dedcf419
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/129926
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27409}
2019-04-02 09:16:30 +00:00
ca07360d27 Roll chromium_revision ab376d5029..d5a4101d31 (646569:646704)
Change log: ab376d5029..d5a4101d31
Full diff: ab376d5029..d5a4101d31

Changed dependencies
* src/base: 6304b89da5..9d4388e62e
* src/build: 127e5f5304..ac6645362a
* src/ios: 1ef5026d2f..3c7dc6ae07
* src/testing: 3fd116ad47..91f9ea29b9
* src/third_party: eda2acd6f1..ffd87a131c
* src/third_party/depot_tools: 8d3ba46327..3c830222ae
* src/third_party/googletest/src: a18ac392d8..b617b27718
* src/tools: 3fe7625637..82ccf19769
DEPS diff: ab376d5029..d5a4101d31/DEPS

No update to Clang.

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

Change-Id: I5dc7ae5b542d842d69966873eeb4e9efff725aa3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130921
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@{#27408}
2019-04-02 08:33:34 +00:00
ac1667d128 Reland "RNN VAD: Replace Ooura with PFFFT for the pitch auto correlation."
This reverts commit d38ce9f82402a995289b87e044125847d12eb658.

Reason for revert: land this first, then fix downstream

Original change's description:
> Revert "RNN VAD: Replace Ooura with PFFFT for the pitch auto correlation."
> 
> This reverts commit 8fcd6537f242ffd74154a62dad410e573e2efc4b.
> 
> Reason for revert: broke internal projects.
> 
> Original change's description:
> > RNN VAD: Replace Ooura with PFFFT for the pitch auto correlation.
> > 
> > Bug: webrtc:9577, webrtc:10480
> > Change-Id: I6d58866d48b8eaaa4102551b88d4f55133d1915c
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130482
> > Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> > Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#27387}
> 
> TBR=gustaf@webrtc.org,alessiob@webrtc.org
> 
> Change-Id: Ia05057326ebc277f334b13db0bfec9d4442903c2
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:9577, webrtc:10480
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130369
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27405}

TBR=gustaf@webrtc.org,alessiob@webrtc.org,qingsi@webrtc.org

Change-Id: I345f00d798fb67d0f02bf1e89319dac7f0287485
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9577, webrtc:10480
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130516
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27407}
2019-04-02 06:58:55 +00:00
4f5975c990 Roll chromium_revision b29b632278..ab376d5029 (646441:646569)
Change log: b29b632278..ab376d5029
Full diff: b29b632278..ab376d5029

Changed dependencies
* src/base: 8f8023cf1f..6304b89da5
* src/build: a660b0b917..127e5f5304
* src/ios: 923a72938c..1ef5026d2f
* src/testing: e9520ad303..3fd116ad47
* src/third_party: e92ab335d2..eda2acd6f1
* src/tools: 7d73442b85..3fe7625637
DEPS diff: b29b632278..ab376d5029/DEPS

No update to Clang.

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

Change-Id: Ib3587c264bc7765acd5c7f27a426b18c661695d5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130844
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@{#27406}
2019-04-02 00:42:25 +00:00
d38ce9f824 Revert "RNN VAD: Replace Ooura with PFFFT for the pitch auto correlation."
This reverts commit 8fcd6537f242ffd74154a62dad410e573e2efc4b.

Reason for revert: broke internal projects.

Original change's description:
> RNN VAD: Replace Ooura with PFFFT for the pitch auto correlation.
> 
> Bug: webrtc:9577, webrtc:10480
> Change-Id: I6d58866d48b8eaaa4102551b88d4f55133d1915c
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130482
> Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27387}

TBR=gustaf@webrtc.org,alessiob@webrtc.org

Change-Id: Ia05057326ebc277f334b13db0bfec9d4442903c2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9577, webrtc:10480
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130369
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27405}
2019-04-01 20:31:09 +00:00
e9cda52611 Roll chromium_revision 29ea6db316..b29b632278 (646310:646441)
Change log: 29ea6db316..b29b632278
Full diff: 29ea6db316..b29b632278

Changed dependencies
* src/base: 9ca00116ab..8f8023cf1f
* src/build: 6b14ccdbb0..a660b0b917
* src/ios: e5117557b9..923a72938c
* src/testing: e04295b9fe..e9520ad303
* src/third_party: d442923dc1..e92ab335d2
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1ca62263a6..83131f4f49
* src/tools: 6a26678405..7d73442b85
DEPS diff: 29ea6db316..b29b632278/DEPS

Clang version changed 356356:357316
Details: 29ea6db316..b29b632278/tools/clang/scripts/update.py

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

Change-Id: I593e387ff4db9d0c36894053ef6847baa6c937e6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130840
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@{#27404}
2019-04-01 20:03:47 +00:00
af1f8655b2 Revert "Disable DTLS 1.0, TLS 1.0 and TLS 1.1 downgrade in WebRTC."
This reverts commit 7276b974b78ea4f409d8738b1b6f1515f7a8968e.

Reason for revert: Changing to a later Chrome release.

Original change's description:
> Disable DTLS 1.0, TLS 1.0 and TLS 1.1 downgrade in WebRTC.
>
> This change disables DTLS 1.0, TLS 1.0 and TLS 1.1 in WebRTC by default. This
> is part of a larger effort at Google to remove old TLS protocols:
> https://security.googleblog.com/2018/10/modernizing-transport-security.html
>
> For the M74 timeline I have added a disabled by default field trial
> WebRTC-LegacyTlsProtocols which can be enabled to support these cipher suites
> as consumers move away from these legacy cipher protocols but it will be off
> in Chrome.
>
> This is compliant with the webrtc-security-arch specification which states:
>
>    All Implementations MUST implement DTLS 1.2 with the
>    TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 cipher suite and the P-256
>    curve [FIPS186].  Earlier drafts of this specification required DTLS
>    1.0 with the cipher suite TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, and
>    at the time of this writing some implementations do not support DTLS
>    1.2; endpoints which support only DTLS 1.2 might encounter
>    interoperability issues.  The DTLS-SRTP protection profile
>    SRTP_AES128_CM_HMAC_SHA1_80 MUST be supported for SRTP.
>    Implementations MUST favor cipher suites which support (Perfect
>    Forward Secrecy) PFS over non-PFS cipher suites and SHOULD favor AEAD
>    over non-AEAD cipher suites.
>
> Bug: webrtc:10261
> Change-Id: I847c567592911cc437f095376ad67585b4355fc0
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/125141
> Commit-Queue: Benjamin Wright <benwright@webrtc.org>
> Reviewed-by: David Benjamin <davidben@webrtc.org>
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27006}

TBR=steveanton@webrtc.org,davidben@webrtc.org,qingsi@webrtc.org,benwright@webrtc.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:10261
Change-Id: I34727e65c069e1fb2ad71838828ad0a22b5fe811
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130367
Commit-Queue: Benjamin Wright <benwright@webrtc.org>
Reviewed-by: Benjamin Wright <benwright@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27403}
2019-04-01 19:11:07 +00:00
ae4b62318d Reland "Add bindings for simulcast and RIDs in Android SDK."
This is a reland of 177670afd6d4aa414e4aa75983da538b7f350ee8
Fixing failing tests.

TBR=magjed@webrtc.org
Original change's description:
> Add bindings for simulcast and RIDs in Android SDK.
>
> This adds the bindings for rid in RtpParameters.Encoding and bindings
> for send_encodings in RtpTransceiverInit to allow creating a transceiver
> with multiple send encodings.
>
> Bug: webrtc:10464
> Change-Id: I4c205dc0f466768c63b7efcb3c68e93277236da0
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/128960
> Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> Reviewed-by: Seth Hampson <shampson@webrtc.org>
> Commit-Queue: Amit Hilbuch <amithi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27323}

Bug: webrtc:10464
Change-Id: I95fac3967217c20a9fdddb490aea30eca2061ef0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130362
Commit-Queue: Amit Hilbuch <amithi@webrtc.org>
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27402}
2019-04-01 17:45:46 +00:00
98e9f29ff0 Improve application window picker on Mac that was not listing all apps.
All application with empty title were not listed, for example Photos.
Fallback to owner name in that case while making sure to keep ignoring
the ghost window.
Most of the ghost windows can be filtered with IsWindowOnScreen
or IsWindowFullScreen except a few. For the remaining ghost we check
if there is no other window with the same pid.

Bug: chromium:516230
Test: Hangouts or Rumpus
Change-Id: Ibb9f98887e5aedf822fc0611836b1938b5056d43
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130360
Commit-Queue: Julien Isorce <julien.isorce@chromium.org>
Reviewed-by: Brave Yao <braveyao@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27401}
2019-04-01 17:00:41 +00:00
32a5781fa9 Roll chromium_revision e7b7dc611f..29ea6db316 (646176:646310)
Change log: e7b7dc611f..29ea6db316
Full diff: e7b7dc611f..29ea6db316

Changed dependencies
* src/base: 8df75dbe48..9ca00116ab
* src/build: a72af28e1c..6b14ccdbb0
* src/ios: 9f4eaa7cd0..e5117557b9
* src/testing: e55effebbf..e04295b9fe
* src/third_party: 3ed630b24a..d442923dc1
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/5b63b1f34a..1ca62263a6
* src/third_party/harfbuzz-ng/src: ec2a5dc859..f3aca6aa26
* src/tools: bc26bba6c5..6a26678405
DEPS diff: e7b7dc611f..29ea6db316/DEPS

No update to Clang.

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

Change-Id: I7d5d715d92d343da5a1ecb60ab22813b7ede8644
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130800
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@{#27400}
2019-04-01 15:42:31 +00:00
8daf92a809 Adds ScaleVideoFrameBuffer to libyuv.
This will be used for frame matching in a follow up CL.

Bug: webrtc:10365
Change-Id: If29fd59f8fff4c30b4c509104ade0e4ff02b08b2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130489
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27399}
2019-04-01 15:39:11 +00:00
8ce89ba820 Adds function to calculate squared error sum to libyuv.
This will be used for frame matching in a follow up CL.

Bug: webrtc:10365
Change-Id: I57bb743dd10a3327a5befceb98b3539e1138448b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130510
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27398}
2019-04-01 15:08:21 +00:00
de83d0c81a Fix params comments in network emulation layer and its usage in scenario framework
Bug: webrtc:10138
Change-Id: I9273410375cf4914abffa69f7443e13d52e77675
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130222
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27397}
2019-04-01 14:51:49 +00:00
612e179a28 Follow up CL to address clang-tidy suggestions minor issues.
Original CL: https://webrtc-review.googlesource.com/c/src/+/130103

Bug: webrtc:10138
Change-Id: I3bd7459442c36fdb97f581e436a0f365126fb6ea
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130476
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Yves Gerey <yvesg@google.com>
Cr-Commit-Position: refs/heads/master@{#27396}
2019-04-01 14:40:19 +00:00
bdecb3cdbe Cleanup: rename endpoint_controller_ into endpoint_container_.
Rename endpoint_controller_ into endpoint_container_ in network
emulation layer EmulatedNetworkManager.

Bug: webrtc:10138
Change-Id: If54030f1d2197e2e01b9b9c701e7bbe0dc55b7d1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130465
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27395}
2019-04-01 14:33:49 +00:00
5c4d2ee615 RTCDataChannel: Ignore "id" when "negotiated" is false
This updates behavior to be aligned with the WebRTC spec.

Bug: chromium:948055
Change-Id: Id3bbf05b3df084c9b7f7d12598c09187679d60fc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130493
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27394}
2019-04-01 14:06:29 +00:00
4124dab7f3 Processing emulated network on task queue.
The has some benefits:
* We no longer need locks to protect the emulated network node state.
* We only process when there are packets in flight.
* It makes Scenario more similar to network emulation manager.

Bug: webrtc:10365
Change-Id: I8bd1ad1edfb54b047e8109dabd9846ae451cef17
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/127548
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27393}
2019-04-01 13:52:49 +00:00
6c072efe9f Track both "network" and "media" rate in EncoderOvershootDetector
The network rate is based on a strict leaky buck with no underrun.
The media rate has almost the same algorithm, but allows the bufer level
to become negative down to -5 frames worth of data. This allows tracking
the average bitrate over a window and can be used as an alternative
upper bound when the encoder target is not link constrained.

Bug: webrtc:10155
Change-Id: I0d72157f7c0f0799e15572bf4797fa1b5636b22e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/129723
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27392}
2019-04-01 13:10:49 +00:00
a9daea4377 Avoid crashing if decodeTimeMs is null.
Bug: webrtc:10248
Change-Id: I58a5f37191d65fd1d7b228a0567a0fa8cb745bc8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130512
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27391}
2019-04-01 12:42:16 +00:00
cc5be54c26 Support for injection of FEC controller in Scenario tests.
Also adding sync group for video streams.

Bug: webrtc:10365
Change-Id: I9ef92de756f06bbbcd7b67524bbf51fe1365fa85
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130508
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27390}
2019-04-01 12:30:54 +00:00
1c4547d1f9 Adds SetForTest method on FieldTrialParameter class.
This is useful in tests as it allows overriding the default after
construction. It's not intended for use in production (as it can
be confusing to readers).

Bug: webrtc:10365
Change-Id: I8ac2541f2626e7fddbb61bdae72e9571ce9d7b97
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130468
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Jonas Olsson <jonasolsson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27389}
2019-04-01 12:29:05 +00:00
4e2d015be8 Autoscale Y-axis of echo-likelihood plots
Bug: none
Change-Id: I86d4bc13c58d34d1b96e70c1362a642345201fcc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130494
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27388}
2019-04-01 12:20:43 +00:00
8fcd6537f2 RNN VAD: Replace Ooura with PFFFT for the pitch auto correlation.
Bug: webrtc:9577, webrtc:10480
Change-Id: I6d58866d48b8eaaa4102551b88d4f55133d1915c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/130482
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27387}
2019-04-01 10:39:42 +00:00