1172 Commits

Author SHA1 Message Date
lliuu
f9ed235c9b Revert of Add framerate to VideoSinkWants and ability to signal on overuse (patchset #8 id:410001 of https://codereview.webrtc.org/2781433002/ )
Reason for revert:
This has resulted in failure of CallPerfTest.ReceivesCpuOveruseAndUnderuse test on the Win7 build bot https://build.chromium.org/p/client.webrtc.perf/builders/Win7/builds/1780

Original issue's description:
> Reland of Add framerate to VideoSinkWants and ability to signal on overuse (patchset #1 id:1 of https://codereview.webrtc.org/2764133002/ )
>
> Reason for revert:
> Found issue with test case, will add fix to reland cl.
>
> Original issue's description:
> > Revert of Add framerate to VideoSinkWants and ability to signal on overuse (patchset #14 id:250001 of https://codereview.webrtc.org/2716643002/ )
> >
> > Reason for revert:
> > Breaks perf tests:
> > https://build.chromium.org/p/client.webrtc.perf/builders/Win7/builds/1679
> > https://build.chromium.org/p/client.webrtc.perf/builders/Android32%20Tests%20%28L%20Nexus5%29/builds/2325
> >
> > Original issue's description:
> > > Add framerate to VideoSinkWants and ability to signal on overuse
> > >
> > > In ViEEncoder, try to reduce framerate instead of resolution if the
> > > current degradation preference is maintain-resolution rather than
> > > balanced.
> > >
> > > BUG=webrtc:4172
> > >
> > > Review-Url: https://codereview.webrtc.org/2716643002
> > > Cr-Commit-Position: refs/heads/master@{#17327}
> > > Committed: 72acf25261
> >
> > TBR=nisse@webrtc.org,magjed@webrtc.org,kthelgason@webrtc.org,ilnik@webrtc.org,stefan@webrtc.org,sprang@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:4172
> >
> > Review-Url: https://codereview.webrtc.org/2764133002
> > Cr-Commit-Position: refs/heads/master@{#17331}
> > Committed: 8b45b11144
>
> TBR=nisse@webrtc.org,magjed@webrtc.org,kthelgason@webrtc.org,ilnik@webrtc.org,stefan@webrtc.org,skvlad@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=webrtc:4172
>
> Review-Url: https://codereview.webrtc.org/2781433002
> Cr-Commit-Position: refs/heads/master@{#17474}
> Committed: 3ea3c77e93

TBR=ilnik@webrtc.org,stefan@webrtc.org,asapersson@webrtc.org,sprang@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4172

Review-Url: https://codereview.webrtc.org/2783183003
Cr-Commit-Position: refs/heads/master@{#17477}
2017-03-30 17:44:38 +00:00
sprang
3ea3c77e93 Reland of Add framerate to VideoSinkWants and ability to signal on overuse (patchset #1 id:1 of https://codereview.webrtc.org/2764133002/ )
Reason for revert:
Found issue with test case, will add fix to reland cl.

Original issue's description:
> Revert of Add framerate to VideoSinkWants and ability to signal on overuse (patchset #14 id:250001 of https://codereview.webrtc.org/2716643002/ )
>
> Reason for revert:
> Breaks perf tests:
> https://build.chromium.org/p/client.webrtc.perf/builders/Win7/builds/1679
> https://build.chromium.org/p/client.webrtc.perf/builders/Android32%20Tests%20%28L%20Nexus5%29/builds/2325
>
> Original issue's description:
> > Add framerate to VideoSinkWants and ability to signal on overuse
> >
> > In ViEEncoder, try to reduce framerate instead of resolution if the
> > current degradation preference is maintain-resolution rather than
> > balanced.
> >
> > BUG=webrtc:4172
> >
> > Review-Url: https://codereview.webrtc.org/2716643002
> > Cr-Commit-Position: refs/heads/master@{#17327}
> > Committed: 72acf25261
>
> TBR=nisse@webrtc.org,magjed@webrtc.org,kthelgason@webrtc.org,ilnik@webrtc.org,stefan@webrtc.org,sprang@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:4172
>
> Review-Url: https://codereview.webrtc.org/2764133002
> Cr-Commit-Position: refs/heads/master@{#17331}
> Committed: 8b45b11144

TBR=nisse@webrtc.org,magjed@webrtc.org,kthelgason@webrtc.org,ilnik@webrtc.org,stefan@webrtc.org,skvlad@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:4172

Review-Url: https://codereview.webrtc.org/2781433002
Cr-Commit-Position: refs/heads/master@{#17474}
2017-03-30 14:23:48 +00:00
philipel
8a256525f1 Reduce flakiness in EndToEnd probing tests.
Reduce the flakiness by retrying up to 3 times.

BUG=webrtc:7403, webrtc:7419

Review-Url: https://codereview.webrtc.org/2777913002
Cr-Commit-Position: refs/heads/master@{#17473}
2017-03-30 12:06:22 +00:00
aleloi
18703f9583 Disable flaky test EndToEndTest.TriggerMidCallProbing
The test is flaky for Msan (memory sanitizer).

The test fails in this way:

../../webrtc/video/end_to_end_tests.cc:2285: Failure
Failed
Timed out while waiting for mid-call probing.

TBR=sprang@webrtc.org
NOTRY=true
BUG=webrtc:7428

Review-Url: https://codereview.webrtc.org/2788613002
Cr-Commit-Position: refs/heads/master@{#17471}
2017-03-30 11:24:08 +00:00
stefan
2da7a24fcd Add back sender_time and receiver_time metrics to full stack tests.
BUG=none

Review-Url: https://codereview.webrtc.org/2781323002
Cr-Commit-Position: refs/heads/master@{#17462}
2017-03-30 08:02:15 +00:00
nisse
0ffdcc51bc Delete unneeded includes of deprecated system_wrappers include files.
Deletes left-over includes of trace.h and critical_section_wrapper.h.

BUG=webrtc:7035

Review-Url: https://codereview.webrtc.org/2784873002
Cr-Commit-Position: refs/heads/master@{#17460}
2017-03-30 07:31:15 +00:00
nisse
e5ad5ca06a Reland of Don't hardcode MediaType::ANY in FakeNetworkPipe. (patchset #1 id:1 of https://codereview.webrtc.org/2784543002/ )
Reason for revert:
Intend to fix perf failures and reland.

Original issue's description:
> Revert of Don't hardcode MediaType::ANY in FakeNetworkPipe. (patchset #4 id:60001 of https://codereview.webrtc.org/2774463003/ )
>
> Reason for revert:
> Reverting since this seems to break multiple WebRTC Perf buildbots
>
> Original issue's description:
> > Don't hardcode MediaType::ANY in FakeNetworkPipe.
> >
> > Instead let each test set the appropriate media type. This simplifies
> > demuxing in Call and later in RtpTransportController.
> >
> > BUG=webrtc:7135
> >
> > Review-Url: https://codereview.webrtc.org/2774463003
> > Cr-Commit-Position: refs/heads/master@{#17418}
> > Committed: 9c47b00e24
>
> TBR=stefan@webrtc.org,deadbeef@webrtc.org,solenberg@webrtc.org,pbos@webrtc.org,sprang@webrtc.org,nisse@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7135
>
> Review-Url: https://codereview.webrtc.org/2784543002
> Cr-Commit-Position: refs/heads/master@{#17427}
> Committed: 3a3bd50610

TBR=stefan@webrtc.org,deadbeef@webrtc.org,solenberg@webrtc.org,pbos@webrtc.org,sprang@webrtc.org,lliuu@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2783853002
Cr-Commit-Position: refs/heads/master@{#17459}
2017-03-30 06:57:43 +00:00
sprang
fe627f30cb Use simulcast for screenshare only in conference mode
Also, don't crash if InitEncode fails for vp8.

BUG=chromium:705505

Review-Url: https://codereview.webrtc.org/2779163002
Cr-Commit-Position: refs/heads/master@{#17452}
2017-03-29 15:24:59 +00:00
aleloi
7057b6b75f Disable flaky test EndToEndTest.InitialProbing
The test is flaky for Msan (memory sanitizer).

The test fails in this way:

../../webrtc/video/end_to_end_tests.cc:2237: Failure
Failed
Timed out while waiting for initial probing.

TBR=sprang@webrtc.org
NOTRY=true
BUG=webrtc:7419

Review-Url: https://codereview.webrtc.org/2778973004
Cr-Commit-Position: refs/heads/master@{#17434}
2017-03-29 09:07:33 +00:00
lliuu
3a3bd50610 Revert of Don't hardcode MediaType::ANY in FakeNetworkPipe. (patchset #4 id:60001 of https://codereview.webrtc.org/2774463003/ )
Reason for revert:
Reverting since this seems to break multiple WebRTC Perf buildbots

Original issue's description:
> Don't hardcode MediaType::ANY in FakeNetworkPipe.
>
> Instead let each test set the appropriate media type. This simplifies
> demuxing in Call and later in RtpTransportController.
>
> BUG=webrtc:7135
>
> Review-Url: https://codereview.webrtc.org/2774463003
> Cr-Commit-Position: refs/heads/master@{#17418}
> Committed: 9c47b00e24

TBR=stefan@webrtc.org,deadbeef@webrtc.org,solenberg@webrtc.org,pbos@webrtc.org,sprang@webrtc.org,nisse@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2784543002
Cr-Commit-Position: refs/heads/master@{#17427}
2017-03-28 16:40:59 +00:00
nisse
9c47b00e24 Don't hardcode MediaType::ANY in FakeNetworkPipe.
Instead let each test set the appropriate media type. This simplifies
demuxing in Call and later in RtpTransportController.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2774463003
Cr-Commit-Position: refs/heads/master@{#17418}
2017-03-28 11:59:41 +00:00
asapersson
0255acb085 Change VideoReceiveStream::Stats total_bitrate_bps to include all received packets.
The total_bitrate_bps is based on complete frames (from jitter buffer callback:
ReceiveStatisticsProxy::OnCompleteFrame(bool is_keyframe, size_t size_bytes)) (since M58).

Receive total_bitrate_bps can be incorrectly reported.
Example log of stats_.total_bitrate_bps in video_loopback call (target bitrate 600kbps):
SEND: stats_.total_bitrate_bps 682832
RECV: stats_.total_bitrate_bps 1078104 (new: 677384)
SEND: stats_.total_bitrate_bps 694280
RECV: stats_.total_bitrate_bps 1091768 (new: 663152)
SEND: stats_.total_bitrate_bps 626248
RECV: stats_.total_bitrate_bps 7683776 (new: 636080)

Changed total_bitrate_bps to be based on incoming packets (reported via callback from ReceiveStatisticsImpl: ReceiveStatisticsProxy::DataCountersUpdated(const webrtc::StreamDataCounters& counters, uint32_t ssrc)).

BUG=webrtc:7400

Review-Url: https://codereview.webrtc.org/2775813002
Cr-Commit-Position: refs/heads/master@{#17411}
2017-03-28 09:44:58 +00:00
nisse
b8f9a32459 Define RtpTransportControllerSendInterface.
Implementation owned by call, and passed to VideoSendStream and
AudioSendStream.

BUG=webrtc:6847, webrtc:7135

Review-Url: https://codereview.webrtc.org/2685673003
Cr-Commit-Position: refs/heads/master@{#17389}
2017-03-27 12:36:15 +00:00
Henrik Kjellander
098f036cad Disable FullStackTest.ScreenshareSlidesVP9_2SL on all platforms
The test is failing due to libvpx roll which will be fixed in future roll.
It wasn't discovered at trybots since webrtc_perf_tests doesn't run
on Mac because of webrtc:7322.

BUG=webrtc:7401
TBR=marpan@webrtc.org

Review-Url: https://codereview.webrtc.org/2774973002 .
Cr-Commit-Position: refs/heads/master@{#17377}
2017-03-24 19:55:13 +00:00
kjellander
f9e2a36229 Roll chromium_revision 22b81f6c45..d604de96c9 (459032:459307)
MB changes were needed due to https://codereview.chromium.org/2767833002
FullStackTest.ScreenshareSlidesVP9_2SL
test was disabled due to libvpx regression, see webrtc:7401.

Roll chromium_revision 22b81f6c45..d604de96c9 (459032:459307)

Change log: 22b81f6c45..d604de96c9
Full diff: 22b81f6c45..d604de96c9

Changed dependencies:
* src/base: 258342709c..d49079a0cb
* src/build: 4a2354d6ce..a18678dc18
* src/ios: f825ec1419..4afbbbaa88
* src/testing: 83a00745ef..7a028befe4
* src/third_party: 5c1951e265..5903b09f59
* src/third_party/catapult: 1b6a20ab7e..5c300b0898
* src/third_party/ffmpeg: b9acb5c51e..6d2e444456
* src/third_party/libvpx/source/libvpx: 8121f85473..2fac50fa0e
* src/tools: a4f9a9e9e9..3a6ca3a28a
DEPS diff: 22b81f6c45..d604de96c9/DEPS

No update to Clang.

TBR=marpan@webrtc.org,
BUG=webrtc:7401

Review-Url: https://codereview.webrtc.org/2777553002
Cr-Commit-Position: refs/heads/master@{#17376}
2017-03-24 19:17:33 +00:00
oprypin
92220ffe9f Low-bandwidth audio testing
The C++ part of the test uses CallTest to set up an audio-only call. It reads an audio file, plays it through a FakeAudioDevice which transfers data through a FakeNetworkPipe for another FakeAudioDevice to receive it and write it to a file. Information about these files is printed to stdout.

The test cases are meant to try different network and audio configs (more are planned in the future).

The Python part of the test runs the C++ part and scans stdout for tests to perform, runs the pairs of files (original and degraded) through the PESQ tool to receive a score and writes that to perf dashboard.

BUG=webrtc:7229
NOTRY=True

Review-Url: https://codereview.webrtc.org/2694203002
Cr-Commit-Position: refs/heads/master@{#17356}
2017-03-23 10:40:03 +00:00
nisse
25d0bdc1bc Delete support for receiving RTCP RPSI and SLI message.
This code has been unused for years, and at least the RTCP RSPI sending
logic appears broken.

This cl is part 3, following

  https://codereview.webrtc.org/2746413003 (delete sending)
  https://codereview.webrtc.org/2753783002 (delete vp8 feedback mode)

BUG=webrtc:7338

Review-Url: https://codereview.webrtc.org/2742383004
Cr-Commit-Position: refs/heads/master@{#17342}
2017-03-22 14:15:09 +00:00
kthelgason
3af6cc0de9 Don't reset quality scaler on resolution change.
This was causing the QualityScaler to be reconstructed each time
the resolution changes and thus the fast_rampup logic was not working
as intended. We now properly change the checking period to 5 seconds
after a downscale.

BUG=b/36457883

Review-Url: https://codereview.webrtc.org/2766513003
Cr-Commit-Position: refs/heads/master@{#17335}
2017-03-22 07:25:28 +00:00
skvlad
8b45b11144 Revert of Add framerate to VideoSinkWants and ability to signal on overuse (patchset #14 id:250001 of https://codereview.webrtc.org/2716643002/ )
Reason for revert:
Breaks perf tests:
https://build.chromium.org/p/client.webrtc.perf/builders/Win7/builds/1679
https://build.chromium.org/p/client.webrtc.perf/builders/Android32%20Tests%20%28L%20Nexus5%29/builds/2325

Original issue's description:
> Add framerate to VideoSinkWants and ability to signal on overuse
>
> In ViEEncoder, try to reduce framerate instead of resolution if the
> current degradation preference is maintain-resolution rather than
> balanced.
>
> BUG=webrtc:4172
>
> Review-Url: https://codereview.webrtc.org/2716643002
> Cr-Commit-Position: refs/heads/master@{#17327}
> Committed: 72acf25261

TBR=nisse@webrtc.org,magjed@webrtc.org,kthelgason@webrtc.org,ilnik@webrtc.org,stefan@webrtc.org,sprang@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4172

Review-Url: https://codereview.webrtc.org/2764133002
Cr-Commit-Position: refs/heads/master@{#17331}
2017-03-21 20:26:06 +00:00
sprang
72acf25261 Add framerate to VideoSinkWants and ability to signal on overuse
In ViEEncoder, try to reduce framerate instead of resolution if the
current degradation preference is maintain-resolution rather than
balanced.

BUG=webrtc:4172

Review-Url: https://codereview.webrtc.org/2716643002
Cr-Commit-Position: refs/heads/master@{#17327}
2017-03-21 18:54:11 +00:00
nisse
559af38a15 Split CongestionController into send- and receive-side classes.
New class ReceiveSideCongestionController, extracted from CongestionController, and responsible for the
OnReceivedPacket processing.

Rest of the CongestionController moved to a new class
SendSideCongestionController.

To avoid breaking applications, CongestionController is redefined
as a union of these two classes, with no intended change in behavior.

With one exception: CongestionController::SetBweBitrates used to call
remote_bitrate_estimator_.SetMinBitrate, but after remote_bitrate_estimator_ was moved to ReceiveSideCongestionController,
it no longer does this.

BUG=webrtc:6847

Review-Url: https://codereview.webrtc.org/2752233002
Cr-Commit-Position: refs/heads/master@{#17321}
2017-03-21 13:41:12 +00:00
philipel
54ca919c32 Allow padding packet in video streams.
BUG=webrtc:5514

Review-Url: https://codereview.webrtc.org/2763813003
Cr-Commit-Position: refs/heads/master@{#17319}
2017-03-21 12:45:18 +00:00
minyue
4c8b9425b0 Adding audio DTX to video loopback test.
BUG=None

Review-Url: https://codereview.webrtc.org/2768473002
Cr-Commit-Position: refs/heads/master@{#17317}
2017-03-21 11:11:43 +00:00
philipel
e828c9690a Probing EndToEndTests.
Add tests for inital probing and mid-call probing by reconfiguring max bitrate.

BUG=none

Review-Url: https://codereview.webrtc.org/2760623002
Cr-Commit-Position: refs/heads/master@{#17316}
2017-03-21 10:24:27 +00:00
nisse
3257b16156 Delete VP8 feedback mode.
It depends on RTCP RPSI and SLI messages, which are being deleted.

TBR=stefan@webrtc.org  # TODO comments added to common_types.h
BUG=webrtc:7338

Review-Url: https://codereview.webrtc.org/2753783002
Cr-Commit-Position: refs/heads/master@{#17314}
2017-03-21 08:54:13 +00:00
brandtr
c55f27afa4 Re-enable ULPFEC end-to-end test.
- Reduced flakyness by switching to a packetization format that has
  PictureID.
- Removed the explicit send-side BWE enabling from ULPFEC and FlexFEC
  tests, since that is now on by default.

BUG=webrtc:7047

Review-Url: https://codereview.webrtc.org/2753253002
Cr-Commit-Position: refs/heads/master@{#17310}
2017-03-20 13:32:59 +00:00
nisse
14adba77ec Don't allocate any RTPSender object for a receive only RtpRtcp module.
This is one step towards separation of send-side and receive-side
processing.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2740163002
Cr-Commit-Position: refs/heads/master@{#17306}
2017-03-20 10:52:39 +00:00
tommi
5f54419ae5 Revert of Don't set the priority of the decoder to 'high' on Android. (patchset #1 id:1 of https://codereview.webrtc.org/2745813003/ )
Reason for revert:
Reverting this as it had no effect.

Original issue's description:
> Don't set the priority of the decoder to 'high' on Android.
> Doing so competes with the actual decoding that happens on a different thread.
>
> BUG=695438
>
> Review-Url: https://codereview.webrtc.org/2745813003
> Cr-Commit-Position: refs/heads/master@{#17184}
> Committed: ca37cf6691

TBR=stefan@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=695438

Review-Url: https://codereview.webrtc.org/2757733005
Cr-Commit-Position: refs/heads/master@{#17297}
2017-03-17 18:54:25 +00:00
brandtr
3b941bef7a Minor FlexFEC fixes.
BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2720693007
Cr-Commit-Position: refs/heads/master@{#17292}
2017-03-17 14:02:46 +00:00
ilnik
baded15381 Reland of write frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #1 id:1 of https://codereview.webrtc.org/2751063005/ )
Fix reduced frame-rate on Mac and Android.

Also enable huge full-stack test Largeroom_50thumbs on Windows.

BUG=webrtc:7301

Review-Url: https://codereview.webrtc.org/2760583003
Cr-Commit-Position: refs/heads/master@{#17288}
2017-03-17 12:55:25 +00:00
tommi
b1db3702f7 Delete unsupported method VideoCodingModule::RegisterDecoderTimingCallback.
The implementation behind this method has been a noop for a long time.

BUG=none

Review-Url: https://codereview.webrtc.org/2757843002
Cr-Commit-Position: refs/heads/master@{#17286}
2017-03-17 12:35:43 +00:00
ilnik
2a420ce8c4 Revert of write frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #11 id:300001 of https://codereview.webrtc.org/2750473002/ )
Reason for revert:
Changes to frame-generator resulted in reduced fps on android and Mac on all tests.

Original issue's description:
> Reland of write frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #1 id:1 of https://codereview.webrtc.org/2748643002/ )
>
> Reason for revert:
> Reland with fixes to the failing perf tests.
>
> Original issue's description:
> > Revert of rewrite frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #2 id:90001 of https://codereview.webrtc.org/2744003002/ )
> >
> > Reason for revert:
> > CallPerfTest.ReceivesCpuOveruseAndUnderuse perf test fails due to this CL. It requires very accurate frame rate, which may not be so accurate now.
> >
> > Original issue's description:
> > > Reland of rewrite frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #1 id:1 of https://codereview.webrtc.org/2743993002/ )
> > >
> > > And enable large full-stack test depending on that change (Reland of https://codereview.webrtc.org/2741823003/)
> > > TBR=stefan@webrtc.org,tommi@webrtc.org
> > > BUG=webrtc:7301,webrtc:7325
> > >
> > > Review-Url: https://codereview.webrtc.org/2744003002
> > > Cr-Commit-Position: refs/heads/master@{#17196}
> > > Committed: 8c0a5896d1
> >
> > TBR=stefan@webrtc.org,tommi@webrtc.org,sprang@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:7301,webrtc:7325
> >
> > Review-Url: https://codereview.webrtc.org/2748643002
> > Cr-Commit-Position: refs/heads/master@{#17198}
> > Committed: 382a72a0d3
>
> BUG=webrtc:7301,webrtc:7325
>
> Review-Url: https://codereview.webrtc.org/2750473002
> Cr-Commit-Position: refs/heads/master@{#17253}
> Committed: 2549ad4fef

TBR=sprang@webrtc.org,tommi@webrtc.org,stefan@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7301,webrtc:7325

Review-Url: https://codereview.webrtc.org/2751063005
Cr-Commit-Position: refs/heads/master@{#17276}
2017-03-16 16:43:44 +00:00
philipel
277a8b5c4f De-parameterized EndToEndTests.
BUG=webrtc:6790

Review-Url: https://codereview.webrtc.org/2756633004
Cr-Commit-Position: refs/heads/master@{#17272}
2017-03-16 12:19:49 +00:00
ehmaldonado
f7f7fb9cf8 Add traces for some video events.
This CL adds traces to compute the following metrics that getStats()
captures for video:
- googFrameRateSent
- googFrameRateInput
- googFirsReceived
- googNacksReceived
- googFrameWidthSent
- googFrameHeightSent
- googAvgEncodeMs
- googEncodeUsagePercent

BUG=chromium:653087

Review-Url: https://codereview.webrtc.org/2746903004
Cr-Commit-Position: refs/heads/master@{#17260}
2017-03-15 17:45:49 +00:00
ilnik
2549ad4fef Reland of write frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #1 id:1 of https://codereview.webrtc.org/2748643002/ )
Reason for revert:
Reland with fixes to the failing perf tests.

Original issue's description:
> Revert of rewrite frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #2 id:90001 of https://codereview.webrtc.org/2744003002/ )
>
> Reason for revert:
> CallPerfTest.ReceivesCpuOveruseAndUnderuse perf test fails due to this CL. It requires very accurate frame rate, which may not be so accurate now.
>
> Original issue's description:
> > Reland of rewrite frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #1 id:1 of https://codereview.webrtc.org/2743993002/ )
> >
> > And enable large full-stack test depending on that change (Reland of https://codereview.webrtc.org/2741823003/)
> > TBR=stefan@webrtc.org,tommi@webrtc.org
> > BUG=webrtc:7301,webrtc:7325
> >
> > Review-Url: https://codereview.webrtc.org/2744003002
> > Cr-Commit-Position: refs/heads/master@{#17196}
> > Committed: 8c0a5896d1
>
> TBR=stefan@webrtc.org,tommi@webrtc.org,sprang@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7301,webrtc:7325
>
> Review-Url: https://codereview.webrtc.org/2748643002
> Cr-Commit-Position: refs/heads/master@{#17198}
> Committed: 382a72a0d3

BUG=webrtc:7301,webrtc:7325

Review-Url: https://codereview.webrtc.org/2750473002
Cr-Commit-Position: refs/heads/master@{#17253}
2017-03-15 14:48:54 +00:00
ilnik
35b7de480b Fix crash in vie_encoder when encoder configure fails
Bad changes are from CL 2745523002.

These changes were originally done by Sprang@. Sometimes, when encoder is failed to be configured on release build it causes a crash at vie_encoder.cc:451. That changes look like they are not important to other changes. This CL is simply reverting them.

BUG=chromium:701526

Review-Url: https://codereview.webrtc.org/2747403002
Cr-Commit-Position: refs/heads/master@{#17241}
2017-03-15 11:24:21 +00:00
nisse
cd386eb13f Delete support for sending RTCP RPSI and SLI messages.
BUG=webrtc:7338

Review-Url: https://codereview.webrtc.org/2746413003
Cr-Commit-Position: refs/heads/master@{#17229}
2017-03-14 15:54:43 +00:00
tommi
d0a71ba1ae Updates to VCMDecodedFrameCallback, VideoReceiver and a few related classes/tests.
* The _receiveCallback member of VCMDecodedFrameCallback does actually not require locking now that the threading model is slightly clearer. Documentation and checks have been added.
* UserReceiveCallback() never returns null and must always be called on the decoder thread. Checks have been added and the two test suites that were failing to set this callback, have been fixed and a new mock class added.  (looks like sakal@ may have hit some issues with flaky tests there).
* Changed VcmPayloadSink to use move semantics which I suspect was the intention at the time the code was written (when we didn't have move semantics).
* Added thread checker to a couple of classes and started adding thread checks for known behavior.  There's more to be  done there.
* Remove the |_decoder| member variable in VideoReceiver. It is not needed and as it could be used, left us open to a race.
* TODOs added for places where we can reduce locking. I suspect that we can get away with not needing a lock around _codecDataBase in VideoReceiver once we've got a clear picture of the threading model and ensured that all adhere to it.

BUG=webrtc:7328

Review-Url: https://codereview.webrtc.org/2744013002
Cr-Commit-Position: refs/heads/master@{#17226}
2017-03-14 11:16:20 +00:00
tommi
39e1289e64 Avoid holding lock while calling stream_resetter_ in MaxPaddingSetTest
BUG=webrtc:7330

Review-Url: https://codereview.webrtc.org/2745083002
Cr-Commit-Position: refs/heads/master@{#17207}
2017-03-13 12:15:14 +00:00
sprang
6ef1b34aae Fix perf test regression for screenshare and vp9.
Turns out temporal_layer_thresholds_bps doesn't work quite as expected.
It's for instance not honored at all for normal VP8 video. We need to
take a pass over this in general.

BUG=chromium:700297

Review-Url: https://codereview.webrtc.org/2744823002
Cr-Commit-Position: refs/heads/master@{#17199}
2017-03-13 09:01:32 +00:00
ilnik
382a72a0d3 Revert of rewrite frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #2 id:90001 of https://codereview.webrtc.org/2744003002/ )
Reason for revert:
CallPerfTest.ReceivesCpuOveruseAndUnderuse perf test fails due to this CL. It requires very accurate frame rate, which may not be so accurate now.

Original issue's description:
> Reland of rewrite frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #1 id:1 of https://codereview.webrtc.org/2743993002/ )
>
> And enable large full-stack test depending on that change (Reland of https://codereview.webrtc.org/2741823003/)
> TBR=stefan@webrtc.org,tommi@webrtc.org
> BUG=webrtc:7301,webrtc:7325
>
> Review-Url: https://codereview.webrtc.org/2744003002
> Cr-Commit-Position: refs/heads/master@{#17196}
> Committed: 8c0a5896d1

TBR=stefan@webrtc.org,tommi@webrtc.org,sprang@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7301,webrtc:7325

Review-Url: https://codereview.webrtc.org/2748643002
Cr-Commit-Position: refs/heads/master@{#17198}
2017-03-13 08:54:13 +00:00
stefan
ff2ebf5e30 Clean up perf metrics and report ramp-up stats for fewer tests.
BUG=None

Review-Url: https://codereview.webrtc.org/2738183004
Cr-Commit-Position: refs/heads/master@{#17197}
2017-03-13 08:27:03 +00:00
ilnik
8c0a5896d1 Reland of rewrite frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #1 id:1 of https://codereview.webrtc.org/2743993002/ )
And enable large full-stack test depending on that change (Reland of https://codereview.webrtc.org/2741823003/)
TBR=stefan@webrtc.org,tommi@webrtc.org
BUG=webrtc:7301,webrtc:7325

Review-Url: https://codereview.webrtc.org/2744003002
Cr-Commit-Position: refs/heads/master@{#17196}
2017-03-13 08:03:07 +00:00
tommi
ca37cf6691 Don't set the priority of the decoder to 'high' on Android.
Doing so competes with the actual decoding that happens on a different thread.

BUG=695438

Review-Url: https://codereview.webrtc.org/2745813003
Cr-Commit-Position: refs/heads/master@{#17184}
2017-03-11 12:54:06 +00:00
ilnik
f44f53360f Revert of Enable big largeroom fullstack tests on Windows (patchset #1 id:1 of https://codereview.webrtc.org/2741823003/ )
Reason for revert:
This depends on another patchset, which causes problem and will be reverted too.

Original issue's description:
> Enable big largeroom fullstack tests on Windows
>
> BUG=webrtc:7301
>
> Review-Url: https://codereview.webrtc.org/2741823003
> Cr-Commit-Position: refs/heads/master@{#17169}
> Committed: 15939e7775

TBR=sprang@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7301

Review-Url: https://codereview.webrtc.org/2738353006
Cr-Commit-Position: refs/heads/master@{#17172}
2017-03-10 17:48:31 +00:00
ilnik
15939e7775 Enable big largeroom fullstack tests on Windows
BUG=webrtc:7301

Review-Url: https://codereview.webrtc.org/2741823003
Cr-Commit-Position: refs/heads/master@{#17169}
2017-03-10 16:18:34 +00:00
ilnik
cb8c1467bd Add FullStack test for simulcast screenshare mode.
BUG=webrtc:4172

Review-Url: https://codereview.webrtc.org/2745523002
Cr-Commit-Position: refs/heads/master@{#17150}
2017-03-09 17:23:30 +00:00
elad.alon
5bbf43f9d4 Move delay_based_bwe_ into CongestionController
BUG=webrtc:7058

Review-Url: https://codereview.webrtc.org/2725823002
Cr-Commit-Position: refs/heads/master@{#17146}
2017-03-09 14:40:08 +00:00
nisse
c69385de8b Add |protected_by_flexfec| flag to VideoReceiveStream::Config.
Use of FlexFEC is known when streams are created in
WebRtcVideoChannel2, so this replaces the code in Call to infer
FlexFEC config of video streams from the configuration of the FlexFEC
stream(s). This also allows us to switch to a more logical creation
order, where media streams are created before the FlexFEC stream.

This is done in preparation for a larger refactoring of the RTP
demuxing done in Call.

BUG=None

Review-Url: https://codereview.webrtc.org/2712683002
Cr-Commit-Position: refs/heads/master@{#17143}
2017-03-09 14:13:20 +00:00
ilnik
3ae7c259ef Disable failing 15 thumbernails full-stack test on windows
BUG=webrtc:7301

Review-Url: https://codereview.webrtc.org/2737703005
Cr-Commit-Position: refs/heads/master@{#17105}
2017-03-08 09:17:35 +00:00