A bug has been reported to complaint the ScreenCapturerWinDirectx cannot capture
the first frame, which is used in "Report an issue" page.
A simple solution here is to skip the first frame.
This change also removes the friend relationship between
DxgiDuplicatorController / DxgiAdapterDuplicator / DxgiOutputDuplicator, which
is not really necessary.
BUG=682112
Review-Url: https://codereview.webrtc.org/2703123002
Cr-Commit-Position: refs/heads/master@{#16815}
The documentation for AsyncInvoker states that it owns the lifetime of
calls, and when its destructor is called, all in-flight calls are
cancelled or finish executing. The "cancelled" part is working, but if
a call is in the middle of executing, the destructor does *not* wait.
This is fixed by keeping a count of pending invocations, which is
decremented when a call is either cleared from a message queue or
finishes executing.
BUG=webrtc:3914, webrtc:3911
Review-Url: https://codereview.webrtc.org/2694723004
Cr-Commit-Position: refs/heads/master@{#16811}
This is a short term solution to change the volume of a RTCAudioTrack (which contains an RTCAudioSource property) until applyConstraints for RTCMediaStreamTracks has been implemented.
This CL adds one new Objective-C method to AudioSourceInterface's wrapper: -(void)setVolume:(double)volume
BUG=webrtc:6533, webrtc:6805
This is my first CL for Chromium/WebRTC, so please let me know if I did something wrong.
Review-Url: https://codereview.webrtc.org/2534843002
Cr-Commit-Position: refs/heads/master@{#16809}
When textures are not enabled and we are using byte buffer outputs, the
decoder is currently crashing for odd heights because of an RTC_CHECK.
This CL removes the check and handles the pointer offset to the chroma
planes for the odd height case instead.
This has been verified to work correctly on a Pixel device.
BUG=webrtc:6651
Review-Url: https://codereview.webrtc.org/2709923005
Cr-Commit-Position: refs/heads/master@{#16805}
Explicit initialization of const member of new EchoCanceller 3
submodule.
NOTRY=True
BUG=webrtc:6018
Review-Url: https://codereview.webrtc.org/2715573003
Cr-Commit-Position: refs/heads/master@{#16802}
calculating frame sizes. Added actual_bitrate metric which also accounts
for TL and SL info. Metric encoded_frame_size calculation is cleaned up. Perf alerts should be ignored.
BUG=webrtc:7095
Review-Url: https://codereview.webrtc.org/2709483009
Cr-Commit-Position: refs/heads/master@{#16800}
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}
In order to not make this CL too large I have broken it down into at least two
steps. Previous CL: https://codereview.chromium.org/2628563003/
webrtc::PacedSender::Process <--- previous CL start here
webrtc::PacedSender::SendPacket
webrtc::PacketRouter::TimeToSendPacket
webrtc::ModuleRtpRtcpImpl::TimeToSendPacket <--- previous CL end here, this Cl start here
webrtc::RTPSender::TimeToSendPacket
webrtc::RTPSender::PrepareAndSendPacket
webrtc::RTPSender::AddPacketToTransportFeedback
webrtc::TransportFeedbackAdapter::AddPacket
webrtc::SendTimeHistory::AddAndRemoveOld <--- this CL end here
BUG=webrtc:6822
Review-Url: https://codereview.webrtc.org/2708873003
Cr-Commit-Position: refs/heads/master@{#16796}
Also adds a basic unit test for VP9 implementation.
BUG=webrtc:6541
Review-Url: https://codereview.webrtc.org/2654813002
Cr-Commit-Position: refs/heads/master@{#16795}
This CL harmonizes and improves the naming of the config structs
in the VideoProcessor tests. It should have no functional implications.
CodecConfigPars -> CodecParams:
This struct mainly contains codec settings.
QualityMetrics -> QualityThresholds:
This struct contains thresholds against which the calculated
PSNR and SSIM metrics are compared to.
RateControlMetrics -> RateControlThresholds:
This struct contains thresholds against which the calculated
rate control metrics are compared to.
BUG=webrtc:6634
Review-Url: https://codereview.webrtc.org/2703333004
Cr-Commit-Position: refs/heads/master@{#16794}
After this change, all calls to MediaCodecVideoEncoder must be made on
the same task queue. Removes OnCodecThread suffix from methods since it
is no longer meaningful.
BUG=webrtc:6290
Review-Url: https://codereview.webrtc.org/2669093004
Cr-Commit-Position: refs/heads/master@{#16792}
The average QP of encoded frames is printed in Stats::PrintSummary.
plot_webrtc_test_logs.py: Add QP to plots.
BUG=webrtc:6634
Review-Url: https://codereview.webrtc.org/2709613005
Cr-Commit-Position: refs/heads/master@{#16790}
Reason for revert:
Reverting due to breakage in the Google3 import
Original issue's description:
> Add metal view, shaders and renderer.
>
> This CL submits standalone Metal view, renderer and shader.
>
> BUG=webrtc:7079
>
> Review-Url: https://codereview.webrtc.org/2651743007
> Cr-Commit-Position: refs/heads/master@{#16787}
> Committed: fc8c97f950TBR=magjed@webrtc.org,kthelgason@webrtc.org,tkchin@webrtc.org,haysc@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7079
Review-Url: https://codereview.webrtc.org/2711003004
Cr-Commit-Position: refs/heads/master@{#16788}
This CL submits standalone Metal view, renderer and shader.
BUG=webrtc:7079
Review-Url: https://codereview.webrtc.org/2651743007
Cr-Commit-Position: refs/heads/master@{#16787}
Where "TRANSPORT attributes" refers to:
https://tools.ietf.org/html/draft-ietf-mmusic-sdp-mux-attributes-16
The BUNDLE draft now says that these attributes can
(in fact, MUST) be omitted when m= sections are bundled
(they only need to go in one of the bundled m= sections),
so we should start accepting that SDP.
This CL doesn't fix "a=rtcp-mux", unfortunately. That will be easier
to fix once we've split apart an "RtpTransport" object from
BaseChannel.
BUG=webrtc:6351
Review-Url: https://codereview.webrtc.org/2647593003
Cr-Commit-Position: refs/heads/master@{#16782}
This is a trivial change to remove duplicate logic, i.e. fallback capturer, from
ScreenCapturerWinMagnifier.
BUG=webrtc:7215
Review-Url: https://codereview.webrtc.org/2704943002
Cr-Commit-Position: refs/heads/master@{#16781}
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}
This CL fixes issue 7211 as well as adding a test that would have
caught the issue.
BUG=webrtc:7211,webrtc:6850,b/35471214
R=sprang@webrtc.org
TBR=kthelgason, sprang
Review-Url: https://codereview.webrtc.org/2713683002 .
Cr-Commit-Position: refs/heads/master@{#16778}
Reason for revert:
Necessary calls were "protected" by RTC_DCHECKs, that were optimized away in some release builds.
Replacing the RTC_DCHECKs with EXPECTs.
Original issue's description:
> Revert of Add optional visualization file writers to VideoProcessor tests. (patchset #4 id:220001 of https://codereview.webrtc.org/2700493006/ )
>
> Reason for revert:
> Breaks downstream project.
>
> Original issue's description:
> > Add optional visualization file writers to VideoProcessor tests.
> >
> > The purpose of this visualization CL is to add the ability to record
> > video at the source, after encode, and after decode, in the VideoProcessor
> > tests. These output files can then be replayed and used as a subjective
> > complement to the objective metric plots given by the existing Python
> > plotting script.
> >
> > BUG=webrtc:6634
> >
> > Review-Url: https://codereview.webrtc.org/2700493006
> > Cr-Commit-Position: refs/heads/master@{#16738}
> > Committed: 872104ac41
>
> TBR=asapersson@webrtc.org,sprang@webrtc.org,kjellander@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:6634
>
> Review-Url: https://codereview.webrtc.org/2708103002
> Cr-Commit-Position: refs/heads/master@{#16745}
> Committed: 2a8135a174TBR=asapersson@webrtc.org,sprang@webrtc.org,kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
BUG=webrtc:6634
Review-Url: https://codereview.webrtc.org/2706123003
Cr-Commit-Position: refs/heads/master@{#16769}
In the metrics.h documentation the target to include a default
implementation of metrics was referring to the previous build system
(gyp). Now it is updated to refer to the current target.
BUG=None
NOTRY=True
TBR=henrika@webrtc.org
Review-Url: https://codereview.webrtc.org/2699093002
Cr-Commit-Position: refs/heads/master@{#16766}
Update the year in copyright headers from 2016 to 2017, and also rename a
variable in FallbackDesktopCapturerWrapperTest to follow coding style.
BUG=webrtc:7205
Review-Url: https://codereview.webrtc.org/2706193005
Cr-Commit-Position: refs/heads/master@{#16759}
plot_webrtc_test_logs.py: Add number of used cores to figure title.
BUG=webrtc:6634
Review-Url: https://codereview.webrtc.org/2706753005
Cr-Commit-Position: refs/heads/master@{#16756}
AudioMixerImpl::CreateWithOutputRateCalculatorAndLimiter(rate_calculator, bool limiter)
was added to create a mixer without the limiter subcomponent. Calling
it "Create with ... *and* limiter" is counterintuitive.
Renamed to simply 'Create'.
TBR=solenberg@webrtc.org
BUG=webrtc:7167
Review-Url: https://codereview.webrtc.org/2709523006
Cr-Commit-Position: refs/heads/master@{#16755}
This cl protects the access to the max_packet_size_, without fixing
the underlying race; the value is simply copied to a local variable,
whose value might be stale when used.
BUG=webrtc:7189
Review-Url: https://codereview.webrtc.org/2704263003
Cr-Commit-Position: refs/heads/master@{#16754}
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: b80bdcafedTBR=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}
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: a518a39963TBR=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}
It's annoying to have to re-implement this every time I need a debug
printout.
Declared inline, so that there'll be zero runtime overhead.
This CL also modifies a unit test so that it will make use of the new
operator<< in case it finds errors.
BUG=none
Review-Url: https://codereview.webrtc.org/2705203002
Cr-Commit-Position: refs/heads/master@{#16749}
by creating it on accepted tmmbr/tmmbn rtcp messages
rather on sender/receiver reports.
BUG=webrtc:5565
Review-Url: https://codereview.webrtc.org/2702373002
Cr-Commit-Position: refs/heads/master@{#16748}
Adds a public init function in RTCVideoFrame that makes it possible to
create a frame from a CVPixelBufferRef.
BUG=webrtc:7177
NOTRY=True
Review-Url: https://codereview.webrtc.org/2700113003
Cr-Commit-Position: refs/heads/master@{#16746}
Reason for revert:
Breaks downstream project.
Original issue's description:
> Add optional visualization file writers to VideoProcessor tests.
>
> The purpose of this visualization CL is to add the ability to record
> video at the source, after encode, and after decode, in the VideoProcessor
> tests. These output files can then be replayed and used as a subjective
> complement to the objective metric plots given by the existing Python
> plotting script.
>
> BUG=webrtc:6634
>
> Review-Url: https://codereview.webrtc.org/2700493006
> Cr-Commit-Position: refs/heads/master@{#16738}
> Committed: 872104ac41TBR=asapersson@webrtc.org,sprang@webrtc.org,kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6634
Review-Url: https://codereview.webrtc.org/2708103002
Cr-Commit-Position: refs/heads/master@{#16745}