338 Commits

Author SHA1 Message Date
sprang
c5d62e29ca Reland of Add framerate to VideoSinkWants and ability to signal on overuse (patchset #1 id:1 of https://codereview.webrtc.org/2783183003/ )
Reason for revert:
Seem to be a flaky test rather than an issue with this cl. Creating reland, will add code to reduce flakiness to that test.

Original issue's description:
> 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}
> Committed: f9ed235c9b

R=ilnik@webrtc.org,stefan@webrtc.org
BUG=webrtc:4172

Review-Url: https://codereview.webrtc.org/2789823002
Cr-Commit-Position: refs/heads/master@{#17498}
2017-04-03 06:53:04 +00:00
stefan
76d9c9c382 Reland of Enable trendline experiment and bayesian bitrate estimator experiment by default.
TBR=terelius@webrtc.org

BUG=webrtc:6566, webrtc:7415

Review-Url: https://codereview.webrtc.org/2794753002
Cr-Commit-Position: refs/heads/master@{#17497}
2017-04-01 13:51:09 +00:00
lliuu
029f7cccf4 Revert of Enable trendline experiment and bayesian bitrate estimator experiment by default. (patchset #6 id:100001 of https://codereview.webrtc.org/2777333003/ )
Reason for revert:
API changes in webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h broke internal project

Original issue's description:
> Enable trendline experiment and bayesian bitrate estimator experiment by default.
>
> BUG=webrtc:6566, webrtc:7415
>
> Review-Url: https://codereview.webrtc.org/2777333003
> Cr-Commit-Position: refs/heads/master@{#17491}
> Committed: 27925de951

TBR=terelius@webrtc.org,stefan@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6566, webrtc:7415

Review-Url: https://codereview.webrtc.org/2791743002
Cr-Commit-Position: refs/heads/master@{#17495}
2017-03-31 21:17:42 +00:00
stefan
27925de951 Enable trendline experiment and bayesian bitrate estimator experiment by default.
BUG=webrtc:6566, webrtc:7415

Review-Url: https://codereview.webrtc.org/2777333003
Cr-Commit-Position: refs/heads/master@{#17491}
2017-03-31 14:38:06 +00:00
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
lliuu
7a3615b6b3 Revert of Enable the bayesian bitrate estimator by default. (patchset #5 id:80001 of https://codereview.webrtc.org/2749803002/ )
Reason for revert:
Looks like this has caused multiple Android webrtc perf build bot failures in RampUpTest.UpDownUpTransportSequenceNumberRtx

Original issue's description:
> Enable the bayesian bitrate estimator by default.
>
> BUG=webrtc:6566, webrtc:7415
>
> Review-Url: https://codereview.webrtc.org/2749803002
> Cr-Commit-Position: refs/heads/master@{#17475}
> Committed: c53a17f28e

TBR=terelius@webrtc.org,magjed@webrtc.org,stefan@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6566, webrtc:7415

Review-Url: https://codereview.webrtc.org/2786913003
Cr-Commit-Position: refs/heads/master@{#17476}
2017-03-30 17:36:53 +00:00
stefan
c53a17f28e Enable the bayesian bitrate estimator by default.
BUG=webrtc:6566, webrtc:7415

Review-Url: https://codereview.webrtc.org/2749803002
Cr-Commit-Position: refs/heads/master@{#17475}
2017-03-30 15:56:22 +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
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
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
nisse
bcbaf74643 Let Call register ReceiveSideCongestionController as CallStatsObserver.
Fixes a regression from cl https://codereview.webrtc.org/2752233002.

BUG=chromium:704491,webrtc:6847

Review-Url: https://codereview.webrtc.org/2777423002
Cr-Commit-Position: refs/heads/master@{#17407}
2017-03-28 08:16:25 +00:00
kwiberg
1c07c70d88 Reland "WebRtcVoiceMediaChannel::AddRecvStream: Don't call SetRecPayloadType"
BUG=webrtc:5805

Review-Url: https://codereview.webrtc.org/2774833003
Cr-Commit-Position: refs/heads/master@{#17391}
2017-03-27 14:15:49 +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
kwiberg
670a7f3611 Revert of WebRtcVoiceMediaChannel::AddRecvStream: Don't call SetRecPayloadType (patchset #13 id:260001 of https://codereview.webrtc.org/2686043006/ )
Reason for revert:
Makes perf and Chromium FYI bots unhappy.

Original issue's description:
> WebRtcVoiceMediaChannel::AddRecvStream: Don't call SetRecPayloadType
>
> This removes one more place where we were unable to handle codecs not
> in the built-in set.
>
> BUG=webrtc:5805
>
> Review-Url: https://codereview.webrtc.org/2686043006
> Cr-Commit-Position: refs/heads/master@{#17370}
> Committed: 1724cfbdba

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

Review-Url: https://codereview.webrtc.org/2772043002
Cr-Commit-Position: refs/heads/master@{#17374}
2017-03-24 12:56:21 +00:00
kwiberg
1724cfbdba WebRtcVoiceMediaChannel::AddRecvStream: Don't call SetRecPayloadType
This removes one more place where we were unable to handle codecs not
in the built-in set.

BUG=webrtc:5805

Review-Url: https://codereview.webrtc.org/2686043006
Cr-Commit-Position: refs/heads/master@{#17370}
2017-03-24 10:16:04 +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
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
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
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
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
Stefan Holmer
9ea46b5286 Ignore packets sent on old network route when receiving feedback.
BUG=webrtc:7347
R=philipel@webrtc.org

Review-Url: https://codereview.webrtc.org/2755553003 .
Cr-Commit-Position: refs/heads/master@{#17243}
2017-03-15 11:40:25 +00:00
oprypin
a514584b9a Add the ability to read/write to WAV files in FakeAudioDevice
BUG=webrtc:7229

Review-Url: https://codereview.webrtc.org/2717623003
Cr-Commit-Position: refs/heads/master@{#17230}
2017-03-14 16:01:47 +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
ilnik
1cb27c221e Revert of rewrite frame generator capturer to use TaskQueue instead of EventTimeWrapper (patchset #2 id:70001 of https://codereview.webrtc.org/2745583006/ )
Reason for revert:
Causes problems with TSAN: https://bugs.chromium.org/p/webrtc/issues/detail?id=7325

Original issue's description:
> Reland of rewrite frame generator capturer to use TaskQueue instead of EventTimeWrapper.
>
> Fix CallPerfTest.ReceivesCpuOveruseAndUnderuse to not fail on Android with new FrameGeneratorCapturer.
>
> BUG=webrtc:7301
>
> Review-Url: https://codereview.webrtc.org/2745583006
> Cr-Commit-Position: refs/heads/master@{#17168}
> Committed: b00742508a

TBR=stefan@webrtc.org,tommi@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/2743993002
Cr-Commit-Position: refs/heads/master@{#17173}
2017-03-10 17:49:42 +00:00
ilnik
b00742508a Reland of rewrite frame generator capturer to use TaskQueue instead of EventTimeWrapper.
Fix CallPerfTest.ReceivesCpuOveruseAndUnderuse to not fail on Android with new FrameGeneratorCapturer.

BUG=webrtc:7301

Review-Url: https://codereview.webrtc.org/2745583006
Cr-Commit-Position: refs/heads/master@{#17168}
2017-03-10 15:43:32 +00:00
stefan
45b5fe549f Don't report perf metrics for packet loss ramp-up tests.
BUG=chromium:699072

Review-Url: https://codereview.webrtc.org/2744603002
Cr-Commit-Position: refs/heads/master@{#17145}
2017-03-09 14:27:02 +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
tommi
dea489f33e Add support for Location (RTC_FROM_HERE) to ProcessThread::RegisterModule.
This makes a few things a lot clearer when looking at perf trace data:

* What module instances (where they were created) are called
* On what thread
* How frequently
* For how long

ProcessThread will be replaced by TaskQueue moving forward and this is a step towards understanding the behavior of the affected code.

BUG=webrtc:7219

Review-Url: https://codereview.webrtc.org/2729053002
Cr-Commit-Position: refs/heads/master@{#16998}
2017-03-03 11:20:24 +00:00
solenberg
796b8f9d71 Remove usage of VoEVolumeControl from WVoE and Audio[Send|Receive]Stream.
BUG=webrtc:4690

Review-Url: https://codereview.webrtc.org/2721003002
Cr-Commit-Position: refs/heads/master@{#16956}
2017-03-02 01:02:23 +00:00
sprang
e5d3a3ea78 Fix quick perf test setting that was accidentally inverted.
Bug was introduced in
https://codereview.webrtc.org/2717973005/
Only affects test output, so omitting bug.

BUG=None

Review-Url: https://codereview.webrtc.org/2723093002
Cr-Commit-Position: refs/heads/master@{#16943}
2017-03-01 14:20:56 +00:00
perkj
16ccfdf457 Reland Move fake_audio_device to its own target.
Patchset 1 is patchset #5 id:80001 of https://codereview.webrtc.org/2717983003/
Patchset 2 fix call_perf_test dep on fake_audio_device.

This reverts commit 985371bda999c6db51286586c5850d2ff58f3511.

Original cl description:

Move fake_audio_device to its own target.
The purpose is to make it usefull for test targets that does not need or can use test_common.

For some reason this also triggered override issues in rtp module tests that are fixed in the same cl.

BUG=none
TBR=kjellander@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2718363002
Cr-Commit-Position: refs/heads/master@{#16922}
2017-02-28 22:41:05 +00:00
sprang
c1b57a15bf Test field trial group with startswith rather than equals.
BUG=webrtc:7266

Review-Url: https://codereview.webrtc.org/2717973005
Cr-Commit-Position: refs/heads/master@{#16915}
2017-02-28 16:50:47 +00:00
kjellander
2f1a555839 Enable GN check for webrtc/call
BUG=webrtc:6828
NOTRY=True

Review-Url: https://codereview.webrtc.org/2720503003
Cr-Commit-Position: refs/heads/master@{#16882}
2017-02-27 23:57:45 +00:00
kthelgason
fa5fdce100 Reland of Set scaling limit at 320 * 180 for all implementations. (patchset #1 id:1 of https://codereview.webrtc.org/2711913007/ )
Reason for revert:
Reland after fixing broken perf tests.

Original issue's description:
> Revert of Set scaling limit at 320 * 180 for all implementations. (patchset #2 id:20001 of https://codereview.webrtc.org/2709153002/ )
>
> Reason for revert:
> Looks like webrtc_perf_test started failing on linux, mac and windows after this cl landed.
>
> Example failure:
>
> https://build.chromium.org/p/client.webrtc.perf/builders/Linux%20Trusty/builds/1386/steps/webrtc_perf_tests/logs/stdio
>
> [ RUN      ] CallPerfTest.ReceivesCpuOveruseAndUnderuse
> ../../webrtc/call/call_perf_tests.cc:522: Failure
> Value of: Wait()
>   Actual: false
> Expected: true
> Timed out before receiving an overuse callback.
> [  FAILED  ] CallPerfTest.ReceivesCpuOveruseAndUnderuse (120056 ms)
>
>
> Original issue's description:
> > Set scaling limit at 320 * 180 for all implementations.
> >
> > The MediaCodec decoder on android has trouble decoding video at
> > so low resolutions. We set the limit a bit higher for all implementations
> > pending a robust software fallback implementation for MediaCodec.
> >
> > BUG=webrtc:7206
> >
> > Review-Url: https://codereview.webrtc.org/2709153002
> > Cr-Commit-Position: refs/heads/master@{#16798}
> > Committed: 560ddb7321
>
> TBR=magjed@webrtc.org,sprang@webrtc.org,kthelgason@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=webrtc:7206
>
> Review-Url: https://codereview.webrtc.org/2711913007
> Cr-Commit-Position: refs/heads/master@{#16839}
> Committed: 37510bf094

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

Review-Url: https://codereview.webrtc.org/2718013002
Cr-Commit-Position: refs/heads/master@{#16853}
2017-02-27 08:15:31 +00:00
deadbeef
922246a353 Replace NULL with nullptr or null in webrtc/audio/ and common_audio/.
BUG=webrtc:7147

Review-Url: https://codereview.webrtc.org/2719733002
Cr-Commit-Position: refs/heads/master@{#16843}
2017-02-26 12:18:12 +00:00
tommi
0f8b403eb5 Introduce a new constructor to PlatformThread.
The new constructor introduces two new changes:

* Support specifying thread priority at construction time.
  - Moving forward, the SetPriority() method will be removed.
* New thread function type.
  - The new type has 'void' as a return type and a polling loop
    inside PlatformThread, is not used.

The old function type is still supported until all places have been moved over.

In this CL, the first steps towards deprecating the old mechanism are taken
by moving parts of the code that were simple to move, over to the new callback
type.

BUG=webrtc:7187

Review-Url: https://codereview.webrtc.org/2708723003
Cr-Commit-Position: refs/heads/master@{#16779}
2017-02-22 19:22:05 +00:00
brandtr
798781299f Count FlexFEC packets in Call UMA stats.
BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2684243002
Cr-Commit-Position: refs/heads/master@{#16768}
2017-02-22 09:20:01 +00:00
philipel
5ef2bc1914 Reland of Fixes a bug where a video stream can get stuck in the suspended state. (patchset #1 id:1 of https://codereview.chromium.org/2703393002/ )
Reason for revert:
Downstream fixed

Original issue's description:
> Revert of Fixes a bug where a video stream can get stuck in the suspended state. (patchset #8 id:120001 of https://codereview.webrtc.org/2705603002/ )
>
> Reason for revert:
> Breaks downstream
>
> Original issue's description:
> > Fixes a bug where a video stream can get stuck in the suspended state.
> >
> > This happens if a lot of FEC is allocated when the stream becomes suspended. The required bitrate to unsuspend can then be too high so that the padding bitrate we are allowed to generate is not enough.
> >
> > This CL also switches the tests from using ISAC to OPUS as RampUpTest.UpDownUpAudioVideoTransportSequenceNumberRtx relies on audio BWE to work (which is only compatible with OPUS). I don't know why it didn't fail before.
> >
> > BUG=webrtc:7178
> >
> > Review-Url: https://codereview.webrtc.org/2705603002
> > Cr-Commit-Position: refs/heads/master@{#16739}
> > Committed: a518a39963
>
> TBR=mflodman@webrtc.org,terelius@webrtc.org,stefan@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7178
>
> Review-Url: https://codereview.webrtc.org/2703393002
> Cr-Commit-Position: refs/heads/master@{#16751}
> Committed: b80bdcafed

TBR=mflodman@webrtc.org,terelius@webrtc.org,stefan@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7178

Review-Url: https://codereview.webrtc.org/2704323003
Cr-Commit-Position: refs/heads/master@{#16753}
2017-02-21 15:28:31 +00:00
philipel
b80bdcafed Revert of Fixes a bug where a video stream can get stuck in the suspended state. (patchset #8 id:120001 of https://codereview.webrtc.org/2705603002/ )
Reason for revert:
Breaks downstream

Original issue's description:
> Fixes a bug where a video stream can get stuck in the suspended state.
>
> This happens if a lot of FEC is allocated when the stream becomes suspended. The required bitrate to unsuspend can then be too high so that the padding bitrate we are allowed to generate is not enough.
>
> This CL also switches the tests from using ISAC to OPUS as RampUpTest.UpDownUpAudioVideoTransportSequenceNumberRtx relies on audio BWE to work (which is only compatible with OPUS). I don't know why it didn't fail before.
>
> BUG=webrtc:7178
>
> Review-Url: https://codereview.webrtc.org/2705603002
> Cr-Commit-Position: refs/heads/master@{#16739}
> Committed: a518a39963

TBR=mflodman@webrtc.org,terelius@webrtc.org,stefan@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7178

Review-Url: https://codereview.webrtc.org/2703393002
Cr-Commit-Position: refs/heads/master@{#16751}
2017-02-21 14:52:26 +00:00
nisse
657bab2455 Replace AudioReceiveStream::DeliverRtp with OnRtpPacket.
This avoids redoing RTP header parsing already done in Call.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2697833002
Cr-Commit-Position: refs/heads/master@{#16750}
2017-02-21 14:28:10 +00:00
ilnik
5328b9eb32 added WebRTC-QuickPerfTest to RampUpTests and CallPerfTests
BUG=webrtc:7153

Review-Url: https://codereview.webrtc.org/2708723002
Cr-Commit-Position: refs/heads/master@{#16743}
2017-02-21 13:20:28 +00:00
stefan
a518a39963 Fixes a bug where a video stream can get stuck in the suspended state.
This happens if a lot of FEC is allocated when the stream becomes suspended. The required bitrate to unsuspend can then be too high so that the padding bitrate we are allowed to generate is not enough.

This CL also switches the tests from using ISAC to OPUS as RampUpTest.UpDownUpAudioVideoTransportSequenceNumberRtx relies on audio BWE to work (which is only compatible with OPUS). I don't know why it didn't fail before.

BUG=webrtc:7178

Review-Url: https://codereview.webrtc.org/2705603002
Cr-Commit-Position: refs/heads/master@{#16739}
2017-02-21 12:12:23 +00:00
nisse
5c29a7aad1 Rename flexfec AddAndProcessReceivedPacket --> OnRtpPacket.
Preparing for a media-independent RTP receive stream interface.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2686273002
Cr-Commit-Position: refs/heads/master@{#16646}
2017-02-16 14:52:32 +00:00
nisse
38cc1d6b31 Replace RtpStreamReceiver::DeliverRtp with OnRtpPacket.
This avoids redoing RTP header parsing already done in Call, for video.

The next step is to convert other types of receive streams, i.e.,
audio and flexfec, to use a compatible OnRtpPacket method. We can then
introduce a shared base interface, and simplify media-independent
receive processing in Call.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2681673004
Cr-Commit-Position: refs/heads/master@{#16583}
2017-02-13 13:59:46 +00:00