Commit Graph

15338 Commits

Author SHA1 Message Date
5e13d41124 Remove limit on how often quality scaling downscales
When starting from 720p this is necessary to achieve acceptable
quality at low bitrates.

BUG=webrtc:6495

Review-Url: https://codereview.webrtc.org/2538913003
Cr-Commit-Position: refs/heads/master@{#15356}
2016-12-01 11:59:56 +00:00
86cf9a2474 Increase test timeout to combat flakiness.
These tests have been a little flaky on the bots.
Hopefully increasing the timeout by 200% will help.

BUG=webrtc:6799

Review-Url: https://codereview.webrtc.org/2541743006
Cr-Commit-Position: refs/heads/master@{#15355}
2016-12-01 10:57:07 +00:00
e90adcef42 Remove OnLocalSsrcChanged
Removing the unused interface OnLocalSsrcChanged.

BUG=webrtc:6456

Review-Url: https://codereview.webrtc.org/2546703002
Cr-Commit-Position: refs/heads/master@{#15354}
2016-12-01 10:39:49 +00:00
847f2948e5 Roll chromium_revision b5ce7e0a17..698c4714e8 (435129:435589)
Change log: b5ce7e0a17..698c4714e8
Full diff: b5ce7e0a17..698c4714e8

Changed dependencies:
* src/buildtools: 991f459071..102c16366d
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/e1cc35e581..f086df9f5f
DEPS diff: b5ce7e0a17..698c4714e8/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2539413002
Cr-Commit-Position: refs/heads/master@{#15353}
2016-12-01 10:23:53 +00:00
665bc3c7ad Move webrtc/api/androidtests to webrtc/sdk/android/instrumentationtests
BUG=webrtc:5882
NOPRESUBMIT=True

Review-Url: https://codereview.webrtc.org/2541823002
Cr-Commit-Position: refs/heads/master@{#15352}
2016-12-01 09:45:35 +00:00
2bc324cc5a Add method on AVFoundation capturer to adapt output format.
This CL makes a method available on the AVFoundationVideoCapturer
that adapts the output format of captured video to the specified
width and height.

BUG=webrtc:6753

Review-Url: https://codereview.webrtc.org/2528493004
Cr-Commit-Position: refs/heads/master@{#15351}
2016-12-01 09:36:22 +00:00
dd40702357 Move VideoDecoder::Create() logic to separate internal video decoder factory
The goal with this CL is to move implementation details out from the
webrtc root (webrtc/video_decoder.h) to simplify the dependency graph.
Another goal is to streamline the creation of VideoDecoders in
webrtcvideoengine2.cc; it will now have two factories of the same
WebRtcVideoDecoderFactory type, one internal and one external.

Specifically, this CL:
 * Removes webrtc::VideoDecoder::DecoderType and use webrtc::VideoCodecType
   instead.
 * Removes 'static VideoDecoder* Create(DecoderType codec_type)' and
   moves the create function to the internal decoder factory instead.
 * Removes video_decoder.cc. webrtc::VideoDecoder is now just an
   interface without any static functions.

BUG=webrtc:6743

Review-Url: https://codereview.webrtc.org/2521203002
Cr-Commit-Position: refs/heads/master@{#15350}
2016-12-01 08:27:35 +00:00
aa354c9512 Rename full_stack.cc to full_stack_tests.cc.
Also rename the accompanying plot file.

BUG=None

Review-Url: https://codereview.webrtc.org/2529293006
Cr-Commit-Position: refs/heads/master@{#15349}
2016-12-01 08:20:24 +00:00
a974d76c74 Enable VideoToolbox encoder on mac
BUG=webrtc:6317

Review-Url: https://codereview.webrtc.org/2532983006
Cr-Commit-Position: refs/heads/master@{#15348}
2016-12-01 08:16:54 +00:00
024c90ed90 Whitespace CL to trigger bots.
TBR=ehmaldonado@webrtc.org
BUG=None

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

Cr-Commit-Position: refs/heads/master@{#15347}
2016-12-01 07:05:44 +00:00
3a70cc3977 Whitespace change to trigger bots.
TBR=ehmaldonado@webrtc.org
BUG=None

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

Cr-Commit-Position: refs/heads/master@{#15346}
2016-12-01 06:04:11 +00:00
5c13c33f30 Roll chromium_revision b66d8ae9dc..b5ce7e0a17 (435081:435129)
Change log: b66d8ae9dc..b5ce7e0a17
Full diff: b66d8ae9dc..b5ce7e0a17

Changed dependencies:
* src/third_party/ffmpeg: d16162e3f4..7e5307d753
DEPS diff: b66d8ae9dc..b5ce7e0a17/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2529293005
Cr-Commit-Position: refs/heads/master@{#15345}
2016-12-01 00:14:47 +00:00
ed6e077263 Make SurfaceTextureHelper and I420Frame public in Java.
This change makes the Java classes and constructors for
SurfaceTextureHelper and I420Frame public. This allows applications to
use the WebRTC CameraVideoCapturer to obtain raw frames, and to render
frames on the WebRTC VideoRenderer without having to pass them through a
VideoTrack - such as when using Quartc.

BUG=None.

Review-Url: https://codereview.webrtc.org/2544563002
Cr-Commit-Position: refs/heads/master@{#15344}
2016-11-30 22:40:23 +00:00
a15948c9c6 Change assert to RTC_DCHECK in bwe_test_logging.cc
BUG=None
TBR=stefan@webrtc.org

Review-Url: https://codereview.webrtc.org/2546483002
Cr-Commit-Position: refs/heads/master@{#15343}
2016-11-30 17:02:26 +00:00
3a9bc1790a Allow custom drawers to be added to framelisteners.
BUG=webrtc:6470

Review-Url: https://codereview.webrtc.org/2541053002
Cr-Commit-Position: refs/heads/master@{#15342}
2016-11-30 16:30:11 +00:00
06c1d6484e Prep to remove API-related #defines from voice_engine_configurations.h
The follwing #defines are marked as deprecated:
- WEBRTC_VOICE_ENGINE_VOLUME_CONTROL_API
- WEBRTC_VOICE_ENGINE_VIDEO_SYNC_API
- WEBRTC_VOICE_ENGINE_RTP_RTCP_API
- WEBRTC_VOICE_ENGINE_NETEQ_STATS_API
- WEBRTC_VOICE_ENGINE_HARDWARE_API
- WEBRTC_VOICE_ENGINE_FILE_API
- WEBRTC_VOICE_ENGINE_EXTERNAL_MEDIA_API
- WEBRTC_VOICE_ENGINE_CODEC_API
- WEBRTC_VOICE_ENGINE_AUDIO_PROCESSING_API

BUG=webrtc:6506

Review-Url: https://codereview.webrtc.org/2538093003
Cr-Commit-Position: refs/heads/master@{#15341}
2016-11-30 16:21:54 +00:00
9332b7d0ad Reland "Update rtt on audio only calls".
https://codereview.webrtc.org/2402333002

BUG=webrtc:6508

Review-Url: https://codereview.webrtc.org/2530383002
Cr-Commit-Position: refs/heads/master@{#15340}
2016-11-30 15:51:19 +00:00
93c5d030fc Start gathering perf data for VP8 + FlexFEC.
This is to assess the performance penalty of the (current)
lack of integration with FlexFEC and BWE.

This CL also enables send-side BWE for the following tests:
- foreman_cif_net_delay_0_0_plr_0_VP9
- foreman_cif_net_delay_0_0_plr_0_H264
- foreman_cif_delay_50_0_plr_5_VP9
- foreman_cif_delay_50_0_plr_5_H264
- foreman_cif_delay_50_0_plr_5_H264_flexfec
- foreman_cif_delay_50_0_plr_5_H264_ulpfec
Perf alerts on these tests are therefore expected.

R=stefan@webrtc.org
BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2534203004
Cr-Commit-Position: refs/heads/master@{#15339}
2016-11-30 15:50:13 +00:00
13d38fbe90 Delete all of the video_processing module but the denoiser code.
It is unused since cl https://codereview.webrtc.org/2386573002.

The new denoiser implementation and its tests are kept for now. This
code is also unused, but there are some plans to take this code into
use in the not too distant future.

BUG=None

Review-Url: https://codereview.webrtc.org/2496153002
Cr-Commit-Position: refs/heads/master@{#15338}
2016-11-30 15:44:59 +00:00
13f1a0a9ca Wire up x-google-{min,start,max}-bitrate to WebRtcVoiceMediaChannel.
BUG=webrtc:6793

Review-Url: https://codereview.webrtc.org/2534173002
Cr-Commit-Position: refs/heads/master@{#15337}
2016-11-30 15:23:07 +00:00
127387e5ce Delete nalu parser in mediaencoder
We already have an implementation in h264_common. We should have
as few of these as possible as they are subtly hard to get right
and it creates work to maintain N implementations.

BUG=webrtc:6546

Review-Url: https://codereview.webrtc.org/2538133002
Cr-Commit-Position: refs/heads/master@{#15336}
2016-11-30 15:12:54 +00:00
2305b701ae Remove unused build override
BUG=webrtc:6431

Review-Url: https://codereview.webrtc.org/2545503002
Cr-Commit-Position: refs/heads/master@{#15335}
2016-11-30 15:01:24 +00:00
cb861e074a Templatize percentile_filter.h and move it to base/analytics.
BUG=None

Review-Url: https://codereview.webrtc.org/2529063002
Cr-Commit-Position: refs/heads/master@{#15334}
2016-11-30 14:52:06 +00:00
4b9a2cb0d8 Reland "Renaming AudioEncoder::SetTargetBitrate and SetProjectedPacketLossRate."
The earlier attempt of this was in
https://codereview.webrtc.org/2411613002/

It was reverted due to failures on internal bots, showing that we cannot deprecate one method.

BUG=webrtc:6303

Review-Url: https://codereview.webrtc.org/2538493006
Cr-Commit-Position: refs/heads/master@{#15333}
2016-11-30 14:50:08 +00:00
26bddb92f0 Replace test_support_main by test_main and get rid of test_support_main_threaded_mac
test_support_main_threaded_mac doesn't seem to be used. It looks like it was
last used about a year and a half ago, and was removed in
https://webrtc-codereview.appspot.com/55379004

BUG=webrtc:6424
R=kjellander@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2540693002
Cr-Commit-Position: refs/heads/master@{#15332}
2016-11-30 14:12:10 +00:00
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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