20238 Commits

Author SHA1 Message Date
Mirko Bonadei
c8c71b9d76 Stop using ANDROID macro in favour of WEBRTC_ANDROID.
Since WEBRTC_ANDROID is defined by WebRTC while ANDROID is defined by
Chromium we should stop using ANDROID in WebRTC source code.

Bug: webrtc:8400
Change-Id: I1d59caaabd8af2423e86476b72e0e9185e6c7a3a
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/10805
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20306}
2017-10-16 11:37:08 +00:00
Karl Wiberg
138d4ac54d GN rtc_* templates: Forward global "visibility"
`forward_variables_from(invoker, "*")` forwards all locally declared
variables, but not global variables. This means that while setting
`visibility` locally in an rtc_* build target works fine, it does not
currently work to set `visibility` globally for all build targets in a
file.

Fix this by manually forwarding `visibility`.

BUG=webrtc:8254, webrtc:8255

Change-Id: I9e1a5f8ac9cb5991fff2af7c094fe677e1483964
Reviewed-on: https://webrtc-review.googlesource.com/10806
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20305}
2017-10-16 11:04:07 +00:00
Autoroller
6fa6dd4f83 Roll chromium_revision 65e1b24a78..f4ecd4bed3 (508708:508787)
Change log: 65e1b24a78..f4ecd4bed3
Full diff: 65e1b24a78..f4ecd4bed3

Changed dependencies:
* src/base: 1b7ce9d2a3..041cecf43e
* src/build: 65725e8482..8afa1551c5
* src/ios: f73ce77017..f556c12cad
* src/testing: 5371196512..744b907c60
* src/third_party: 469d082070..96b848f800
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/180125176f..6f19655f67
* src/third_party/depot_tools: 9f20d02085..7de54ef0a2
* src/third_party/ffmpeg: 62ff55193a..3098b6a245
* src/third_party/libvpx/source/libvpx: fe7b869104..caa116c9be
* src/tools: fe786fb58c..b6a9a695f5
DEPS diff: 65e1b24a78..f4ecd4bed3/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,marpan@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: I59f7c29802b5b96ed34cbee6c7aef45069e525d9
Reviewed-on: https://webrtc-review.googlesource.com/9561
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20304}
2017-10-16 11:00:27 +00:00
Niels Möller
9827ed7d88 Add override declarations to FakeAudioDeviceModule.
Also delete unused methods TimeUntilNextProcess and Process.

Bug: webrtc:7306
Change-Id: I60ac6af46df82ea6542443c7c130d2842f5b6f0b
Reviewed-on: https://webrtc-review.googlesource.com/8960
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20303}
2017-10-16 10:49:07 +00:00
Sami Kalliomäki
ac7be13564 Reland "Reland "Use injectable hardware video decoder/encoder in AppRTCMobile.""
TBR=magjed@webrtc.org

This is a reland of bc675ff3fa71549b0a0fdeca56803b41f4de0f53
Original change's description:
> Reland "Use injectable hardware video decoder/encoder in AppRTCMobile."
> 
> This is a reland of 0cbaf1a6f6ad13a25993f6ea3be931894a196834
> Original change's description:
> > Use injectable hardware video decoder/encoder in AppRTCMobile.
> > 
> > Also include a small fix for getting the encoder queue.
> > 
> > Bug: webrtc:7760
> > Change-Id: I96dc8ffb363b90382276d88148f81d5f89dca5f2
> > Reviewed-on: https://webrtc-review.googlesource.com/2683
> > Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
> > Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20022}
> 
> Bug: webrtc:7760
> Change-Id: Ia82129fde7abb59120ba5bb23938db9eb576ae91
> Reviewed-on: https://webrtc-review.googlesource.com/4701
> Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20080}

Bug: webrtc:7760
Change-Id: I5f9bcbf0f18ac3d6b2d2d500300218e885e37d71
Reviewed-on: https://webrtc-review.googlesource.com/9383
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20302}
2017-10-16 08:27:17 +00:00
Henrik Kjellander
a254304281 Use subprocess2 and DEPS-pinned depot_tools for download_tools.py
As https://webrtc.googlesource.com/src/+/915187b1afe8f708b06e24b77f372dcd34fe75f3
has the proper fixed rolled in, https://webrtc-review.googlesource.com/c/src/+/8820
can be relanded to benefit from using DEPS-pinned third_party/depot_tools instead
of the auto-updated one.

TBR=mbonadei@webrtc.org

Bug: chromium:773671, webrtc:8393
Change-Id: Id47671956d014ce24e5b60ce3aae5423930db1aa
No-try: True
Reviewed-on: https://webrtc-review.googlesource.com/10800
Commit-Queue: Henrik Kjellander <kjellander@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20301}
2017-10-16 05:22:36 +00:00
Tommi
589ae45d0f Revert "Reject the subsequent offer with fewer m= sections."
This reverts commit a8264dbdd97f5e125d45fd0e84356f2e1f747df1.

Reason for revert: Reverting to unblock rolls into Chromium.
See failure here:
https://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/565449

Fails: external/wpt/webrtc/RTCPeerConnection-setRemoteDescription-offer.html

I'm guessing these lines from the output are relevant:

12:15:32.525 11839   [1:19:1015/121532.495175:16438293900:ERROR:webrtcsession.cc(350)] Failed to set remote offer sdp: The order of m-lines in subsequent offer doesn't match order from previous offer/answer.
12:15:32.525 11839   [1:20:1015/121532.497199:16438296127:WARNING:delay_based_bwe.cc(326)] BWE Setting start bitrate to: 300000
12:15:32.525 11839   [1:1:1015/121532.498272:16438296963:ERROR:webrtcsdp.cc(359)] Failed to parse: "Invalid SDP". Reason: Expect line: v=
12:15:32.525 11839   [1:1:1015/121532.498364:16438297040:ERROR:rtc_peer_connection_handler.cc(2183)] Failed to create native session description. Type: offer SDP: Invalid SDP
12:15:32.525 11839   [1:1:1015/121532.498432:16438297104:ERROR:rtc_peer_connection_handler.cc(1458)] Failed to parse SessionDescription. Invalid SDP Expect line: v=

Original change's description:
> Reject the subsequent offer with fewer m= sections.
> 
> If the subsequent offer contains fewer m= sections than the existing
> description, it would be rejected.
> 
> The helper method MediaSectionsInSameOrder is modified and it will
> compare the number of m= sections before matching the media type.
> 
> Bug: chromium:773620
> Change-Id: Ic8999445f4bc023da1d85a65659583db1687ec37
> Reviewed-on: https://webrtc-review.googlesource.com/9621
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20298}

TBR=deadbeef@webrtc.org,zhihuang@webrtc.org

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

Bug: chromium:773620
Change-Id: I4a3ff7a42abb95144615b1dd37fb21585ee07b5d
Reviewed-on: https://webrtc-review.googlesource.com/10920
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20300}
2017-10-15 21:50:06 +00:00
Gustaf Ullberg
8eb9c7d838 Added EchoCanceller3Factory.
Added EchoCanceller3Factory that implements EchoControlFactory and can
be used for injecting EchoCanceller3 into Audio Processing Module.

Renamed InitializeEchoCanceller3 to InitializeEchoController.

Bug: webrtc:8346
Change-Id: I47078da6a49aca1ee41f6a9d5b7b8e91bb5c11a3
Reviewed-on: https://webrtc-review.googlesource.com/9220
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20299}
2017-10-14 07:38:32 +00:00
Zhi Huang
a8264dbdd9 Reject the subsequent offer with fewer m= sections.
If the subsequent offer contains fewer m= sections than the existing
description, it would be rejected.

The helper method MediaSectionsInSameOrder is modified and it will
compare the number of m= sections before matching the media type.

Bug: chromium:773620
Change-Id: Ic8999445f4bc023da1d85a65659583db1687ec37
Reviewed-on: https://webrtc-review.googlesource.com/9621
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20298}
2017-10-14 00:40:32 +00:00
Taylor Brandstetter
569f4e7e58 Disable some flaky screen/desktop capture tests on Linux.
Specifically:
ScreenCapturerTest.StartCapture
ScreenCapturerTest.Capture
WindowCapturerTest.Capture

Also adding a DCHECK for the capturer actually being created, since it
seems like that's the problem.

TBR=zijiehe@chromium.org

Bug: webrtc:7830
Change-Id: I200dc0c15f5039b95f591597bc00d3f1084ae876
Reviewed-on: https://webrtc-review.googlesource.com/9562
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20297}
2017-10-13 20:34:12 +00:00
Steve Anton
f1c6db1c02 Rewrite WebRtcSession ICE tests as PeerConnection tests
Bug: webrtc:8222
Change-Id: Ie138712beaae964f08150b29ba5a8ed17ea0e956
Reviewed-on: https://webrtc-review.googlesource.com/4640
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20296}
2017-10-13 18:42:34 +00:00
Elad Alon
99c3fe55c7 Add PeerConnection::StartRtcEventLog version that takes RtcEventLogOutput as parameter
This will allow Chrome to provide a RtcEventLogOutput object that reports the log back to Chrome, allowing Chrome to manage the log by itself - write it to a file, upload it to a server, etc.

Bug: webrtc:8111
Change-Id: I6a2a6945fc8586ef10e0fb9c56eaa8fda00dfc98
Reviewed-on: https://webrtc-review.googlesource.com/8081
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20295}
2017-10-13 17:18:07 +00:00
Autoroller
915187b1af Roll chromium_revision 4662d4766b..65e1b24a78 (508693:508708)
Change log: 4662d4766b..65e1b24a78
Full diff: 4662d4766b..65e1b24a78

Changed dependencies:
* src/build: c6001bdb73..65725e8482
* src/third_party: 65afc9af41..469d082070
* src/tools: 821d9aca9b..fe786fb58c
DEPS diff: 4662d4766b..65e1b24a78/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: I58b46ddaa81c014eb307a100e55539e5ec5d4164
Reviewed-on: https://webrtc-review.googlesource.com/9480
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20294}
2017-10-13 16:52:47 +00:00
Taylor Brandstetter
80cfb527c6 RTC_CHECK'ing content type before static_casting descriptions.
This will cause the application to be aborted before it encounters
something worse like a heap overflow, in case any bug in this code
exists or is introduced in the future.

TBR=zhihuang@webrtc.org

Bug: chromium:773620
Change-Id: Idd4e31aa63a3f673eefd3e8cb2ae3f4a5092ca4e
Reviewed-on: https://webrtc-review.googlesource.com/9040
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20293}
2017-10-13 16:36:28 +00:00
Raphael Kubo da Costa
7f90e2cced IWYU: Include math.h for round(3).
math.h was being implicitly included, which can break the build with
alternative libc implementations.

Bug: None
Change-Id: I969b320b65d0f44abb33d3e1036cfbcb859a4952
Reviewed-on: https://webrtc-review.googlesource.com/9384
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa@intel.com>
Cr-Commit-Position: refs/heads/master@{#20292}
2017-10-13 16:24:37 +00:00
Autoroller
bd0568dced Roll chromium_revision a2e331901b..4662d4766b (508680:508693)
Change log: a2e331901b..4662d4766b
Full diff: a2e331901b..4662d4766b

Changed dependencies:
* src/ios: 9e3dc38d10..f73ce77017
* src/testing: 3ba0dfa045..5371196512
* src/third_party: 135e164724..65afc9af41
* src/tools: c569930662..821d9aca9b
DEPS diff: a2e331901b..4662d4766b/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: I3b85968811d717bdf43785ae7a451f36fd6c9ffd
Reviewed-on: https://webrtc-review.googlesource.com/9460
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20291}
2017-10-13 15:08:37 +00:00
Sami Kalliomäki
cee3e53631 Android: Cache implementation name in VideoDecoderWrapper.
This fixes a crash caused by access to already freed memory returned
by VideoDecoderWrapper::ImplementationName method.

Bug: webrtc:7760
Change-Id: Ia4b020d1dd861e6a45637abde35f12951b7c43ea
Reviewed-on: https://webrtc-review.googlesource.com/9420
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20290}
2017-10-13 14:23:07 +00:00
Daniela
ae012cf8b8 Add xctest target to migrate sdk/objc/Framework to it.
This CL adds all the scaffolding needed to support xctest target
in sdk/objc/Framework and adds the target to the bot configuration.

The benefits of this are two-fold.
1. We'll separate framework unittests from their current target,
`rtc_unittests`, that has many many other tests.
This way framework unit tests will have nice, compact, selfcontained target.
2. We'll harvest the power of XCTest (native testing framework)
that should hopefully make adding and writing objc tests easier.

This CL migrates only one test to prove the setup works.
More tests will be migrated in follow up cls.

Bug: webrtc:8382
Change-Id: I0b5b9596c2a6d91683d13632323441de1aa461e0
Reviewed-on: https://webrtc-review.googlesource.com/8501
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Reviewed-by: Daniela Jovanoska Petrenko <denicija@webrtc.org>
Commit-Queue: Daniela Jovanoska Petrenko <denicija@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20289}
2017-10-13 14:19:32 +00:00
Gustaf Ullberg
052c78d93f Removed unused AudioProcessing::Create.
Bug: webrtc:8346
Change-Id: I3f0e0727c0377c138202b25100766b3c34e6536a
Reviewed-on: https://webrtc-review.googlesource.com/9381
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20288}
2017-10-13 14:18:27 +00:00
Bjorn Terelius
1edfff99fa Add profiles for analysing send-side and receive-side BWE in event log visualizer.
Bug: webrtc:7726
Change-Id: I2f6bb5a25fe8bb63d022f4097f9bc15827af3cf1
Reviewed-on: https://webrtc-review.googlesource.com/8360
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20287}
2017-10-13 14:02:18 +00:00
Mirko Bonadei
6b4c21cbc5 Re-enabling test because bugs.webrtc.org/6437 is fixed.
Bug: webrtc:6437
Change-Id: I52bda8f75df0ce5ad851de00ebad88766f00154c
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/9162
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20286}
2017-10-13 13:48:12 +00:00
Alex Narest
b3944f021d Media track ID visibility at BWE level
Track IDs are assigned by application during track creation. 
Track IDs are used by custom bitrate allocation strategies to identify tracks. 
Track ID can be empty, in that case bitrate allocation strategies will not be able to handle
these tracks specifically and will handle them as a default.

Bug: webrtc:8243
Change-Id: I89987e33328320bfd0539ad532342df6da144c98
Reviewed-on: https://webrtc-review.googlesource.com/4820
Commit-Queue: Alex Narest <alexnarest@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20285}
2017-10-13 13:47:07 +00:00
Ivo Creusen
385b10bbaa Added experiment to improve handling of frame length changes in NetEq.
The field trial effects two things: after a frame length change the IAT
histogram is scaled to prevent an immediate change in target buffer
level. Also, the peak history in the delay peak detector is cleared, 
because the size of the peaks is stored in number of packets (which
will be incorrect after a frame length change).

Bug: webrtc:8381
Change-Id: I214b990f6e5959b655b6542884a7f75da181a0d8
Reviewed-on: https://webrtc-review.googlesource.com/8101
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20284}
2017-10-13 13:26:57 +00:00
Autoroller
e759223418 Roll chromium_revision 961817f7c1..a2e331901b (507941:508680)
Change log: 961817f7c1..a2e331901b
Full diff: 961817f7c1..a2e331901b

Changed dependencies:
* src/base: 8a2e6ca6a2..1b7ce9d2a3
* src/build: 66371a176b..c6001bdb73
* src/ios: fe5b1b2962..9e3dc38d10
* src/testing: 8d5bbc677e..3ba0dfa045
* src/third_party: dd57a5da7d..135e164724
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/12fdd08a40..664e99a648
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/5430039572..180125176f
* src/third_party/depot_tools: cd27f01b1a..9f20d02085
* src/third_party/icu: 7f873c45c2..21d33b1a09
* src/tools: c5a868d906..c569930662
DEPS diff: 961817f7c1..a2e331901b/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: Ib4b526b5aafa2de482af494f06e629eeb88a9970
Reviewed-on: https://webrtc-review.googlesource.com/9360
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20283}
2017-10-13 13:17:17 +00:00
Mirko Bonadei
f91ec56f23 Adding errorprone to LIB_TO_LICENSE_DICT.
Bug: webrtc:8390
Change-Id: I17dc06901ba8336b091351ab2369694a0928afe3
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/9164
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Reviewed-by: Edward Lemur <ehmaldonado@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20282}
2017-10-13 12:39:57 +00:00
philipel
881829b145 New PacketQueue2 which prioritize packets in a round-robin fashion.
Bug: webrtc:8287, webrtc:8288
Change-Id: I69ab846851c308d51e23e2b3bc3b55b19d1a07e8
Reviewed-on: https://webrtc-review.googlesource.com/7300
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20281}
2017-10-13 12:03:57 +00:00
Edward Lemur
09d90147fb Reland "Make it possible to isolate bwe_simulations_tests"
Nothing is different from the original change.
The original change was reverted because it was thought it might
have caused an outage for the windows bots. (It didn't.)

This is a reland of 28addd03c1040fc5a634ed92a7edde2aea811e79
Original change's description:
> Make it possible to isolate bwe_simulations_tests
> 
> Add missing data dependencies and add it to gn_isolate_map.pyl
> 
> Bug: chromium:749648
> Change-Id: I6b6c1bb2e4d647471a2747042788a691ce2e1e5d
> Reviewed-on: https://webrtc-review.googlesource.com/8721
> Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
> Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20258}

Bug: chromium:749648
No-Try: true
Change-Id: I5531c5f8b58e0d5b8b6ceeea90acb4bd8e6e6e4f
Reviewed-on: https://webrtc-review.googlesource.com/9320
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Reviewed-by: Edward Lemur <ehmaldonado@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20280}
2017-10-13 11:54:26 +00:00
Sami Kalliomäki
83beaa8cc3 Revert "Reland "Reland "Use injectable hardware video decoder/encoder in AppRTCMobile."""
This reverts commit f0878c98dc158979e9d27404df038e03e59a245c.

Reason for revert: Still fails on Nexus 9.
https://build.chromium.org/p/client.webrtc.perf/builders/Android64%20Tests%20%28L%20Nexus9%29/builds/4540

Original change's description:
> Reland "Reland "Use injectable hardware video decoder/encoder in AppRTCMobile.""
> 
> I couldn't repro the problem locally, speculatively reland to see if the issue
> was solved by recent changes.
> 
> TBR=magjed@webrtc.org
> 
> This is a reland of bc675ff3fa71549b0a0fdeca56803b41f4de0f53
> Original change's description:
> > Reland "Use injectable hardware video decoder/encoder in AppRTCMobile."
> > 
> > This is a reland of 0cbaf1a6f6ad13a25993f6ea3be931894a196834
> > Original change's description:
> > > Use injectable hardware video decoder/encoder in AppRTCMobile.
> > > 
> > > Also include a small fix for getting the encoder queue.
> > > 
> > > Bug: webrtc:7760
> > > Change-Id: I96dc8ffb363b90382276d88148f81d5f89dca5f2
> > > Reviewed-on: https://webrtc-review.googlesource.com/2683
> > > Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
> > > Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#20022}
> > 
> > Bug: webrtc:7760
> > Change-Id: Ia82129fde7abb59120ba5bb23938db9eb576ae91
> > Reviewed-on: https://webrtc-review.googlesource.com/4701
> > Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
> > Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20080}
> 
> Bug: webrtc:7760
> Change-Id: If2131b4cdac58cb4d26521fa31e657e29085e0b7
> Reviewed-on: https://webrtc-review.googlesource.com/6804
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
> Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20275}

TBR=magjed@webrtc.org,sakal@webrtc.org

Change-Id: I62ef9b21e2540c53bb92b6383aec56be28ee8909
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7760
Reviewed-on: https://webrtc-review.googlesource.com/9321
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20279}
2017-10-13 11:36:47 +00:00
Alessio Bazzica
270f7b5353 AGC2 dummy module: fixed gain param, APM integration, audioproc_f adaptation
In preparation of coming CLs that will add an AGC interface to make the
gain controller injectable.

This CL simplifies AGC2 (dummy sub-module of audioproc_f) since it only
implements the fixed digital mode with hard-clipping - i.e., no limiter
is used.
The AGC2 config now includes the fixed gain to apply and audioproc_f
has been adapted accordingly.
Finally, this CL slightly simplifies the AGC2 integration into APM.

This CL is a continuation of https://codereview.webrtc.org/2995043002/

Bug: webrtc:7494
Change-Id: I3d554ea4dc6208928352059feb14987edabf14c7
Reviewed-on: https://webrtc-review.googlesource.com/4661
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20278}
2017-10-13 11:05:37 +00:00
Mirko Bonadei
65ceb6649f Adding third_party/errorprone to DEPS for android
Bug: webrtc:8390
Change-Id: I6dbfcd6ddd6715ea7f9bc8b1d770c51fc7693b48
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/9160
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20277}
2017-10-13 10:55:07 +00:00
Elad Alon
92a773ddb6 Prevent unbounded memory consumption through RtcEventLogImpl::config_history_
The config-history is (logically) intended to be unlimited, but in practice, it would be good to cap it, even though the cap is never expected to be reached, so as to prevent a possible attack that would cause memory overuse.

Bug: webrtc:8111
Change-Id: I1f60cf10215bf8191a8ab3c9b19345104c585483
Reviewed-on: https://webrtc-review.googlesource.com/8980
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20276}
2017-10-13 10:47:26 +00:00
Sami Kalliomäki
f0878c98dc Reland "Reland "Use injectable hardware video decoder/encoder in AppRTCMobile.""
I couldn't repro the problem locally, speculatively reland to see if the issue
was solved by recent changes.

TBR=magjed@webrtc.org

This is a reland of bc675ff3fa71549b0a0fdeca56803b41f4de0f53
Original change's description:
> Reland "Use injectable hardware video decoder/encoder in AppRTCMobile."
> 
> This is a reland of 0cbaf1a6f6ad13a25993f6ea3be931894a196834
> Original change's description:
> > Use injectable hardware video decoder/encoder in AppRTCMobile.
> > 
> > Also include a small fix for getting the encoder queue.
> > 
> > Bug: webrtc:7760
> > Change-Id: I96dc8ffb363b90382276d88148f81d5f89dca5f2
> > Reviewed-on: https://webrtc-review.googlesource.com/2683
> > Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
> > Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20022}
> 
> Bug: webrtc:7760
> Change-Id: Ia82129fde7abb59120ba5bb23938db9eb576ae91
> Reviewed-on: https://webrtc-review.googlesource.com/4701
> Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20080}

Bug: webrtc:7760
Change-Id: If2131b4cdac58cb4d26521fa31e657e29085e0b7
Reviewed-on: https://webrtc-review.googlesource.com/6804
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20275}
2017-10-13 10:18:27 +00:00
Sami Kalliomäki
201509b1c1 Add testing and auto-publish features to release_aar.py.
Bug: webrtc:8365
Change-Id: I6dda3773d62ea37d371933691144499ba17898d7
Reviewed-on: https://webrtc-review.googlesource.com/7614
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20274}
2017-10-13 09:53:27 +00:00
Mirko Bonadei
2a5e7906a9 Fix errorprone errors.
In order to enable errorprone [1] we have to fix this finding.

third_party/errorprone has been recently enabled in Chromium and in
order to unblock the Chromium Roll we have to fix these errors. 

[1] - https://cs.chromium.org/chromium/src/third_party/errorprone/

Bug: webrtc:8390
Change-Id: Ic737def5ae2a8c6ad1216d9b485af59987fe511c
Tbr: magjed@webrtc.org
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/9161
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20273}
2017-10-13 09:33:47 +00:00
Gustaf Ullberg
002ef28272 Added EchoControlFactory interface.
The factory for EchoControl is changed from an rtc::Callback1 to an
interface. This avoids using rtc::Callback1 outside of WebRTC.
This also makes the EchoControl factory more similar to other
factories in the code base.

Bug: webrtc:8345
Change-Id: Ie61b9416ed771f8c756326736d17e339eb768469
Reviewed-on: https://webrtc-review.googlesource.com/8900
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20272}
2017-10-13 09:03:07 +00:00
Danil Chapovalov
6f09ae20bd Support move-only closures in TaskQueue
it allows to create less boil-plate code when marshaling call
with move-only parameters (e.g. unique_ptr) to TaskQueue

Bug: None
Change-Id: I97ddf4f8409af2f83d69fd33267e9a87fb60d901
Reviewed-on: https://webrtc-review.googlesource.com/7619
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@{#20271}
2017-10-13 08:56:06 +00:00
Niels Möller
75dfd1c174 Drop include of refcountedobject.h.
This is a followup to cl https://webrtc-review.googlesource.com/7281, and
a reland of the difficult part of cl
https://webrtc-review.googlesource.com/5760.

Bug: webrtc:8270
Change-Id: I92eb47083b47038015496e797a9ec18f75e607ca
Reviewed-on: https://webrtc-review.googlesource.com/7607
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20270}
2017-10-13 08:47:32 +00:00
Sami Kalliomäki
d189a7cbb7 Add Android Studio project for AppRTCMobile that builds against AAR.
This project can be used for testing the AAR before publishing. Removes
dependency to Chromium from the tests to support Android Studio.

Bug: webrtc:8365
Change-Id: I7568a3f636fd7d478d274b4766f33ab00f28a6f0
Reviewed-on: https://webrtc-review.googlesource.com/7608
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20269}
2017-10-13 08:46:27 +00:00
Sami Kalliomäki
f7b5bd6a9e Refactor HardwareVideoDecoderTest.
Bug: webrtc:7760
Change-Id: I25d5bd83b5ca9b109b9064486caa8238d7ecd613
Reviewed-on: https://webrtc-review.googlesource.com/6841
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20268}
2017-10-13 08:40:07 +00:00
Ilya Nikolaevskiy
ed23be91b8 Move HistogramPercentileCounter to rtc_base from RecieveStatisticProxy.
This should be a separate utility class, rather than internal thing in
ReceiveStatisticsProxy.

Bug: webrtc:8347
Change-Id: I9c8238e625999dba5776d6038c819732d07e9656
Reviewed-on: https://webrtc-review.googlesource.com/7609
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20267}
2017-10-13 08:32:07 +00:00
Alessio Bazzica
86f25d3bcd Create links to single experiments in APM-QA exported results.
For each single experiment, a URL is defined by adding a specific anchor.
A URL can be copied using the button beneath the score of the experiment
one would like to share.

This CL also includes a few optimizations and fixes:
- JS and CSS are minified
- Dialog close event listener added, this fixes a small bug preventing
  the play out audio to stop when pressing ESC instead of using the close
  button
- Snackbar notifications added
- Simple unit test for the export module

BUG=webrtc:7218
Change-Id: Iad00ce69094a5968ee0520d105d59656cfafa4e2

TBR=

Change-Id: Iad00ce69094a5968ee0520d105d59656cfafa4e2
Reviewed-on: https://webrtc-review.googlesource.com/7960
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20266}
2017-10-13 07:48:47 +00:00
Åsa Persson
dc182a486a VideoProcessorIntegrationTest: remove arrays in RateProfile and use vector of RateProfiles instead.
Move num_frames from RateProfile to TestConfig struct.

Remove methods: SetRateProfile, AddRateControlThresholds.

Bug: none
Change-Id: I14bcafb8c5b3c1d3b6119417dde038fd82381e3f
Reviewed-on: https://webrtc-review.googlesource.com/8540
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20265}
2017-10-13 07:19:56 +00:00
Henrik Lundin
8cd750df1e Enable NetEq's Opus bit-exactness tests for Android
When the test was created, it was disabled for mobile platforms from
the beginning. This is likely a copy-paste from the related
NetEqDecodingTest.TestBitExactness which includes testing codecs not
supported on mobile platforms (e.g., iLBC). This restriction is not
needed for the Opus-only test.

The test remains disabled for iOS, since none of the bots actually run
the relevant test binary on actual iOS devices.

Bug: none
Change-Id: I9071e0e32c83b62c8c7af59ac1cb3e46227f8e8e
Reviewed-on: https://webrtc-review.googlesource.com/8561
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20264}
2017-10-13 07:01:36 +00:00
Henrik Kjellander
44ba5e577a Revert "Use subprocess2 for downloading tools."
This reverts commit 4d39dc392294807d84eefb1c7414f807d9b4855b.

Reason for revert: To benefit from the other fix in crbug.com/773671. Will reland once DEPS rolling is unblocked.

Original change's description:
> Use subprocess2 for downloading tools.
> 
> Change to use exactly the same approach as when gclient hooks
> are executing [1]. It should be safe since it's using the DEPS-pinned
> depot_tools in third_party. Hopefully this solves the race condition
> problems we've been seeing in crbug.com/773671
> 
> [1]: https://cs.chromium.org/chromium/tools/depot_tools/gclient.py?rcl=b3ce73d028b1d44137d533220fd41be31bc31801&l=214
> 
> Bug: chromium:773671
> Change-Id: Ia003dbca394e42556afa1a416fcb4844b960ad6c
> No-try: True
> Reviewed-on: https://webrtc-review.googlesource.com/8820
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Henrik Kjellander <kjellander@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20256}

TBR=kjellander@webrtc.org,mbonadei@webrtc.org

Change-Id: I825d291d6f723cac79a6cc6fc54cd5f9d4877152
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:773671
Reviewed-on: https://webrtc-review.googlesource.com/9080
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Commit-Queue: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20263}
2017-10-13 06:06:37 +00:00
Taylor Brandstetter
b140b9fd69 Keep count of libsrtp clients, and only deinitialize when it goes to 0.
This is the same thing we're doing for usrsctp. Before this CL, the
first SrtpSession to call SetKey would initialize libsrtp, and
ChannelManager's destructor would deinitialize it. This works for an
application that only uses one instance of ChannelManager simultaneously
(or one instance of PeerConnectionFactory), but not one that uses
multiple.

Now, libsrtp is effectively reference-counted, with the first
SrtpSession to take a reference initializing it, and the last to remove
its reference deinitializing it.

This issue was discovered recently due to a change that resulted in
using srtp_update. Without using that method, the issue went unnoticed;
maybe srtp_protect/srtp_unprotect don't require initialization?

Bug: webrtc:8388
Change-Id: If1329360f0b469e454810e62e9b5acfbd4cba100
Reviewed-on: https://webrtc-review.googlesource.com/9000
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20262}
2017-10-13 05:11:27 +00:00
Jonas Oreland
f0229767d1 Fix bug in recently introduced TurnCustomizer
The problem was that TurnCustomizerMaybeModifyOutgoingStunMessage
was called before the message was constructed. This is now fixed
and tested in TestTurnCustomizer.

BUG=webrtc:8313

Change-Id: Ie9a69cc2ff514796af0da987de733b3db8382883
Reviewed-on: https://webrtc-review.googlesource.com/8840
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20261}
2017-10-13 05:08:26 +00:00
Mirko Bonadei
6188018e1d Using Change.BugsFromDescription to read CL bugs in PRESUBMIT checks.
Since we migrated to Gerrit recently we cannot rely on the BUG= format
for this check because:

* it is deprecated: https://cs.chromium.org/chromium/tools/depot_tools/presubmit_support.py?l=908&rcl=94652a37677488738626b96ff504fc07afbbaa87
* it causes confusion in our users because Gerrit uses Bug: and all the error messages were requiring BUG=

This CL uses a more general API to get the list of bugs from in a CL and
renames BUG= to Bug:.

Bug: None
Change-Id: I7e86fe6d8ca426d9e4bf3bd39021d2a510ec196f
No-Treechecks: True
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/8881
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20260}
2017-10-13 03:48:26 +00:00
Patrik Höglund
69cc48bb8b Revert "Make it possible to isolate bwe_simulations_tests"
This reverts commit 28addd03c1040fc5a634ed92a7edde2aea811e79.

Reason for revert: Speculative revert: looks like all win bots turned purple

Original change's description:
> Make it possible to isolate bwe_simulations_tests
> 
> Add missing data dependencies and add it to gn_isolate_map.pyl
> 
> Bug: chromium:749648
> Change-Id: I6b6c1bb2e4d647471a2747042788a691ce2e1e5d
> Reviewed-on: https://webrtc-review.googlesource.com/8721
> Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
> Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20258}

TBR=kjellander@webrtc.org,ehmaldonado@webrtc.org,stefan@webrtc.org

Change-Id: I8d07560ba3a60b97cf6525723a0f9888a72a1b1d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:749648
Reviewed-on: https://webrtc-review.googlesource.com/8860
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20259}
2017-10-12 11:10:56 +00:00
Edward Lemur
28addd03c1 Make it possible to isolate bwe_simulations_tests
Add missing data dependencies and add it to gn_isolate_map.pyl

Bug: chromium:749648
Change-Id: I6b6c1bb2e4d647471a2747042788a691ce2e1e5d
Reviewed-on: https://webrtc-review.googlesource.com/8721
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20258}
2017-10-12 09:04:24 +00:00
Mirko Bonadei
6697278c8f Fix Gn untracked headers in webrtc/p2p.
This CL is the same CL we had at https://codereview.webrtc.org/3016513002/.
Since we cannot land it with Rietveld anymore let's move the discussion
to Gerrit.

BUG=webrtc:7646
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

No-Try: True
Change-Id: I442660e6dc71612d6bbcf73764bd4c6f65fcb760
Reviewed-on: https://webrtc-review.googlesource.com/7982
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@google.com>
Cr-Commit-Position: refs/heads/master@{#20257}
2017-10-12 08:35:35 +00:00