As specified in RFC 4288, Section 4.2, and RFC 4855, Section 3, these
names should be case-insensitive. They already were being treated as
case-insensitive in some other places.
This bug was resulting in either a crash or no decoded video, depending
on the platform.
BUG=webrtc:6439, webrtc:7027
Review-Url: https://codereview.webrtc.org/2782273002
Cr-Commit-Position: refs/heads/master@{#17515}
BUG=webrtc:5881
# Because PRESUBMIT ignores LINT blacklist for moved files and these
# headers have some not easy to resolve issues.
NOPRESUBMIT=True
Review-Url: https://codereview.webrtc.org/2780943003
Cr-Commit-Position: refs/heads/master@{#17511}
This is in preparation for merging the ViERemb logic in packet_router,
to send REMB feedback as sender reports if possible, otherwise as
receiver reports.
BUG=webrtc:7135
Review-Url: https://codereview.webrtc.org/2774623006
Cr-Commit-Position: refs/heads/master@{#17489}
WebRTC.Video.QualityLimitedResolutionInPercent is reported as zero for calls when the quality scaler is off (and the degradation preference allows scaling).
Update SetResolutionRestrictionStats to specify if quality scaler is enabled.
BUG=webrtc:7432
Review-Url: https://codereview.webrtc.org/2783213002
Cr-Commit-Position: refs/heads/master@{#17487}
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}
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}
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}
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}
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: 9c47b00e24TBR=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}
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}
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}
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}
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}
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}
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}
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}
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}
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}
- 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}
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}
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: ca37cf6691TBR=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}
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}
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}
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: 2549ad4fefTBR=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}
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}
* 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}
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}
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}