Commit Graph

23639 Commits

Author SHA1 Message Date
b2c0e8f60f Add tool for aliging video files
This class adds logic for aligning a test video to a reference video
by an algorithm that maximizes SSIM between them. Aligned videos will be
easier to run video quality metrics on. This is a generic way of
aligning videos and can be replace the intrusive barcode stamping that
we currently use. This will be done in a follow-up CL.

Change-Id: I71cf1e2179c0f1e03eff9e4d8fc492fd5cfbbb1c
Bug: webrtc:9642
Reviewed-on: https://webrtc-review.googlesource.com/94773
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Paulina Hensman <phensman@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24407}
2018-08-23 15:35:28 +00:00
738b7e9c24 Write scalability structure in flexible mode.
Always write scalability structure no matter whether flexible mode
is enabled or not.

Bug: webrtc:9658
Change-Id: I6c3d5c8e46046dfe89e8ec38536d71b195e80593
Reviewed-on: https://webrtc-review.googlesource.com/95723
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24406}
2018-08-23 15:12:09 +00:00
370c050ecd Correct audioproc_f to support the new echo canceller activation III
The introduction of the new AEC proxies caused audioproc_f to fail.
This CL corrects audioproc_f so that the AEC2 and AECM echo cancellers
are properly activated using the new AEC proxies.

Bug: webrtc:9535
Change-Id: I48b9deaad873aee597f56ebd33814420024e0d58
Reviewed-on: https://webrtc-review.googlesource.com/95645
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24405}
2018-08-23 13:48:33 +00:00
1f262cc5da Fix flaky test TestFlexfecRtpStatePreservation.
Videosendstream can be created before capturer starts, so initially the frame resolution may be zero. Add a check to prevent test failure and undesired behavior.

Bug: webrtc:7737
Change-Id: I8f4402e866f45ea1eb112437f866170691a111f6
Reviewed-on: https://webrtc-review.googlesource.com/95102
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24404}
2018-08-23 13:43:50 +00:00
a73c3b0e07 AEC3: Removing the coherence computation
This CL removes the unused coherence computation from AEC3. This CL
only removes unused code, the output of AEC3 does not change.

Bug: webrtc:8671
Change-Id: Ie127c5ec64e29414f1e1570511d57a4d09fc9145
Reviewed-on: https://webrtc-review.googlesource.com/95650
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24403}
2018-08-23 13:05:54 +00:00
bc25899363 Delete unneeded includes of rtp_payload_registry.h
Bug: webrtc:7135
Change-Id: I59f2891bb744c645b00e212827901dfeb638e265
Reviewed-on: https://webrtc-review.googlesource.com/94507
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24402}
2018-08-23 11:21:07 +00:00
1b5e5db842 Remove SequencedTaskChecker from Y4mFileReader
SequencedTaskChecker is not part of rtc_base_approved and will not work
in Chromium. This CL simply removes it since it was just a precaution
and is not necessary for the tool. The thread assumptions are stated in
the class comment.

TBR=phensman@webrtc.org

Bug: webrtc:9642
Change-Id: I871ac361975595d8ed07b2e2447e3581c9ba9968
Reviewed-on: https://webrtc-review.googlesource.com/95648
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24401}
2018-08-23 11:04:27 +00:00
4ff63cc9a1 Remove temporary SetConfig method from NetworkSimulatioInterface.
Remove temporary SetConfig method from NetworkSimulatioInterface and
makes minor cleanup.

Bug: webrtc:9630
Change-Id: If472da7c21ffc9c83fe8b80e6665c3d5fb94382b
Reviewed-on: https://webrtc-review.googlesource.com/95644
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24400}
2018-08-23 10:08:35 +00:00
398689f581 AEC3: Adding the option for applying a fixed delay to the capture signal
This CL adds functionality for applying an optional fixed delay in AEC3
to the capture signal

Bug: webrtc:9647
Change-Id: Id3b3f896bcf203e6611298dc804c3c80da9f1883
Reviewed-on: https://webrtc-review.googlesource.com/95142
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24399}
2018-08-23 10:05:07 +00:00
404be7f302 Add Y4mFileReader
Encapsulate logic for reading .y4m video files in a single class. We
currently have spread out logic for opening .y4m files with partial
parsing. This CL consolidates this logic into a single class with a well
defined interface.

Change-Id: Id61673b3c95a0053b30e95b4cf382e1c6b05fc30
Bug: webrtc:9642
Reviewed-on: https://webrtc-review.googlesource.com/94772
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Paulina Hensman <phensman@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24398}
2018-08-23 09:56:02 +00:00
63af828a1b Remove old sigslot.h header
To be landed after 22th Aug 2018

Bug: webrtc:8366
Change-Id: Icaf758cbbb31ec843f5ee85d65963271a98fead0
Reviewed-on: https://webrtc-review.googlesource.com/90412
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24397}
2018-08-23 08:35:03 +00:00
f06f923ef0 Delete almost all use of MediaConstraintsInterface in the PeerConnection API
Bug: webrtc:9239
Change-Id: I04f4370f624346bf72c7e4e090b57987b558213b
Reviewed-on: https://webrtc-review.googlesource.com/74420
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24396}
2018-08-23 07:14:37 +00:00
46399993f2 Add //test:fileutils_unittests to //test:test_support_unittests deps.
The dependency has been accidentally removed in:
https://webrtc-review.googlesource.com/c/src/+/67161

Bug: None
Change-Id: I568a5d172ff327b31fe80227f5d0ed9f9fc8a93c
Reviewed-on: https://webrtc-review.googlesource.com/95485
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24395}
2018-08-23 06:30:22 +00:00
09831c9b0a Correct audioproc_f to support the new echo canceller activation II
The introduction of the new AEC proxies caused audioproc_f to fail.
This CL corrects audioproc_f so that the AEC2 and AECM echo cancellers
are properly activated using the new AEC proxies.

Bug: webrtc:9535
Change-Id: I0e1462fa6e35944f7dbb02580f1db09401c8f7c8
Reviewed-on: https://webrtc-review.googlesource.com/95484
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24394}
2018-08-23 06:03:53 +00:00
8adc5d35bf Roll chromium_revision 6f37604c1d..bd84ccec52 (585288:585399)
Change log: 6f37604c1d..bd84ccec52
Full diff: 6f37604c1d..bd84ccec52

Changed dependencies:
* src/base: e928b3cec4..50257732f4
* src/build: d85b83e96f..ce2f1999ca
* src/ios: d4d7d0691c..ca684a5bf7
* src/testing: deb05a1479..c82106c804
* src/third_party: 5bca1dd053..94bb2b6713
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/c67a80df26..d95dde6e06
* src/third_party/depot_tools: 29361ca11f..0ec9d15571
* src/third_party/icu: 297a4dd02b..a191af9d02
* src/third_party/libvpx/source/libvpx: 6c62530c66..dbcb89be24
* src/tools: 4bebb9268f..71837296b0
DEPS diff: 6f37604c1d..bd84ccec52/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: I94ce5d3c071b211d68da2fe0f47f0bc1e4759b7c
Reviewed-on: https://webrtc-review.googlesource.com/95623
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24393}
2018-08-23 05:09:52 +00:00
0de1383bf2 Roll chromium_revision 07be93b641..6f37604c1d (585077:585288)
Change log: 07be93b641..6f37604c1d
Full diff: 07be93b641..6f37604c1d

Changed dependencies:
* src/base: 354d9af985..e928b3cec4
* src/build: 2dbfe11063..d85b83e96f
* src/ios: 0237344f31..d4d7d0691c
* src/testing: 4a44d78577..deb05a1479
* src/third_party: 9bf2dc0fed..5bca1dd053
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/ba76717a8d..c67a80df26
* src/tools: 667e8244c5..4bebb9268f
DEPS diff: 07be93b641..6f37604c1d/DEPS

No update to Clang.

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

Change-Id: I4c6ba78d09fe2b22ea9d6f20959a6ef0825ef77c
Reviewed-on: https://webrtc-review.googlesource.com/95580
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24392}
2018-08-23 00:11:21 +00:00
8de502ba11 Add didRemoveReceiver delegate callback.
Bug: None
Change-Id: I7d3badc9005f51a641febd359d037ed37a205101
Reviewed-on: https://webrtc-review.googlesource.com/95241
Commit-Queue: Zeke Chin <tkchin@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24391}
2018-08-22 17:51:03 +00:00
01e431951f Roll chromium_revision ab3ab1ba02..07be93b641 (584945:585077)
Change log: ab3ab1ba02..07be93b641
Full diff: ab3ab1ba02..07be93b641

Changed dependencies:
* src/base: 5da28da483..354d9af985
* src/build: e392c2be1e..2dbfe11063
* src/ios: 579443e24d..0237344f31
* src/testing: 4e934aec48..4a44d78577
* src/third_party: 4b7853d428..9bf2dc0fed
* src/third_party/depot_tools: 85f5e7ccd1..29361ca11f
* src/tools: 477b3454a4..667e8244c5
DEPS diff: ab3ab1ba02..07be93b641/DEPS

No update to Clang.

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

Change-Id: I848444883f27abf71db526420ca9bb164cf968be
Reviewed-on: https://webrtc-review.googlesource.com/95505
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24390}
2018-08-22 17:48:24 +00:00
86fbea10a5 Fix VideoSendStreamImpl::OnPacketFeedbackError: operator precedence.
in:
if (auto it = some_set.find(some_value) != some_set.end()) {}

"it" is bool, not an iterator.

Bug: webrtc:9652
Change-Id: Icfaab685f4e2f4456e24d5a14b11309dddfdc0fe
Reviewed-on: https://webrtc-review.googlesource.com/84420
Commit-Queue: Benoit Lize <lizeb@chromium.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24389}
2018-08-22 16:56:53 +00:00
ec93075c00 Delete deprecated methods on AudioCodingModule
Bug: None
Change-Id: I05f1ab6cdd6ac52972835af7ea94aacf5f64d673
Reviewed-on: https://webrtc-review.googlesource.com/95482
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24388}
2018-08-22 13:26:17 +00:00
8dad9b414a Eliminate NackModule dependency on VCMPacket
Bug: None
Change-Id: I1d4ecac123c888f2315aeb2f717ee756a472036e
Reviewed-on: https://webrtc-review.googlesource.com/95420
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24387}
2018-08-22 12:13:39 +00:00
631cafafcc Eliminate methods SetConfig() from DirectTransport and FakeNetworkPipe
Bug: webrtc:9630
Change-Id: If67d7dc79436614beb17b97c0f69814093e4fbb8
Reviewed-on: https://webrtc-review.googlesource.com/95140
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24386}
2018-08-22 11:12:40 +00:00
3df1d5d2fb Revert removal of simulcast screenshare experimental code (killswitch checks)
This reverts commit a3df0f2d05c7b0973c31fe171507e97e588671a5.

Reason for revert: We decided to keep a killswitch in M70 just in case.

Original reviewed at: https://webrtc-review.googlesource.com/c/src/+/90251

Bug: chromium:690537
Change-Id: Ieb0eb8d5487e03fc55a221f10366ed9768a6eb16
Reviewed-on: https://webrtc-review.googlesource.com/95061
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24385}
2018-08-22 10:39:28 +00:00
206b77f7ad Adds start bitrate handling to task queue congestion controller.
This adds a start bitrate field to TargetRateConstraints since this is
required in VideoSendStreamTests. This also reduces the differences
between the old SendSideCongestionController and the new TaskQueue
based version.

Bug: webrtc:9586
Change-Id: I5d3d1414e9d30b51723c911a0bf2e96b876c04e5
Reviewed-on: https://webrtc-review.googlesource.com/92624
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24384}
2018-08-22 10:09:26 +00:00
f2a8287cc5 Reland "Move FakeCodec to separate target and behave like real encoder."
Add FakeVp8Encoder, change FakeEncoder to use BitrateAllocator for simulcast.

Change call_test to use VP8 payload name for simulcast tests.
This is reland after fixes for broken perf tests.

 
Original Reviewed-on: https://webrtc-review.googlesource.com/91861

Bug: none
Change-Id: I6999a499408787be43a74a26a16b7826a0814a7b
Reviewed-on: https://webrtc-review.googlesource.com/95182
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24383}
2018-08-22 09:48:32 +00:00
4932aa185c Avoids posting tasks in congestion controller.
This CL makes calls to send side congestion controller that originates
from the task queue execute directly rather than posting a task. This
ensures that side effects are applied by the time the call returns.

This reduces the risk that the task queue version of the congestion
controller introduces races that does not exist in the process thread
based version.

Bug: webrtc:9586
Change-Id: I82de032dc971c791a0f86d20ccbd47cbb09eba4b
Reviewed-on: https://webrtc-review.googlesource.com/85360
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24382}
2018-08-22 09:47:02 +00:00
31b0b4534f Add Chromium default values for rtc_exclude_field_trial_default.
In theory Chromium defaults should be defined here: [1]. But a comment warns
that is_nacl (and similar) are not available when that file is processed
and that this kind of logic should be implemented in the "other" repo (in
WebRTC in this case).

This CL reimplements the same logic of //third_party/webrtc_overrides/BUILD.gn,
and it exclude the default field trial implementation in Chromium unless
is_nacl or is_chromecast are true [2].

[1] - https://cs.chromium.org/chromium/src/.gn?l=25-30&rcl=8f5ee77915e339939c43b39b01e73379cbbe43d8
[2] - https://cs.chromium.org/chromium/src/third_party/webrtc_overrides/BUILD.gn?l=63-89&rcl=8f5ee77915e339939c43b39b01e73379cbbe43d8

Bug: webrtc:9631
Change-Id: I15c365cd19b7358e7a0fee199957a27a6315b9dc
Reviewed-on: https://webrtc-review.googlesource.com/95422
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24381}
2018-08-22 09:05:37 +00:00
0e90982f41 Enable --rtc_event_log_name flag for more tests.
In particular, FullStackTest.ForemanCif30kbpsWithoutPacketLoss and
FullStackTest.VP9KSVC_3SL_Medium_Network_Restricted, part of
webrtc_perf_tests.

Bug: None
Change-Id: If11bbcc1d897f048d7ab36b44cf16e67e0f6bacc
Reviewed-on: https://webrtc-review.googlesource.com/95147
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24380}
2018-08-22 08:28:59 +00:00
b89ac622f3 Reland "Enable any address ports by default."
This reverts commit 1165949341b6f61c5d728999bfbdaf68fd5c15aa.

Reason for revert: Speculative reland (the revert breaks a downstream project).

Original change's description:
> Revert "Reland "Enable any address ports by default.""
> 
> This reverts commit ac5bbd940ed31f8a58095952f4dcdcbb1b58203c.
> 
> Reason for revert: Speculative revert, possibly breaking downstream projects
> 
> Original change's description:
> > Reland "Enable any address ports by default."
> > 
> > This reverts commit 056a68da896d9a578b9ea83e56d261648ea0adc6.
> > 
> > Reason for revert: Trying to reland.
> > 
> > Original change's description:
> > > Revert "Enable any address ports by default."
> > > 
> > > This reverts commit f04148c810aad2a0809dc8978650c55308381c47.
> > > 
> > > Reason for revert: Speculative revert. I suspect this is breaking a
> > > downstream test (I'll reland if it is not the culprit).
> > > 
> > > Original change's description:
> > > > Enable any address ports by default.
> > > > 
> > > > Ports not bound to any specific network interface are allocated by
> > > > default. These any address ports are pruned after allocation,
> > > > conditional on the allocation results of normal ports that are bound to
> > > > the enumerated interfaces.
> > > > 
> > > > Bug: webrtc:9313
> > > > Change-Id: I3ce12eeab0cf3547224e5f8c188d061fc530e145
> > > > Reviewed-on: https://webrtc-review.googlesource.com/78383
> > > > Commit-Queue: Qingsi Wang <qingsi@google.com>
> > > > Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> > > > Cr-Commit-Position: refs/heads/master@{#23673}
> > > 
> > > TBR=deadbeef@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> > > 
> > > Change-Id: I3b3dc42c7de46d198d4b9c270020dcf1100dd907
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Bug: webrtc:9313
> > > Reviewed-on: https://webrtc-review.googlesource.com/84300
> > > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#23678}
> > 
> > TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> > 
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> > 
> > Bug: webrtc:9313
> > Change-Id: I98442346babb5d8953d37dc5825efaf79804ed7f
> > Reviewed-on: https://webrtc-review.googlesource.com/85000
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23720}
> 
> TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com,qingsi@webrtc.org
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: webrtc:9313
> Change-Id: Ie5da4133a371532f717af144f183e299e759f152
> Reviewed-on: https://webrtc-review.googlesource.com/95340
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24374}

TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com,qingsi@webrtc.org

Change-Id: I52bf487d441ce8ccedee7e348b9ed9ade0fd9d1c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9313
Reviewed-on: https://webrtc-review.googlesource.com/95440
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24379}
2018-08-22 08:26:31 +00:00
0b9267830c Fix NACK logic for empty packets
This was broken in cl
https://webrtc-review.googlesource.com/c/src/+/93261.

Bug: chromium:875391, webrtc:7135
Change-Id: Id2051bde8a5248dd5aeefa782f9d63513d107df4
Reviewed-on: https://webrtc-review.googlesource.com/95146
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24378}
2018-08-22 08:15:27 +00:00
c5d121e142 Disable flaky TestFlexfecRtpStatePreservation
Bug: webrtc:9648
Change-Id: I388ea9c176ccdeeb47e15851b311dab20c5c9298
TBR: sprang@webrtc.org
Reviewed-on: https://webrtc-review.googlesource.com/95240
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24377}
2018-08-22 08:12:51 +00:00
ea9249ed15 Network & bitrate controllers are added for PCC.
Network controller is an implementation of the
NetworkControllerInterface which is a part of congestion controller API.
Bitrate controller computes rate update each iteration (see
https://www.usenix.org/system/files/conference/nsdi18/nsdi18-dong.pdf).

Bug: webrtc:9434
Change-Id: I48d3d9e1c713985ef9ebe28dc1f1285757588c69
Reviewed-on: https://webrtc-review.googlesource.com/87222
Commit-Queue: Anastasia Koloskova <koloskova@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24376}
2018-08-22 08:08:12 +00:00
801500cf99 Audio encoder tests: Create audio encoders the new way
Specifically, don't expect the ACM to be able to create encoders; we
have to give it an encoder that we make ourselves.

The new way of creating encoders used a 32 kbit/s bitrate
unconditionally for iSAC; I had to change it to 32 kbit/s for 16 kHz
and 56 kbit/s for 32 kHz, which is what the old way of creating
encoders has used since forever.

I also had to change some test expectations on Opus, because the new
way defaults to 32 kbit/s for mono and 64 kbit/s for stereo (which I
believe to be correct), while the old way defaults to 64 kbit/s in
both cases.

Bug: webrtc:8396
Change-Id: I3aab944175a8e27f4c63380e822b27e839bba7f2
Reviewed-on: https://webrtc-review.googlesource.com/94540
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24375}
2018-08-22 07:48:55 +00:00
1165949341 Revert "Reland "Enable any address ports by default.""
This reverts commit ac5bbd940ed31f8a58095952f4dcdcbb1b58203c.

Reason for revert: Speculative revert, possibly breaking downstream projects

Original change's description:
> Reland "Enable any address ports by default."
> 
> This reverts commit 056a68da896d9a578b9ea83e56d261648ea0adc6.
> 
> Reason for revert: Trying to reland.
> 
> Original change's description:
> > Revert "Enable any address ports by default."
> > 
> > This reverts commit f04148c810aad2a0809dc8978650c55308381c47.
> > 
> > Reason for revert: Speculative revert. I suspect this is breaking a
> > downstream test (I'll reland if it is not the culprit).
> > 
> > Original change's description:
> > > Enable any address ports by default.
> > > 
> > > Ports not bound to any specific network interface are allocated by
> > > default. These any address ports are pruned after allocation,
> > > conditional on the allocation results of normal ports that are bound to
> > > the enumerated interfaces.
> > > 
> > > Bug: webrtc:9313
> > > Change-Id: I3ce12eeab0cf3547224e5f8c188d061fc530e145
> > > Reviewed-on: https://webrtc-review.googlesource.com/78383
> > > Commit-Queue: Qingsi Wang <qingsi@google.com>
> > > Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#23673}
> > 
> > TBR=deadbeef@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> > 
> > Change-Id: I3b3dc42c7de46d198d4b9c270020dcf1100dd907
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: webrtc:9313
> > Reviewed-on: https://webrtc-review.googlesource.com/84300
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23678}
> 
> TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: webrtc:9313
> Change-Id: I98442346babb5d8953d37dc5825efaf79804ed7f
> Reviewed-on: https://webrtc-review.googlesource.com/85000
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23720}

TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,pthatcher@webrtc.org,qingsi@google.com,qingsi@webrtc.org

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

Bug: webrtc:9313
Change-Id: Ie5da4133a371532f717af144f183e299e759f152
Reviewed-on: https://webrtc-review.googlesource.com/95340
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24374}
2018-08-22 07:24:40 +00:00
efbcb31cb6 Revert "Remove the flag PORTALLOCATOR_ENABLE_ANY_ADDRESS_PORTS."
This reverts commit b3f5aed4332b25c3fa7e725126efd3d4262c385e.

Reason for revert: speculative revert, possibly breaking downstream projects

Original change's description:
> Remove the flag PORTALLOCATOR_ENABLE_ANY_ADDRESS_PORTS.
> 
> We now always enable any address ports, only using them if they end up
> using interfaces that weren't otherwise accessible. This flag is no
> longer used by downstream projects.
> 
> TBR=deadbeef@webrtc.org
> 
> Bug: None
> Change-Id: I6e4e93958cbc4300811bafb103f1a2e8732274ed
> Reviewed-on: https://webrtc-review.googlesource.com/85860
> Commit-Queue: Qingsi Wang <qingsi@google.com>
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23751}

TBR=qingsi@google.com,qingsi@webrtc.org

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

Bug: None
Change-Id: I2c3850533cd72c021a42dcb160f73ca54a036a84
Reviewed-on: https://webrtc-review.googlesource.com/95341
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24373}
2018-08-22 04:23:42 +00:00
5630b93dac Roll chromium_revision 3e0dea7b74..ab3ab1ba02 (584728:584945)
Change log: 3e0dea7b74..ab3ab1ba02
Full diff: 3e0dea7b74..ab3ab1ba02

Changed dependencies:
* src/base: bfaabf2504..5da28da483
* src/build: fc41447f02..e392c2be1e
* src/ios: c152c684cc..579443e24d
* src/testing: c74ae33716..4e934aec48
* src/third_party: d7684fa9c6..4b7853d428
* src/tools: d4200a2eff..477b3454a4
DEPS diff: 3e0dea7b74..ab3ab1ba02/DEPS

No update to Clang.

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

Change-Id: Iec5e5d5f2237e0e55ed9daaf063331dc832a52a4
Reviewed-on: https://webrtc-review.googlesource.com/95380
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24372}
2018-08-22 02:49:05 +00:00
9b2d4f5caa Revert "Use also the related address in redundancy detection for candidates from"
This reverts commit 625efe6dfe5b5681a2d8d3d5ecaa0c5ac9edd6ee.

Reason for revert: Speculative revert, possibly breaking downstream projects

Original change's description:
> Use also the related address in redundancy detection for candidates from
> the any-address/wildcard ports.
>
> A TURN server can allocate different IPs for different allocation
> requests from the same network interface, and a relayed candidate from a
> wildcard port is not considered duplicate with another relayed candidate
> using the same network interface in the current redundancy detection, if
> their mapped addresses (as the "related address" for relayed candidates)
> are different. Extra candidates would then be surfaced to the
> application unnecessarily.
>
> Bug: webrtc:9469
> Change-Id: I504fde3b70cd727ef6ad4517072dcf37328a8380
> Reviewed-on: https://webrtc-review.googlesource.com/86181
> Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24108}

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

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

Landing with NOTRY because ios64_sim_ios10_dbg bot is broken.
Passing all other bots.
NOTRY=True

Bug: webrtc:9469
Change-Id: Ica382280be5b4470cb99d8cccadcd87d3e7d37bb
Reviewed-on: https://webrtc-review.googlesource.com/95300
Commit-Queue: Qingsi Wang <qingsi@google.com>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24371}
2018-08-22 02:25:01 +00:00
2370b0831f Revert "Update packetsLost and jitter stats any time a packet is received."
This reverts commit 84916937b70472715efe5682bc273e91c3a72695.

Reason for revert: breaking downstream projects.

Original change's description:
> Update packetsLost and jitter stats any time a packet is received.
>
> Before this CL, the packetsLost and jitter stats (as returned by
> GetStats, at the API level) were only being updated when an RTCP SR or
> RR is generated. According to the stats spec, "local" stats like this
> should be updated any time a packet is received.
>
> This CL also fixes some minor issues with the calculation of packetsLost
> (and fractionLost):
> * Packets weren't being count as lost if lost over a sequence number
>   rollover.
> * Temporary periods of "negative" loss (caused by duplicate or out of
>   order packets) weren't being accumulated into the cumulative loss
>   counter. Example:
>   Period 1: Received packets 1, 2, 4
>     Loss over that period: 1 (expected 4 packets, got 3)
>     Reported cumulative loss: 1
>   Period 2: Received packets 3, 5
>     Loss over that period: -1 (expected 1 packet, got 2)
>     Reported cumulative loss: 1 (should be 0!)
>
> Landing with NOTRY because Android compile bots are broken for an
> unrelated reason.
> NOTRY=True
>
> Bug: webrtc:8804
> Change-Id: I840ba34de8957b1276f6bdaf93718f805629f5c8
> Reviewed-on: https://webrtc-review.googlesource.com/50020
> Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23731}

TBR=danilchap@webrtc.org,deadbeef@webrtc.org,ossu@webrtc.org

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

Landing with NOTRY because ios64_sim_ios10_dbg bot is broken.
Passing all other bots.
NOTRY=True

Bug: webrtc:8804
Change-Id: I07bd6b1206d5a8d211792ad392842f9ed6c505e9
Reviewed-on: https://webrtc-review.googlesource.com/95280
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24370}
2018-08-22 00:00:33 +00:00
ddbbf4601b Adds utility function for PCC.
Bug: webrtc:9434
Change-Id: I840f39afdff1851d939005f82e64b23927bf455e
Reviewed-on: https://webrtc-review.googlesource.com/87146
Commit-Queue: Anastasia Koloskova <koloskova@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24369}
2018-08-21 21:28:00 +00:00
9171e78ccd Adds monitor interval class for PCC.
The PCC congestion control algorithm divides time into consecutive
intervals called monitor intervals. This CL adds a class that is used by
PCC to measure the performance of sending at a certain rate during one
monitor interval.

Bug: webrtc:9434
Change-Id: Ia0447e224067d4ca807bcc6fd8083f9083385b91
Reviewed-on: https://webrtc-review.googlesource.com/87140
Commit-Queue: Anastasia Koloskova <koloskova@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24368}
2018-08-21 19:47:35 +00:00
18a86bfcc1 Reland "Default runner to junit4"
This is a reland of 902093493b608a1172248b85510bea291419c6ca
(the breakage was unrelated)

Original change's description:
> Default runner to junit4
>
> Bug: chromium:868610
> Change-Id: Ifc457d8e74cf42e9ba4d21807721f86c521b35e9
> Reviewed-on: https://webrtc-review.googlesource.com/94440
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Commit-Queue: Andrew Luo <aluo@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#24350}

TBR: phoglund@webrtc.org, sakal@webrtc.org
Cq-Include-Trybots: master.internal.tryserver.corp.webrtc:linux_internal
Bug: chromium:868610
Change-Id: Ie67829ccca8b652b0231952159ddbc1dae6b2cde
Reviewed-on: https://webrtc-review.googlesource.com/95200
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24367}
2018-08-21 17:10:05 +00:00
50635036db Add missing ifdefs to header files for SW video codecs.
Some functions were removed from the implementation files when this
flag is unset, but remained in the header files.

Bug: webrtc:7925
Change-Id: I9f8f969fb52f83c05ba02500a62dee78d1bcb0dc
Reviewed-on: https://webrtc-review.googlesource.com/80260
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Taylor (left Google) <deadbeef@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24366}
2018-08-21 16:20:23 +00:00
7d13a6e5b9 Revert "Move FakeCodec to separate target and behave like real encoder."
This reverts commit 223eba5f72b5228847eeebaaef1c4305a29e8b3d.

Reason for revert: Breaks perf tests and downstream projects.

Original change's description:
> Move FakeCodec to separate target and behave like real encoder.
> 
> Add FakeVp8Encoder, change FakeEncoder to use BitrateAllocator for simulcast.
> Change call_test to use VP8 payload name for simulcast tests.
> 
> Bug: none
> Change-Id: I5a34c52e66bbd6c05859729ed14ae87ac26b5969
> Reviewed-on: https://webrtc-review.googlesource.com/91861
> Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Per Kjellander <perkj@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24359}

TBR=mbonadei@webrtc.org,ilnik@webrtc.org,sprang@webrtc.org,srte@webrtc.org,perkj@webrtc.org

Change-Id: I602acecb3f340cc8d737ca074bf52496593419c8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: none
Reviewed-on: https://webrtc-review.googlesource.com/95181
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24365}
2018-08-21 15:20:32 +00:00
ac50c6a204 Adds Rtt tracker for PCC.
This is a part of series of CLs adding PCC (Performance-oriented
Congestion Control).

Bug: webrtc:9434
Change-Id: Idd36d8abea008623ac64b939d0de7ee6001f7f23
Reviewed-on: https://webrtc-review.googlesource.com/86951
Commit-Queue: Anastasia Koloskova <koloskova@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24364}
2018-08-21 15:00:47 +00:00
8459b17c75 AEC3: adding a config option for applying a more conservative initial phase.
Change-Id: If0f93aa6abcb3b8e99ca40dde86b15a4b1487883
Bug: webrtc:8671
Reviewed-on: https://webrtc-review.googlesource.com/94505
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Jesus de Vicente Pena <devicentepena@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24363}
2018-08-21 14:56:14 +00:00
4d95f1eb9b Roll chromium_revision e247d79575..3e0dea7b74 (584490:584728)
Change log: e247d79575..3e0dea7b74
Full diff: e247d79575..3e0dea7b74

Changed dependencies:
* src/base: f0547ccf1a..bfaabf2504
* src/build: 246c5791b8..fc41447f02
* src/ios: 10140842ef..c152c684cc
* src/testing: 0ffa776c67..c74ae33716
* src/third_party: 42cc7af495..d7684fa9c6
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e8964a2cd3..ba76717a8d
* src/third_party/depot_tools: dd765da4df..85f5e7ccd1
* src/tools: 44aee9142b..d4200a2eff
DEPS diff: e247d79575..3e0dea7b74/DEPS

No update to Clang.

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

Change-Id: Icff4b469396044d40c051ea5cbab60ffb1a92567
Reviewed-on: https://webrtc-review.googlesource.com/95123
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24362}
2018-08-21 14:32:11 +00:00
7040090ae6 Introduce rtc_exclude_field_trial_default GN argument.
This GN argument will be used to exclude the default implementation of
field trial in order to allow clients to provide a custom
implementation.

This will allow to land [1] without breaking Chromium.

[1] - https://webrtc-review.googlesource.com/c/src/+/94766

Bug: webrtc:9631
Change-Id: If7872d0c019fbb526a0b121a58caba51268d637d
Reviewed-on: https://webrtc-review.googlesource.com/95105
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24361}
2018-08-21 14:25:01 +00:00
c3da6716d4 AEC3: Adding another config parameter and matching json reader with config
This CL:
-Adds another config parameter that controls the duration of the initial
state.
-Adds reading of that parameter in audioproc_f from the json settings file.
-Adds missing reading of another parameter in audioproc_f from the json
settings file.

Bug: webrtc:8671
Change-Id: Ie6164c360492de5e6b0ade8838bbabe214560b5e
Reviewed-on: https://webrtc-review.googlesource.com/94621
Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24360}
2018-08-21 13:58:10 +00:00
223eba5f72 Move FakeCodec to separate target and behave like real encoder.
Add FakeVp8Encoder, change FakeEncoder to use BitrateAllocator for simulcast.
Change call_test to use VP8 payload name for simulcast tests.

Bug: none
Change-Id: I5a34c52e66bbd6c05859729ed14ae87ac26b5969
Reviewed-on: https://webrtc-review.googlesource.com/91861
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24359}
2018-08-21 13:44:32 +00:00
4555c65388 Add documentation for WEBRTC_EXCLUDE_BUILT_IN_SSL_ROOT_CERTS.
Bug: webrtc:9332
Change-Id: I37a498ea9e97d84b49c29387de9efdf95b10d898
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/94504
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24358}
2018-08-21 13:29:36 +00:00