Commit Graph

5906 Commits

Author SHA1 Message Date
1bf0ff36ea Roll chromium_revision f156b499f7..f439921f66 (493756:494089)
Change log: f156b499f7..f439921f66
Full diff: f156b499f7..f439921f66

Changed dependencies:
* src/base: c9ab1936b1..feac46e933
* src/build: 5fecec2d69..221820676e
* src/ios: bf72566bf8..e437e37fec
* src/testing: 1330967db2..3f5325f618
* src/third_party: 0a591a99a3..058ff821a8
* src/third_party/catapult: 0eeb5baed7..122dd5e91b
* src/tools: 3136678749..e78bdaf8db
DEPS diff: f156b499f7..f439921f66/DEPS

Clang version changed 309984:310694
Details: f156b499f7..f439921f66/tools/clang/scripts/update.py

TBR=
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Review-Url: https://codereview.webrtc.org/3001673002
Cr-Commit-Position: refs/heads/master@{#19350}
2017-08-15 10:16:50 +00:00
53d76c6190 Almost full implementation of BBR's core, missing receiver side implementation, pacer, and BitrateObserver class which is responsible for communication between BBR and pacer/encoder. Significant changes: Recovery mode and a separate bucket for the high gain phase.
BUG=webrtc:7713

Review-Url: https://codereview.webrtc.org/2990163002
Cr-Commit-Position: refs/heads/master@{#19349}
2017-08-15 09:26:22 +00:00
7d829525aa Change OpenSLES blacklist warning to debug.
Given the current state of OpenSLES (disabled in many places), making
this a debug line makes more sense than an error.

BUG=none

Change-Id: I16d46d3f8234ebeffe820d92e7a6d7ed3eae11cd
Reviewed-on: https://chromium-review.googlesource.com/611491
Commit-Queue: Henrik Andreasson <henrika@webrtc.org>
Reviewed-by: Henrik Andreasson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19340}
2017-08-14 15:39:44 +00:00
64136af364 Revert of Add functionality which limits the number of bytes on the network. (patchset #26 id:500001 of https://codereview.webrtc.org/2918323002/ )
Reason for revert:
Speculative revert to see if this caused regressions in android perf tests.

Original issue's description:
> Add functionality which limits the number of bytes on the network.
>
> The limit is based on the bandwidth delay product, but also adds some additional slack to compensate for the sawtooth-like BWE pattern and the slowness of the encoder rate control. The delay is estimated based on the time from sending a packet until an ack is received. Since acks are received in bursts (feedback is only sent periodically), a min filter is used to estimate the rtt.
>
> Whenever the in flight bytes reaches the congestion window, the pacer is paused, which in turn will result in send-side queues growing. Eventually the encoders will be paused as the pacer queue grows large (currently 2 seconds).
>
> BUG=webrtc:7926
>
> Review-Url: https://codereview.webrtc.org/2918323002
> Cr-Commit-Position: refs/heads/master@{#19289}
> Committed: 8497fdde43

TBR=terelius@webrtc.org,philipel@webrtc.org,tschumim@webrtc.org,gnish@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7926

Review-Url: https://codereview.webrtc.org/3001653002
Cr-Commit-Position: refs/heads/master@{#19339}
2017-08-14 15:03:17 +00:00
5d6891000f Don't use rvalue reference function arguments in the audio coding module
Rvalue reference arguments are generally banned by the style guide.

Bug: None
Change-Id: I4314859623ffcf056f53c42087b59696b5e71690
Reviewed-on: https://chromium-review.googlesource.com/531028
Commit-Queue: Minyue Li <minyue@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Michael T <tschumim@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19338}
2017-08-14 14:10:14 +00:00
c5d9e63c2b Revert of Make the acceptable queue in the cwnd experiment configurable. (patchset #1 id:1 of https://codereview.webrtc.org/2998753002/ )
Reason for revert:
Speculative revert to see if this caused regressions in android perf tests.

Original issue's description:
> Make the acceptable queue in the cwnd experiment configurable.
>
> BUG=webrtc:7926
>
> Review-Url: https://codereview.webrtc.org/2998753002
> Cr-Commit-Position: refs/heads/master@{#19320}
> Committed: 7c83c56b6d

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

Review-Url: https://codereview.webrtc.org/2999893002
Cr-Commit-Position: refs/heads/master@{#19337}
2017-08-14 12:54:58 +00:00
ec86be0962 Reduce locking when collecting receive statistic
BUG=None

Review-Url: https://codereview.webrtc.org/2997803002
Cr-Commit-Position: refs/heads/master@{#19336}
2017-08-14 12:51:02 +00:00
dc5fc82c62 Remove older AEC-dump interface.
This CL completely removes the methods
AudioProcessing::{Start,Stop}DebugDumpRecording. These methods have
been replaced with AudioProcessing::{Attach,Detach}AecDump. Their
implementation was removed in the parent CL
https://chromium-review.googlesource.com/c/589147

Bug: webrtc:7404
Change-Id: Ia3d5314985af9c74f79c94c514ded1f8afc78fb5
Reviewed-on: https://chromium-review.googlesource.com/589152
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19334}
2017-08-14 10:35:40 +00:00
7731bc829c Remove older AEC-dump implementation.
AudioProcessingModule has a feature to make a recording of its
configuration, inputs and outputs over a period of time. In the past
CLs, this feature has been rewritten to move file IO away from
real-time audio threads. The interface has changed from
{Start,Stop}DebugDumpRecording to {Attach,Detach}AecDump.

This CL removes the previous implementation of the old interface
StartDebugRecording. The public interface is left to not cause
problems to downstream projects. It will be removed in the dependent
CL https://chromium-review.googlesource.com/c/589152/

With this CL, usage of WEBRTC_AUDIOPROC_DEBUG_DUMP and ~300 LOC of
logging code is removed from AudioProcessingImpl.

Bug: webrtc:7404
Change-Id: I16e7b557774e4bc997e1f5de4f97ed2c31d63879
Reviewed-on: https://chromium-review.googlesource.com/589147
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19332}
2017-08-14 08:46:30 +00:00
deac84107f Rename SetProcessParams -> SetTestConfig.
Also remove |key_frame_interval| from argument list, since it is always
set to -1.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2999643002
Cr-Commit-Position: refs/heads/master@{#19331}
2017-08-14 08:29:18 +00:00
ef8eb8c10d Reorganize code in plot_videoprocessor_integrationtest.cc.
* Don't loop over fps, but do loop over codec implementation type.
* Order codec settings as they are defined in the test.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/3000613002
Cr-Commit-Position: refs/heads/master@{#19330}
2017-08-14 08:06:16 +00:00
0bc8423fe5 Move RtcpReportBlocks implementation from ReceiveStatistics to ReceiveStatisticsImpl
BUG=webrtc:8016

Review-Url: https://codereview.webrtc.org/2997783002
Cr-Commit-Position: refs/heads/master@{#19327}
2017-08-11 15:12:54 +00:00
77920a415b Minor improvements to VideoProcessorIntegrationTest.
* Create all encoders/decoders using factories.
* Add ::Release() method, to mirror the existing ::Init().
* Remove unnecessary ::test prefixes.
* Reorganize constants and members.
* Remove extraneous packet loss rate assignments.
* Remove members |start_frame_rate_| and |num_temporal_layers_|.
* Explicitly give ::SetUpObjects(.) access to initial rates.
* Change visualization output file names.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2999613002
Cr-Commit-Position: refs/heads/master@{#19326}
2017-08-11 14:48:15 +00:00
628ac5964e Reland of quest keyframes more frequently on stream start/decoding error. (patchset #1 id:1 of https://codereview.chromium.org/2994043002/ )
Reason for revert:
Create fix CL.

Original issue's description:
> Revert of Request keyframes more frequently on stream start/decoding error. (patchset #1 id:1 of https://codereview.webrtc.org/2993793002/ )
>
> Reason for revert:
> Broke downstream test that was waiting for 5 keyframes to be received within 10 seconds. Maybe the issue is that "stats_callback_->OnCompleteFrame(frame->num_references == 0, ..." was changed to "frame->is_keyframe()"?
>
> Original issue's description:
> > Request keyframes more frequently on stream start/decoding error.
> >
> > In this CL:
> >  - Added FrameObject::is_keyframe() convinience function.
> >  - Moved logic to request keyframes on decoding error from VideoReceived to
> >    VideoReceiveStream.
> >  - Added keyframe_required as a parameter to FrameBuffer::NextFrame.
> >
> > BUG=webrtc:8074
> >
> > Review-Url: https://codereview.webrtc.org/2993793002
> > Cr-Commit-Position: refs/heads/master@{#19280}
> > Committed: 26b4804358
>
> TBR=terelius@webrtc.org,stefan@webrtc.org,noahric@chromium.org,philipel@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:8074
>
> Review-Url: https://codereview.webrtc.org/2994043002
> Cr-Commit-Position: refs/heads/master@{#19295}
> Committed: 77a983185f

TBR=terelius@webrtc.org,stefan@webrtc.org,noahric@chromium.org,deadbeef@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
BUG=webrtc:8074

Review-Url: https://codereview.webrtc.org/2996823002
Cr-Commit-Position: refs/heads/master@{#19324}
2017-08-11 10:41:44 +00:00
7c83c56b6d Make the acceptable queue in the cwnd experiment configurable.
BUG=webrtc:7926

Review-Url: https://codereview.webrtc.org/2998753002
Cr-Commit-Position: refs/heads/master@{#19320}
2017-08-11 08:23:54 +00:00
ad501d1988 Implement GetWindowList() on X11
This change implements GetWindowList() on X11. WindowCapturerLinux and
GetWindowUnderPoint() can share the logic of this function.

Bug: webrtc:7950
Change-Id: Ida746840d6f51d31e0470e5ae4955b6f5a4cfaf2
Reviewed-on: https://chromium-review.googlesource.com/606560
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Zijie He <zijiehe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19314}
2017-08-11 01:00:40 +00:00
4708537f0d Add PacketRouter::SetMaxDesiredReceiveBitrate for application limited receive bandwidth
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2994513002
Cr-Commit-Position: refs/heads/master@{#19307}
2017-08-10 13:03:57 +00:00
351424e942 Removing VCMCodecDataBase::Codec and VideoCodingModule::Codec.
This CL brings us one step closer to removing CodecDatabase and
GenericEncoder, by removing the static VCM::Codec(). Codec specific
methods are moved to video_encoder.cc (they already belonged to this
class) and getting default generic codec settings has been moved to a
test specific file.

This CL also makes video_encoder.h pass style guide and lint checks,
since these checks are triggered with the new video_encoder.cc file.

BUG=webrtc:8064

Review-Url: https://codereview.webrtc.org/2993923002
Cr-Commit-Position: refs/heads/master@{#19303}
2017-08-10 09:43:14 +00:00
e5d02f9204 vp8_impl.cc: Make it possible to base postproc deblocking level for arm on qp (e.g. turn off deblocking for low qp values).
BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2970923002
Cr-Commit-Position: refs/heads/master@{#19300}
2017-08-10 06:37:05 +00:00
ee89e7870c Replace CHECK(x && y) with two separate CHECK() calls
That way, the debug printout will tell us which of x and y that was false.

BUG=none

Review-Url: https://codereview.webrtc.org/2988153003
Cr-Commit-Position: refs/heads/master@{#19297}
2017-08-10 00:22:01 +00:00
77a983185f Revert of Request keyframes more frequently on stream start/decoding error. (patchset #1 id:1 of https://codereview.webrtc.org/2993793002/ )
Reason for revert:
Broke downstream test that was waiting for 5 keyframes to be received within 10 seconds. Maybe the issue is that "stats_callback_->OnCompleteFrame(frame->num_references == 0, ..." was changed to "frame->is_keyframe()"?

Original issue's description:
> Request keyframes more frequently on stream start/decoding error.
>
> In this CL:
>  - Added FrameObject::is_keyframe() convinience function.
>  - Moved logic to request keyframes on decoding error from VideoReceived to
>    VideoReceiveStream.
>  - Added keyframe_required as a parameter to FrameBuffer::NextFrame.
>
> BUG=webrtc:8074
>
> Review-Url: https://codereview.webrtc.org/2993793002
> Cr-Commit-Position: refs/heads/master@{#19280}
> Committed: 26b4804358

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

Review-Url: https://codereview.webrtc.org/2994043002
Cr-Commit-Position: refs/heads/master@{#19295}
2017-08-09 22:55:41 +00:00
452ea0d4d9 Workaround VC++ 2017 template bug
When compiling webrtc's call.cc with VC++ 2017 (is_clang = false) the
following compile error occurs:

sequence_number_util.h(90): error C2672: 'rtc::SafeLt': no matching
overloaded function found
note: see reference to class template instantiation
'webrtc::SeqNumUnwrapper<T,M>' being compiled

This error is not associated with any particular instantiation of
SeqNumUnwrapper (there isn't one) and this undefined nature of 'T' seems
to be what confuses the compiler. When it tries to locate SafeLt for an
undefined type 'T' it gets confused.

SafeLt is unnecessary in this context and changing it to use the '<'
operator directly avoids the problem.

The bug has been reported to Microsoft.

BUG=chromium:753488

Review-Url: https://codereview.webrtc.org/2997623002
Cr-Commit-Position: refs/heads/master@{#19292}
2017-08-09 17:00:11 +00:00
8497fdde43 Add functionality which limits the number of bytes on the network.
The limit is based on the bandwidth delay product, but also adds some additional slack to compensate for the sawtooth-like BWE pattern and the slowness of the encoder rate control. The delay is estimated based on the time from sending a packet until an ack is received. Since acks are received in bursts (feedback is only sent periodically), a min filter is used to estimate the rtt.

Whenever the in flight bytes reaches the congestion window, the pacer is paused, which in turn will result in send-side queues growing. Eventually the encoders will be paused as the pacer queue grows large (currently 2 seconds).

BUG=webrtc:7926

Review-Url: https://codereview.webrtc.org/2918323002
Cr-Commit-Position: refs/heads/master@{#19289}
2017-08-09 14:17:33 +00:00
3e69e5c2c0 Renamed fields in rtp_rtcp_defines.h/RTCPReportBlock
Continues on https://codereview.webrtc.org/2992043002

BUG=webrtc:8033

Review-Url: https://codereview.webrtc.org/2994633002
Cr-Commit-Position: refs/heads/master@{#19286}
2017-08-09 13:13:45 +00:00
f1e08d0b58 Fix the video buffer size should take rtt into consideration
BUG=webrtc:8010

Review-Url: https://codereview.webrtc.org/2980413002
Cr-Commit-Position: refs/heads/master@{#19285}
2017-08-09 12:43:08 +00:00
eb94436b38 Modify VP8 RTP to always use 2 bytes for picture Id
Bug: webrtc:7877
Change-Id: Ic40a7e142918399d05d02e8858313fe9b62d042b
Reviewed-on: https://chromium-review.googlesource.com/596967
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19282}
2017-08-09 11:17:48 +00:00
26b4804358 Request keyframes more frequently on stream start/decoding error.
In this CL:
 - Added FrameObject::is_keyframe() convinience function.
 - Moved logic to request keyframes on decoding error from VideoReceived to
   VideoReceiveStream.
 - Added keyframe_required as a parameter to FrameBuffer::NextFrame.

BUG=webrtc:8074

Review-Url: https://codereview.webrtc.org/2993793002
Cr-Commit-Position: refs/heads/master@{#19280}
2017-08-09 10:33:59 +00:00
b2b803cb74 desktopCapture: minimized window shouldn't be treated as on-top on Win10
During window capture on Windows 10, if the selected window is minimized,
ShouldUseScreenCapturer() still thinks it's on top and continue to do a
screencapture which is meaningless.
This cl will set |.is_top_window| with false to minimized window,then we
can skip doing any capture to it.

BUG=chromium:568835

Review-Url: https://codereview.webrtc.org/2997493002
Cr-Commit-Position: refs/heads/master@{#19276}
2017-08-08 20:30:01 +00:00
26622d3ff8 Audit of kConstants missing the const qualifier
Found via supersize query:
size_info.symbols.WhereFullNameMatches(r'\bk[A-Z]').WhereInSection('d')

This moves 90 symbols from .data -> .data.rel.ro (5.50kb)

BUG=chromium:747064

Review-Url: https://codereview.webrtc.org/2986163002
Cr-Commit-Position: refs/heads/master@{#19274}
2017-08-08 17:48:15 +00:00
f50fda9534 Ignore invalid mouse cursor image
A crash has been randomly detected across different versions. The NSImage
crashes the binary in its lockFocusFlipped() function. The suspicious issue is
that NSCursor::image() returns an invalid NSImage.

BUG=chromium:752036

Review-Url: https://codereview.webrtc.org/2993173003
Cr-Commit-Position: refs/heads/master@{#19273}
2017-08-08 17:35:11 +00:00
07734a5995 Move ownership of webrtc::VideoCodec into TestConfig.
BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2995603002
Cr-Commit-Position: refs/heads/master@{#19271}
2017-08-08 15:35:53 +00:00
d7a418f93a Add an experiment for stricter pacing and ALR probing.
BUG=webrtc:8072

Review-Url: https://codereview.webrtc.org/2994623002
Cr-Commit-Position: refs/heads/master@{#19270}
2017-08-08 13:51:05 +00:00
bb992e7159 Remove temporary VP9 pid/tl0 jump fix.
Earlier the pid/tl0 was incorrectly reinitialized upon encoder reconfiguration,
and this fix was implemented to mitigate that. This fix can however guess wrong
and cause a valid stream to be interupted.

BUG=webrtc:7920

Review-Url: https://codereview.webrtc.org/2969043002
Cr-Commit-Position: refs/heads/master@{#19268}
2017-08-08 13:18:56 +00:00
b010a3242b Implement WindowUnderPoint() for Mac OSX and Windows
WindowUnderPoint() is a platform independent function to return the id of the
first window in z-order under a certain DesktopVector. It equals to
GetAncestor(WindowFromPoint(point), GA_ROOT)
on Windows.

This CL includes the change to Windows / Mac OSX only to control the size in a
reasonable range. Implementation for Linux will be added in a coming change.

Bug: webrtc:7950
Change-Id: I57e423294fc8aeaa12d05cb626a1912240b2d4d0
Reviewed-on: https://chromium-review.googlesource.com/595022
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19263}
2017-08-08 01:30:38 +00:00
c287c80781 Remove source file writer from VideoProcessor.
It serves a very limited purpose: converting from the input YUV
file to an output Y4M file. The experimenter can do this manually,
if this is of interest. (It is generally not.)

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2993063002
Cr-Commit-Position: refs/heads/master@{#19257}
2017-08-07 15:30:43 +00:00
c409552052 Remove VideoProcessor interface.
BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2994613002
Cr-Commit-Position: refs/heads/master@{#19256}
2017-08-07 15:12:33 +00:00
73c0eb5014 ObjC: Implement HW codecs in ObjC instead of C++
The current ObjC HW encoder is implemented as a C++
webrtc::VideoEncoder. We then wrap it two times in the following way:
webrtc::VideoEncoder -> RTCVideoEncoder -> webrtc::VideoEncoder.
This was originally done to minimize the code diff when landing the
injectable encoder.

This CL removes the first wrapping and implements the ObjC HW encoder
as a RTCVideoEncoder directly. Similarly, the decoder is implemented
as a RTCVideoDecoder directly.

Based on andersc@ CL: https://codereview.webrtc.org/2978623002/.

BUG=webrtc:7924

Review-Url: https://codereview.webrtc.org/2987413002
Cr-Commit-Position: refs/heads/master@{#19255}
2017-08-07 13:55:28 +00:00
bea36fdee8 Minor improvements to VideoProcessor and corresponding test.
- Make all overridden methods of VideoProcessorImpl public,
  in preparation of the removal of the VideoProcessor interface.
- Place corresponding method definitions in correct order
  in .cc file.
- Harmonize the stdout printing.
- Make timestamp calculations adhere to set frame rate.

Except for the last bullet, these changes should not lead to
different functionality.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2995513002
Cr-Commit-Position: refs/heads/master@{#19254}
2017-08-07 10:36:54 +00:00
669ea1917e Rename WEBRTC_VIDEOPROCESSOR_H264_TESTS define to WEBRTC_USE_H264.
This is the name used in other parts of the code.

BUG=none

Review-Url: https://codereview.webrtc.org/2996463003
Cr-Commit-Position: refs/heads/master@{#19253}
2017-08-07 10:35:13 +00:00
60dfbdbf75 Remove unused members in MediaOptimization.
BUG=none

Review-Url: https://codereview.webrtc.org/2993703002
Cr-Commit-Position: refs/heads/master@{#19252}
2017-08-07 07:03:03 +00:00
227f8b9be8 Reland of Fix off-by-one bugs in video_coding::PacketBuffer when the buffer is filled with a single frame. (patchset #1 id:1 of https://codereview.chromium.org/2990183002/ )
Reason for revert:
Revert to create fix CL.

Original issue's description:
> Revert of Fix off-by-one bugs in video_coding::PacketBuffer when the buffer is filled with a single frame. (patchset #5 id:80001 of https://codereview.chromium.org/2993513002/ )
>
> Reason for revert:
> Break performance bots.
>
> Original issue's description:
> > Fix off-by-one bugs in video_coding::PacketBuffer when the buffer is filled with a single frame.
> >
> > BUG=webrtc:8028
> >
> > Review-Url: https://codereview.webrtc.org/2993513002
> > Cr-Commit-Position: refs/heads/master@{#19209}
> > Committed: ee13e8919c
>
> TBR=stefan@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:8028
>
> Review-Url: https://codereview.webrtc.org/2990183002
> Cr-Commit-Position: refs/heads/master@{#19211}
> Committed: c18f1d7c94

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

Review-Url: https://codereview.webrtc.org/2989313003
Cr-Commit-Position: refs/heads/master@{#19249}
2017-08-04 13:39:31 +00:00
186d9c3873 Renamed fields in common_types.h/RtcpStatistics.
BUG=webrtc:8033

Review-Url: https://codereview.webrtc.org/2992043002
Cr-Commit-Position: refs/heads/master@{#19247}
2017-08-04 12:03:53 +00:00
463d7ccb36 Remove video_coding/codecs/OWNERS.
video_coding/OWNERS/ should be enough.

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

Review-Url: https://codereview.webrtc.org/2992283002 .
Cr-Commit-Position: refs/heads/master@{#19246}
2017-08-04 10:58:25 +00:00
5166e54a3d Tracking mock_process_thread with a GN target
include/mock/mock_process_thread.h was not tracked by GN.

This cl creates a target for it. The target is testonly because it
depends on "webrtc/test:rtp_test_utils".

This means that dependencies to this header cannot fly under the
GN radar anymore. :)

BUG=webrtc:7652
NOTRY=True

Review-Url: https://codereview.webrtc.org/2881343003
Cr-Commit-Position: refs/heads/master@{#19234}
2017-08-03 12:57:11 +00:00
1d0bdc296b Revert "Track recreation of DxgiTextureStaging"
This reverts commit ae1532a214bb949b3e2b0659293b5f6bab104598.

Reason for revert: It is blocking the WebRTC roll into Chromium (see: https://chromium-review.googlesource.com/c/599707).

Affected build:
https://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/469708

Original change's description:
> Track recreation of DxgiTextureStaging
> 
> I am not sure memcmp is the right tool to compare two D3D11_TEXTURE2D_DESC
> instances. So the staging texture may be recreated for each frame, which hurts
> the performance.
> 
> Bug: webrtc:8046
> Change-Id: I60a94f468599b23dec168de55c9bc8c787ab9b7d
> Reviewed-on: https://chromium-review.googlesource.com/592088
> Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
> Commit-Queue: Zijie He <zijiehe@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#19193}

TBR=jamiewalch@chromium.org,zijiehe@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:8046
Change-Id: I57951e22be6926bcde81cdac3ca64cab9fb43338
Reviewed-on: https://chromium-review.googlesource.com/599867
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19232}
2017-08-03 10:39:49 +00:00
9b1b4105a4 Revert "Add histogram for FallbackDesktopCapturerWrapper and BlankDetectorDesktopCapturerWrapper"
This reverts commit ecf3d53088c5a0a4bf3753608537f9fe7e905f98.

Reason for revert: It is blocking the WebRTC roll into Chromium (see: https://chromium-review.googlesource.com/c/599707).

Affected builds are:
https://build.chromium.org/p/tryserver.chromium.android/builders/android_arm64_dbg_recipe/builds/321334
https://build.chromium.org/p/tryserver.chromium.android/builders/android_clang_dbg_recipe/builds/322156
https://build.chromium.org/p/tryserver.chromium.android/builders/android_compile_dbg/builds/323005


Original change's description:
> Add histogram for FallbackDesktopCapturerWrapper and BlankDetectorDesktopCapturerWrapper
> 
> We should record the number of fallbacks and blank frames.
> 
> Bug: webrtc:8040
> Change-Id: I92e7b7d7b4664fee6d6bd636609e80e532aa4bd4
> Reviewed-on: https://chromium-review.googlesource.com/587688
> Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
> Commit-Queue: Zijie He <zijiehe@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#19161}

TBR=jamiewalch@chromium.org,zijiehe@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:8040
Change-Id: I0d1f881e86bf437854dd265c119b0dc9c7b11ecf
Reviewed-on: https://chromium-review.googlesource.com/599847
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19230}
2017-08-03 10:19:50 +00:00
adb161fecc windowCapture: return 1x1 frame to minimized winodw on Linux.
During window capturing, if the target window is minimized, OSX/Windows
will return a 1x1 frame and then webrtc knows to replace it with a black
frame. Let's do same on Linux too.

BUG=568840

Review-Url: https://codereview.webrtc.org/2989233002
Cr-Commit-Position: refs/heads/master@{#19224}
2017-08-02 22:37:29 +00:00
c0d481a4a6 Protected streams report RTP messages directly to the FlexFec streams
In preparation of making RTP packet demuxing many-to-one (one SSRC goes to one sink, but one sink may have multiple SSRCs), we need to remove FlexFEC's dependence on being able to register itself with the demuxer. Instead, we register FlexFEC streams with the streams they protect; when those streams get packets, they'll forward them to their associated FlexFEC streams, too.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2974453002
Cr-Commit-Position: refs/heads/master@{#19219}
2017-08-02 14:39:07 +00:00
32040efc61 Add PacketRouterTest.Sanity_NoModuleRegistered_*
Add some sanity tests for PacketRouter when no modules are registered.

BUG=None

Review-Url: https://codereview.webrtc.org/2986093003
Cr-Commit-Position: refs/heads/master@{#19215}
2017-08-02 13:29:00 +00:00
c5fb4683e5 Don't clear newer packets from the video_coding::PacketBuffer when calling ClearTo.
BUG=webrtc:8060

Review-Url: https://codereview.webrtc.org/2987013002
Cr-Commit-Position: refs/heads/master@{#19212}
2017-08-02 11:28:57 +00:00