14563 Commits

Author SHA1 Message Date
kthelgason
18f7c8d4df Remove warning suppression from VideoToolboxEncoder
This warning no longer needs to be supressed as the issue
has been fixed.

BUG=webrtc:6307
TBR=tkchin@webrtc.org

Review-Url: https://codereview.webrtc.org/2537293003
Cr-Commit-Position: refs/heads/master@{#15331}
2016-11-30 13:31:07 +00:00
asapersson
076c0118c5 Change unit of logged bitrate stats in bytes/s to bits/s.
Multiplier added to ToString method in AggregatedStats.

BUG=webrtc:5283

Review-Url: https://codereview.webrtc.org/2535323003
Cr-Commit-Position: refs/heads/master@{#15330}
2016-11-30 13:17:21 +00:00
phoglund
aff96361d3 Greatly reduce number of level controller tests.
These tests have been causing a large number of false alerts, which is
tons of work for the perf sheriff. It's infeasible to test every single
permutation, so we must choose carefully. This CL reduces the number
of RESULT lines from the test from ~450 to ~50. I attempted to choose
interesting permutations, but you probably know better what's
interesting...

https://chromeperf.appspot.com/report?
sid=a7193c96f708018848ca07ad9c78ac657cadab3c70b3939c42bd7d70a092d61a
also suggests most of the metrics have enormous standard deviations,
so maybe you could look into how stable the metrics really are
and remove/stabilize the ones that aren't?

BUG=chromium:666725

Review-Url: https://codereview.webrtc.org/2529393006
Cr-Commit-Position: refs/heads/master@{#15329}
2016-11-30 13:04:47 +00:00
perkj
6a2e20ad14 Make sure GetLastError on a PlatformThread return an error that is relevant to the thread.
BUG=none

Review-Url: https://codereview.webrtc.org/2541003002
Cr-Commit-Position: refs/heads/master@{#15328}
2016-11-30 12:53:14 +00:00
magjed
b49fc142e3 RtpDataEngine, FindCodecByName: Don't reassign codecs
BUG=None

Review-Url: https://codereview.webrtc.org/2541583003
Cr-Commit-Position: refs/heads/master@{#15327}
2016-11-30 12:52:10 +00:00
magjed
998df1d1a0 Create webrtc/sdk/android folder
BUG=webrtc:5882
NOTRY=True

Review-Url: https://codereview.webrtc.org/2532393004
Cr-Commit-Position: refs/heads/master@{#15326}
2016-11-30 12:51:05 +00:00
minyue
78b4d56535 Relanding "Pass time constant to bwe smoothing filter."
An earlier attempt to land this was in https://codereview.webrtc.org/2518923003/

It was failed because it removed an API. This CL fixes this.

BUG=webrtc:6443, webrtc:6303

Review-Url: https://codereview.webrtc.org/2536753002
Cr-Commit-Position: refs/heads/master@{#15325}
2016-11-30 12:47:47 +00:00
ossu
8d66a5a3b1 Disabled flaky P2PTestConductor tests on ASAN and MSAN.
TBR=deadbeef@webrtc.org
BUG=webrtc:6776

Review-Url: https://codereview.webrtc.org/2539103002
Cr-Commit-Position: refs/heads/master@{#15324}
2016-11-30 12:23:39 +00:00
nisse
0245da0fa0 Move ownership of PacketRouter from CongestionController to Call.
And delete the method CongestionController::packet_router.

BUG=None

Review-Url: https://codereview.webrtc.org/2516983004
Cr-Commit-Position: refs/heads/master@{#15323}
2016-11-30 11:35:28 +00:00
philipel
06251f1955 Reduce ProbeController::kDefaultMaxProbingBitrateBps to 10 mbps.
BUG=none

Review-Url: https://codereview.webrtc.org/2535903003
Cr-Commit-Position: refs/heads/master@{#15322}
2016-11-30 10:48:46 +00:00
ossu
f4a5942e62 Disabled all ScreenCapturerIntegrationTests on Windows
TBR=zijiehe@chromium.org
BUG=webrtc:6666

Review-Url: https://codereview.webrtc.org/2538093002
Cr-Commit-Position: refs/heads/master@{#15321}
2016-11-30 10:39:00 +00:00
ehmaldonado
3a864d2545 MB: Add swarming bots in the FYI waterfall and remove memcheck swarming.
BUG=chromium:657725
R=kjellander@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2532943004
Cr-Commit-Position: refs/heads/master@{#15320}
2016-11-30 10:35:47 +00:00
philipel
b7e1dd7f47 Revert of Adding memcheck suppression. (patchset #1 id:1 of https://codereview.webrtc.org/2537563003/ )
Reason for revert:
A fix for the related bug has landed: https://codereview.webrtc.org/2535203002

Original issue's description:
> Adding memcheck suppression.
>
> See linked bug.
>
> BUG=webrtc:6788
> TBR=kjellander@webrtc.org
> NOTRY=True
>
> Committed: https://crrev.com/bdd6f4c33288e9f7bcafa26f3a4ec8422131cb0b
> Cr-Commit-Position: refs/heads/master@{#15283}

TBR=kjellander@webrtc.org,deadbeef@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:6788

Review-Url: https://codereview.webrtc.org/2540113002
Cr-Commit-Position: refs/heads/master@{#15319}
2016-11-30 10:28:16 +00:00
hbos
706a45e68e Added missing include to fix waterfall compile error.
Bots failue caused by https://codereview.webrtc.org/2517243005/

NOTRY=True
TBR=stefan@webrtc.org
BUG=webrtc:6638

Review-Url: https://codereview.webrtc.org/2544473002
Cr-Commit-Position: refs/heads/master@{#15318}
2016-11-30 09:53:19 +00:00
nisse
f15a2c5193 Delete deprecated versions of Copy, ScaleFrom and CropAndScaleFrom.
BUG=webrtc:6672

Review-Url: https://codereview.webrtc.org/2528143002
Cr-Commit-Position: refs/heads/master@{#15317}
2016-11-30 09:52:12 +00:00
hbos
0583b286e4 Collecting RTCIceCandidatePairStats.transport_id and improved unittests.
RTCIceCandidatePairStats.transport_id is set to the related
RTCTransportStats' id.

Unittest for RTCIceCandidatePairStats is updated to do EXPECT_EQ
between actual and an expected hardcoded dictionary. The previous way of
testing, ExpectReportContainsCandidatePair, is removed.

(ExpectReportContainsCandidate still exist, we might want to replace
this by EXPECT_EQ testing in a follow up.)

Unittest for RTCTransportStats is similarly updated and
ExpectReportContainsTransportStats is removed. A bug was uncovered where
the "rtcp_connection_info.best_connection = true" case was not tested
(a copy of rtcp_connection_info was used in the test, modifying that had
no affect on the test) - fixed.

rtcstats_integrationtest.cc updated to take transport_id into account.

In order to reuse an updated version of expected_rt[c]p_transport in the
unittest, timestamps are ignored by RTCStats::operator==.

BUG=chromium:627816, chromium:653873, chromium:653873, webrtc:6755

Review-Url: https://codereview.webrtc.org/2527113002
Cr-Commit-Position: refs/heads/master@{#15316}
2016-11-30 09:50:36 +00:00
asapersson
0c43f779f8 Update video histograms that do not have a minimum lifetime limit before being recorded.
Updated histograms:
"WebRTC.Video.ReceivedPacketsLostInPercent" (two RTCP RR previously needed)
"WebRTC.Video.ReceivedFecPacketsInPercent" (one received packet previously needed)
"WebRTC.Video.RecoveredMediaPacketsInPercentOfFec" (one received FEC packet previously needed)

Prevents logging stats if call was shortly in use.

BUG=b/32659204

Review-Url: https://codereview.webrtc.org/2536653002
Cr-Commit-Position: refs/heads/master@{#15315}
2016-11-30 09:42:32 +00:00
philipel
759e0b7241 Fix memory leak in video_coding::PacketBuffer::InsertPacket.
BUG=webrtc:6788

Review-Url: https://codereview.webrtc.org/2535203002
Cr-Commit-Position: refs/heads/master@{#15314}
2016-11-30 09:32:11 +00:00
philipel
be74270ebe Calculate JitterBufferDelayInMs in the new jitter buffer.
JitterBufferDelayInMs is used for the WebRTC-NewVideoJitterBuffer finch
experiment, and therefore needs to be calculated.

BUG=webrtc:5514

Review-Url: https://codereview.webrtc.org/2534093003
Cr-Commit-Position: refs/heads/master@{#15313}
2016-11-30 09:31:45 +00:00
minyue
e69b46863a Revert of Renaming AudioEncoder::SetTargetBitrate and SetProjectedPacketLossRate. (patchset #5 id:240001 of https://codereview.webrtc.org/2411613002/ )
Reason for revert:
internal bot failure

Original issue's description:
> Renaming AudioEncoder::SetTargetBitrate and SetProjectedPacketLossRate.
>
> BUG=webrtc:6303
>
> Committed: https://crrev.com/84e56d576806635c966093d5421c5d04c9b90746
> Cr-Commit-Position: refs/heads/master@{#15310}

TBR=kwiberg@webrtc.org,henrik.lundin@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6303

Review-Url: https://codereview.webrtc.org/2537243004
Cr-Commit-Position: refs/heads/master@{#15312}
2016-11-30 09:19:06 +00:00
asapersson
1731c9cb4c Use swap instead of copy in RtcHistogram::GetAndReset.
BUG=webrtc:5283

Review-Url: https://codereview.webrtc.org/2268323002
Cr-Commit-Position: refs/heads/master@{#15311}
2016-11-30 08:29:17 +00:00
minyue
84e56d5768 Renaming AudioEncoder::SetTargetBitrate and SetProjectedPacketLossRate.
BUG=webrtc:6303

Review-Url: https://codereview.webrtc.org/2411613002
Cr-Commit-Position: refs/heads/master@{#15310}
2016-11-30 08:28:07 +00:00
henrik.lundin
097529f34c Remove 3 defines in voice_engine_configurations.h
WEBRTC_VOICE_ENGINE_AGC, WEBRTC_VOICE_ENGINE_ECHO, and
WEBRTC_VOICE_ENGINE_NR are now gone.

BUG=webrtc:6506

Review-Url: https://codereview.webrtc.org/2530373002
Cr-Commit-Position: refs/heads/master@{#15309}
2016-11-30 08:12:57 +00:00
zijiehe
e61fbfffda Use RotateDesktopFrame in DirectX capturer
To support rotation in DirectX capturer, several other changes are also
required.
1. Removing AddRect in RotateDesktopFrame, this is a performance improvement.
DxgiOutputDuplicator creates a rotated DesktopRegion, which can be directly
add to updated_region.
2. DxgiOutputDuplicator::SourceRect() is not accurate, the rectangle in source
is controlled by |offset| or |rotation_| + |offset|, instead of desktop_rect().
3. The |region| in DxgiTexture::CopyFrom() is not accurate. It needs an
unrotated DesktopRegion which offsets by |offset| instead of desktop_rect(). To
avoid generating both rotated and unrotated updated_region, this parameter has
been removed. This impacts DxgiTextureStagning performance a little bit (1.5ms).
Refer to bug for details.

BUG=webrtc:6646

Review-Url: https://codereview.webrtc.org/2530303002
Cr-Commit-Position: refs/heads/master@{#15308}
2016-11-30 00:09:57 +00:00
zijiehe
166e59a70f Enable ScreenCapturerIntegrationTests
This change enables ScreenCapturerIntegrationTests.

BUG=webrtc:6666

Review-Url: https://codereview.webrtc.org/2513213002
Cr-Commit-Position: refs/heads/master@{#15307}
2016-11-29 22:46:56 +00:00
buildbot
6a46cf7951 Roll chromium_revision db14e1adbd..b66d8ae9dc (435041:435081)
Change log: db14e1adbd..b66d8ae9dc
Full diff: db14e1adbd..b66d8ae9dc

No dependencies changed.
No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2532333004
Cr-Commit-Position: refs/heads/master@{#15306}
2016-11-29 22:08:02 +00:00
minyue
c9e80eee51 Adding packet overhead to audio network adaptor.
BUG=webrtc:6303, webrtc:6762

Review-Url: https://codereview.webrtc.org/2530653003
Cr-Commit-Position: refs/heads/master@{#15305}
2016-11-29 21:00:37 +00:00
buildbot
821dc7aa66 Roll chromium_revision 683745f53c..db14e1adbd (434997:435041)
Change log: 683745f53c..db14e1adbd
Full diff: 683745f53c..db14e1adbd

No dependencies changed.
No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2538833002
Cr-Commit-Position: refs/heads/master@{#15304}
2016-11-29 19:10:22 +00:00
michaelt
a33287761a Remove overhead from video bitrate.
BUG=webrtc:6638

Review-Url: https://codereview.webrtc.org/2517243005
Cr-Commit-Position: refs/heads/master@{#15303}
2016-11-29 17:25:10 +00:00
deadbeef
c4dc4a5956 Adding RTCStatsIntegrationTest to memcheck supressions.
It's at the same level as the other end-to-end tests that are also
disabled. It seems to be failing because it's not fast enough to keep up
with processing fake video frames.

BUG=webrtc:4387
TBR=kjellander@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2538783002
Cr-Commit-Position: refs/heads/master@{#15302}
2016-11-29 17:06:21 +00:00
buildbot
75f9d8c4e4 Roll chromium_revision ffe8e7b51d..683745f53c (434954:434997)
Change log: ffe8e7b51d..683745f53c
Full diff: ffe8e7b51d..683745f53c

No dependencies changed.
No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2541533003
Cr-Commit-Position: refs/heads/master@{#15301}
2016-11-29 16:24:12 +00:00
henrik.lundin
290d43aa14 Add a new UMA metric in APM to track incoming capture-side audio level
This CL adds WebRTC.Audio.ApmCaptureInputLevelAverage and
WebRTC.Audio.ApmCaptureInputLevelPeak. The metrics are updated once
every 10 seconds.

BUG=webrtc:6622

Review-Url: https://codereview.webrtc.org/2534473004
Cr-Commit-Position: refs/heads/master@{#15300}
2016-11-29 16:09:17 +00:00
aleloi
939e08f5f4 Added webrtc/audio/utility directory and empty GN target.
This Cl is the first step of a 3-step process to trick the build system of a
webrtc dependency into not failing.

The second step will be to register this folder in the dependency
build system. It cannot be done first, because there must be a GN
dependency from some existing target to a target in the new folder.

The third step is to land https://codereview.webrtc.org/2424173003, in
which the webrtc/audio/utility is used.

When a new folder with a publicly visible header is added, the build
files of said build system must be manually updated to register the
new folder.

BUG=webrtc:6548

Review-Url: https://codereview.webrtc.org/2532403003
Cr-Commit-Position: refs/heads/master@{#15299}
2016-11-29 15:32:15 +00:00
philipel
ee414d90b0 Added sanity check to VCMDecodingState::UsingFlexibleMode to prevent OOB error.
BUG=chromium:667504

Review-Url: https://codereview.webrtc.org/2534883003
Cr-Commit-Position: refs/heads/master@{#15298}
2016-11-29 15:01:29 +00:00
kjellander
ad6f646a3f Use //build/dotfile_settings.gni to reduce blocked auto-rolls
This was added in https://codereview.chromium.org/2512043002

BUG=chromium:617873
NOTRY=True

Review-Url: https://codereview.webrtc.org/2534913002
Cr-Commit-Position: refs/heads/master@{#15297}
2016-11-29 14:35:23 +00:00
brandtr
768d6259dc Fix spelling mistake in RTP module declaration.
BUG=None
R=danilchap@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2531223004
Cr-Commit-Position: refs/heads/master@{#15296}
2016-11-29 14:19:49 +00:00
kwiberg
b890c95c33 Replace some asserts with DCHECKs
NOPRESUBMIT=true
BUG=webrtc:6779

Review-Url: https://codereview.webrtc.org/2535643002
Cr-Commit-Position: refs/heads/master@{#15295}
2016-11-29 13:30:47 +00:00
henrik.lundin
5049942219 Refactor RMSLevel and give it new functionality
This change rewrites RMSLevel, making it accept an ArrayView as input,
and modify the implementation somewhat. It also makes the class keep
track of the peak RMS in addition to the average RMS over the
measurement period.

New tests are added to cover the new functionality.

BUG=webrtc:6622

Review-Url: https://codereview.webrtc.org/2535523002
Cr-Commit-Position: refs/heads/master@{#15294}
2016-11-29 12:26:31 +00:00
buildbot
1308c69466 Roll chromium_revision 0496be2799..ffe8e7b51d (434847:434954)
Change log: 0496be2799..ffe8e7b51d
Full diff: 0496be2799..ffe8e7b51d

No dependencies changed.
No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2532203004
Cr-Commit-Position: refs/heads/master@{#15293}
2016-11-29 11:22:22 +00:00
kjellander
f17cae24f4 Cleanup unused rules in webrtc/DEPS + add kjellander to OWNERS for it
Remove entries for headers that no longer exists in the webrtc/ dir.

BUG=webrtc:5878
NOTRY=True

Review-Url: https://codereview.webrtc.org/2540633002
Cr-Commit-Position: refs/heads/master@{#15292}
2016-11-29 10:52:22 +00:00
michaelt
668eb3b71c Add overhead to transport feedback observer.
BUG=webrtc:6762

Review-Url: https://codereview.webrtc.org/2525283002
Cr-Commit-Position: refs/heads/master@{#15291}
2016-11-29 10:24:23 +00:00
charujain
19223ace65 Ignore newly added resource files.
As part of https://codereview.webrtc.org/2532963002/
we added two new resource file which needs to be ignored.

BUG=webrtc:6761
NOTRY=true

Review-Url: https://codereview.webrtc.org/2536133002
Cr-Commit-Position: refs/heads/master@{#15290}
2016-11-29 10:23:05 +00:00
Henrik Kjellander
455b512333 Landmine to clobber Windows builders
Speculative clobber to see if the Win 64-bit Debug linking
errors go away.

BUG=chromium:668961
TBR=ossu@webrtc.org

Review URL: https://codereview.webrtc.org/2538593003 .

Cr-Commit-Position: refs/heads/master@{#15289}
2016-11-29 10:14:47 +00:00
charujain
1b5b22dc17 Fixed bug in ExtractFrameFromY4mFile API which was not extracting the frames correctly.
Issue: This API was calculating the file_header and frame_header offset only for the first frame which is not the right logic. We need to skip the file and frame header every time we extract a new frame.

Also added a unit test case which compares the extracted frame with the frame stored in text file.

NOPRESUBMIT=true
NOTRY=true

BUG=webrtc:6761

Review-Url: https://codereview.webrtc.org/2532963002
Cr-Commit-Position: refs/heads/master@{#15288}
2016-11-29 10:01:26 +00:00
hbos
db346a7cbe RTCStatsIntegrationTest added.
This is an integration test using peerconnectiontestwrapper.h to set up
and end to end test using a real PeerConnection implementation. These
tests will complement rtcstatscollector_unittest.cc which collects all
stats using mocks.

The integration test is set up so that all stats types are returned by
GetStats and verifies that expected dictionary members are defined. The
test could in the future be updated to include sanity checks for the
values of members. There is a sanity check that references to other
stats dictionaries yield existing stats of the appropriate type, but
other than that members are only tested for if they are defined not.

StatsCallback of rtcstatscollector_unittest.cc is moved so that it can
be reused and renamed to RTCStatsObtainer.

TODO: Audio stream track stats members are missing in the test. Find out
if this is because of a real problem or because of testing without real
devices. Do this before closing crbug.com/627816.

BUG=chromium:627816

Review-Url: https://codereview.webrtc.org/2521663002
Cr-Commit-Position: refs/heads/master@{#15287}
2016-11-29 09:57:08 +00:00
kthelgason
876222f77d Move usage of QualityScaler to ViEEncoder.
This brings QualityScaler much more in line with OveruseFrameDetector.
The two classes are conceptually similar, and should be used in the
same way. The biggest changes in this CL are:
- Quality scaling is now only done in ViEEncoder and not in each
  encoder implementation separately.
- QualityScaler now checks the average QP asynchronously, instead of
  having to be polled on each frame.
- QualityScaler is no longer responsible for actually scaling the frames,
  but has a callback to ViEEncoder that it uses to express it's desire
  for lower resolution.

BUG=webrtc:6495

Review-Url: https://codereview.webrtc.org/2398963003
Cr-Commit-Position: refs/heads/master@{#15286}
2016-11-29 09:44:22 +00:00
asapersson
320e45ad87 Use RateCounter for input/sent fps stats. Reports average of periodically computed stats over a call.
Intervals when video is paused is no longer included in the stats:
"WebRTC.Video.InputFramesPerSecond"
"WebRTC.Video.SentFramesPerSecond"

BUG=webrtc:5283

Review-Url: https://codereview.webrtc.org/2536743002
Cr-Commit-Position: refs/heads/master@{#15285}
2016-11-29 09:40:46 +00:00
buildbot
65e5f5a69f Roll chromium_revision d74a300097..0496be2799 (434704:434847)
Change log: d74a300097..0496be2799
Full diff: d74a300097..0496be2799

No dependencies changed.
No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2534093002
Cr-Commit-Position: refs/heads/master@{#15284}
2016-11-29 03:19:31 +00:00
deadbeef
bdd6f4c332 Adding memcheck suppression.
See linked bug.

BUG=webrtc:6788
TBR=kjellander@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2537563003
Cr-Commit-Position: refs/heads/master@{#15283}
2016-11-29 03:05:43 +00:00
deadbeef
6cf94a0118 Only use BoringSSL time callback in unit tests.
The actual time used in production code should honor the epoch time.

BUG=webrtc:6737

Review-Url: https://codereview.webrtc.org/2526433002
Cr-Commit-Position: refs/heads/master@{#15282}
2016-11-29 01:38:39 +00:00