Commit Graph

18741 Commits

Author SHA1 Message Date
151aa6b3f7 Adjust for initial cropping when adapting frame.
When adapting a frame, any initial cropping coordinate was replaced
by the coordinate calculated for adapting. Offset initial coordinate
instead.

BUG=webrtc:7880

Review-Url: https://codereview.webrtc.org/2975613002
Cr-Commit-Position: refs/heads/master@{#19509}
2017-08-25 08:33:18 +00:00
8b07305b04 Eliminate RtpVideoStreamReceiver::receive_cs_ in favor of using a SequencedTaskChecker
RtpVideoStreamReceiver::receive_cs_ is not really necessary, since all of the functions where that lock is acquired, are arrived at from functions of BaseChannel which DCHECK being called from BaseChannel::worker_thread_.

BUG=webrtc:8037

Review-Url: https://codereview.webrtc.org/2987933003
Cr-Commit-Position: refs/heads/master@{#19508}
2017-08-25 07:49:08 +00:00
8cee56f254 Utilizing the AEC3 config struct for constants.
This CL replaces inline constants with config struct
constants.

BUG=webrtc:5298

Review-Url: https://codereview.webrtc.org/3003733002
Cr-Commit-Position: refs/heads/master@{#19507}
2017-08-25 05:36:53 +00:00
2dbc69fa64 Add stats totalSamplesReceived and concealedSamples
Adds two new stats to RTCMediaStreamTrackStats:
* totalSamplesReceived is the total number of samples received on
      the audio channel and includes real and synthetic samples.
* concealedSamples is the total number of synthetic samples
      received on the audio channel used to conceal packet loss.

Bug: webrtc:8076
Change-Id: I36e9828525ec341490cf3310a972b56a8b443667
Reviewed-on: https://chromium-review.googlesource.com/615902
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19506}
2017-08-25 00:50:42 +00:00
d6a5cbdf4c Turn off clang-format for WEBRTC_RTCSTATS_IMPL macros.
Clang format wants to put all parameters to WEBRTC_RTCSTATS_IMPL on
their own line, but we prefer to keep the header on the first line and
put the variable arguments (the stats) on their own lines.

Bug: None
Change-Id: Ic53104b46fb3c91c134d524027a150ba10055ad5
Reviewed-on: https://chromium-review.googlesource.com/621409
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19505}
2017-08-24 23:52:52 +00:00
5acd9d0393 Add DesktopFrame::MoveFrameInfoFrom() and DesktopFrame::CopyFrameInfoFrom()
The original change https://chromium-review.googlesource.com/c/575315 and
https://chromium-review.googlesource.com/c/590508 have not been well-considered.
So this change reverts part of two changes and adds a
DesktopFrame::set_top_left() function

A DesktopFrame usually contains a very large chunk of memory, which should be
reused as much as possible to reduce the memory allocations. The size of the
memory usually controls by the DesktopFrame::size(). So it's reasonable to const
DesktopFrame::size_: changing it is wrong if the underly buffer is not large
enough.

But DesktopFrame::top_left() is a different story, same as capturer_id,
capture_time_ms and other information in the DesktopFrame, it can be changed to
any value without needing to reconstruct a DesktopFrame instance. So instead of
adding it to the constructor, a DesktopFrame::set_top_left() is added to adjust
the top-left of the DesktopFrame in the entire display coordinate.

After adding DesktopFrame::set_top_left(), we have five variables in a
DesktopFrame which is not initialized in the constructor. For any kind of
wrapper DesktopFrame, say, SharedDesktopFrame and CroppedDesktopFrame, they
needs to copy these five variables after constructing themselves. This is not
convenient and easily to be broken if an implementation forgot to copy them.

So DesktopFrame::MoveFrameInfoFrom() and DesktopFrame::CopyFrameInfoFrom() are
added to the DesktopFrame to help derived classes to copy or move these
variables in one function call.
The difference between MoveFrameInfoFrom() and CopyFrameInfoFrom() is that the
former one uses DesktopRegion::Swap() to move the DesktopRegion from the source
DesktopFrame to this instance, while the later one uses copy-operator to copy
the DesktopRegion from the source DesktopFrame.
So CopyFrameInfoFrom() is usually used when sharing a source DesktopFrame with
several clients. I.e. the source DesktopFrame should be kept unchanged. For
example, BasicDesktopFrame::CopyOf() and SharedDesktopFrame::Share().
On the other side, MoveFrameInfoFrom() is usually used when wrapping a
DesktopFrame. E.g. CroppedDesktopFrame and DesktopFrameWithCursor.

Bug: webrtc:7950
Change-Id: I8b23418960fb681d2ea1f012d1b453f514da2272
Reviewed-on: https://chromium-review.googlesource.com/622453
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19504}
2017-08-24 23:44:22 +00:00
2b706343de Add audio_level member to RtpSource and set it from RtpReceiverImpl::IncomingRtpPacket.
BUG=webrtc:7987

Review-Url: https://codereview.webrtc.org/3000713002
Cr-Commit-Position: refs/heads/master@{#19503}
2017-08-24 21:52:17 +00:00
0cab085157 Disable screen capturer tests on Windows
Windows cannot capture contents on VMs hosted in GCE, disable them to unblock
GCE hosting.

Bug: webrtc:8153
Change-Id: Iacdce15008cc092dce36d08b1d5565bbaa5def1f
Reviewed-on: https://chromium-review.googlesource.com/634083
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Commit-Queue: Zijie He <zijiehe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19502}
2017-08-24 20:10:42 +00:00
c0af5ac3d0 The goal of this CL is to separate Obj-C/Obj-C++ code from targets which have
also C++ code (see https://bugs.chromium.org/p/webrtc/issues/detail?id=7743
for more information).

BUG=webrtc:7743

Review-Url: https://codereview.webrtc.org/2995753002
Cr-Commit-Position: refs/heads/master@{#19501}
2017-08-24 19:26:05 +00:00
72ba795e29 Fix iOS API Framework build script after renaming objc targets.
This fixes the script after targets were renamed in
https://codereview.webrtc.org/3001023003/

BUG=webrtc:6412, chromium:758655
NOTRY=True

Review-Url: https://codereview.webrtc.org/3005513002
Cr-Commit-Position: refs/heads/master@{#19500}
2017-08-24 19:01:24 +00:00
05b07bb833 Fix places that trigger no-unused-lambda-capture - change to using static-constexpr.
Follow up on https://codereview.webrtc.org/3005433002/.

BUG=webrtc:7133
TBR=stefan@webrtc.org

Review-Url: https://codereview.webrtc.org/3003723002
Cr-Commit-Position: refs/heads/master@{#19499}
2017-08-24 14:40:16 +00:00
3651fdd137 Uncomment thread-check in AudioSendStream::OnPacketFeedbackVector()
The thread-check should be pass unit-tests, following https://codereview.webrtc.org/2998923002/.

BUG=webrtc:7405
TBR=stefan@webrtc.org

Review-Url: https://codereview.webrtc.org/3001313002
Cr-Commit-Position: refs/heads/master@{#19498}
2017-08-24 14:26:25 +00:00
837adc0871 Fix video slow to appear on first launch.
BUG=webrtc:7777

Review-Url: https://codereview.webrtc.org/3006453002
Cr-Commit-Position: refs/heads/master@{#19497}
2017-08-24 14:14:35 +00:00
0860bee402 Remove deprecated DirectTransport constructors
Remove deprecated DirectTransport constructors, now that they're no longer used in internal projects.

BUG=webrtc:8125
TBR=stefan@webrtc.org

Review-Url: https://codereview.webrtc.org/3006513002
Cr-Commit-Position: refs/heads/master@{#19496}
2017-08-24 13:56:15 +00:00
0c3ca753c5 Replacing NetEq discard rate with secondary discarded rate.
NetEq network statistics contains discard rate but has not been used and even not been implemented until recently.

According to w3c.github.io/webrtc-stats/#dom-rtcreceivedrtpstreamstats-packetsdiscarded,
this statistics needs to be replaced with an accumulative stats. Such work will be carried out separately.

Meanwhile, we need to add a rate to reflect rate of discarded redundant packets. See webrtc:8025.

In this CL, we replace the existing discard rate with secondary discarded rate, so as to
1. fulfill the requests on webrtc:8025
2. get ready to implement an accumulative statistics for discarded packets.

BUG: webrtc:7903,webrtc:8025
Change-Id: Idbf143a105db76ca15f0af54848e1448f2a810ec
Reviewed-on: https://chromium-review.googlesource.com/582863
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19495}
2017-08-24 13:46:52 +00:00
d950d9eda1 Fix rtc::CurrentThreadId() on Android
We have been using the Linux way of getting the thread id on Android,
even though we have a special code path for getting it on Android.

BUG=webrtc:8110

Review-Url: https://codereview.webrtc.org/3001333002
Cr-Commit-Position: refs/heads/master@{#19494}
2017-08-24 13:41:05 +00:00
6c36dcb324 Fix bugs in HardwareVideoDecoder reinitialization.
Fixes bug where callback is set to null on reinitialization. Also fixes
a race condition where callback can be null in onTextureFrameAvailable.

BUG=webrtc:8124

Review-Url: https://codereview.webrtc.org/3002093002
Cr-Commit-Position: refs/heads/master@{#19493}
2017-08-24 13:03:59 +00:00
b1737fc198 Made the AEC3 alignment a mandatory for using the adaptive filter delay
This CL ensures that the adaptive filter delay is not used for fine
tune echo removal unless the render and capture signals have been
properly aligned.

BUG=webrtc:8189

Review-Url: https://codereview.webrtc.org/3003303002
Cr-Commit-Position: refs/heads/master@{#19492}
2017-08-24 13:02:49 +00:00
85864be8ef Robustify the AEC3 inaudible echo detection
This CL robustifies the inaudible echo detection in AEC3 such that a
requirement is that either the render and capture signals are aligned
or that a headset has been detected. This ensures that the inaudible
detection has been able to base the desicion on reliable signals.

BUG=webrtc:8150

Review-Url: https://codereview.webrtc.org/3005503002
Cr-Commit-Position: refs/heads/master@{#19491}
2017-08-24 13:01:36 +00:00
23bdb6773e New accessor function VideoReceiveStream::Config::Rtp::AddRtxBinding
Needed temporarily, to enable landing of
https://codereview.webrtc.org/3000273002/ without breaking downstream
applications.

Bug: webrtc:7135
Change-Id: Ib0783d2e97cc62bb0a6e6fb394a29a5373938054
Reviewed-on: https://chromium-review.googlesource.com/631679
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19490}
2017-08-24 12:47:16 +00:00
36d658d085 Rename all objc targets to be suffixed for consistency
BUG=webrtc:6412

Review-Url: https://codereview.webrtc.org/3001023003
Cr-Commit-Position: refs/heads/master@{#19489}
2017-08-24 12:43:45 +00:00
955d7f19e8 Increase logging severity level for SW fallback.
This will help debugging issues with the fallback, in cases where
only LS_WARNING logs are available.

BUG=none

Review-Url: https://codereview.webrtc.org/3007523002
Cr-Commit-Position: refs/heads/master@{#19488}
2017-08-24 12:19:57 +00:00
cff98dc2d6 Add GUARDED_BY in DirectTransport
Add GUARDED_BY annotation to DirectTransport to demonstrate that next_scheduled_task_ is properly protected.
SendRtp(), SendRtcp(), etc., remain as unprotected as they were before the migration from using a thread to using a task-queue.

BUG=webrtc:8113
TBR=stefan@webrtc.org

Review-Url: https://codereview.webrtc.org/3002163003
Cr-Commit-Position: refs/heads/master@{#19487}
2017-08-24 12:04:56 +00:00
a4955b4d9a Enable the HW VideoToolbox encoder on mac.
This CL was originally submitted by an external contributor in
https://chromium-review.googlesource.com/c/external/webrtc/+/582051.

I have rebased it to the new ObjC encoder class.

BUG=webrtc:8022

Review-Url: https://codereview.webrtc.org/3003653002
Cr-Commit-Position: refs/heads/master@{#19486}
2017-08-24 11:22:58 +00:00
1cdddc96fa Make CodecType conversion functions non-optional.
We can't handle no value here anyway and end up setting a default
at each call site. The defaults aren't even the same in each place.

BUG=None

Review-Url: https://codereview.webrtc.org/2998293002
Cr-Commit-Position: refs/heads/master@{#19485}
2017-08-24 10:52:48 +00:00
821e21402d Delete unneeded includes of atomic32.h.
BUG=None

Review-Url: https://codereview.webrtc.org/3002173002
Cr-Commit-Position: refs/heads/master@{#19484}
2017-08-24 10:30:05 +00:00
a0c88878b6 Delete Filesystem::GetTemporaryFolder.
Testcode updated to use webrtc::test::TempFilename.
Also deletes now unused functions AppleDataDirectory,
AppleTempDirectory and AppleAppName.

BUG=webrtc:6424

Review-Url: https://codereview.webrtc.org/2995413002
Cr-Commit-Position: refs/heads/master@{#19483}
2017-08-24 09:20:46 +00:00
eaea27799d Delete deprecated static method FileStream::GetSize.
Unused since cl https://codereview.webrtc.org/2694753002

Bug: webrtc:6424
Change-Id: Id22ecd5c004a0b4af3e673da519cbd537f99cd8b
Reviewed-on: https://chromium-review.googlesource.com/626116
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19482}
2017-08-24 08:36:14 +00:00
adf4cec3c7 Add myself as owner of example apps.
BUG=None
NOTRY=TRUE

Review-Url: https://codereview.webrtc.org/2995413003
Cr-Commit-Position: refs/heads/master@{#19481}
2017-08-24 08:35:05 +00:00
ea5cc86b37 Delete unneeded include of videocapturer.h
Bug: webrtc:6333
Change-Id: I9e0f15d8d68519e9f8617dd8c54e86932df447d9
Reviewed-on: https://chromium-review.googlesource.com/615240
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19480}
2017-08-24 07:29:04 +00:00
cd95a4ec76 The goal of this CL is to separate Obj-C/Obj-C++ code from targets which have
also C++ code (see https://bugs.chromium.org/p/webrtc/issues/detail?id=7743
for more information).

We have moved .mm files out of test_support and fileutils (into test_support_objc
and fileutils_objc).

To achieve the goal for run_test and test_renderer (in the next part of the phrase
X is run_test or test_renderer) we have created 2 targets (X_objc and X_generic)
and X will act as a proxy between these targets (this way we can avoid a circular
dependency between X_generic and X_objc).

BUG=webrtc:7743

Review-Url: https://codereview.webrtc.org/2991323003
Cr-Commit-Position: refs/heads/master@{#19479}
2017-08-24 06:55:54 +00:00
ca6d3b60b5 Renamed dtlstransportchannel.h/.cc/_unittest.cc.
Renamed the dtlstransportchannel.h/.cc to dtlstransport.h/.cc which are
the right names for those files because the concept of DtlsTransportChannel
no longer exists.

BUG=None

Review-Url: https://codereview.webrtc.org/3004503002
Cr-Commit-Position: refs/heads/master@{#19478}
2017-08-24 01:05:50 +00:00
96de428fd1 Adding injectable audio decoder and encoder factory support to the RTCPeerConnection obj-c layer.
Bug: webrtc:8093
Change-Id: I868ce5f75a72c6deb065dec60784289d045ae22a
Reviewed-on: https://chromium-review.googlesource.com/608981
Commit-Queue: Jeremy Newton-Smith <jeremyns@webrtc.org>
Reviewed-by: Zeke Chin <tkchin@webrtc.org>
Reviewed-by: Kári Tristan Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19477}
2017-08-23 22:46:44 +00:00
82fac89381 Reland of Modify profiles for H264 encode SW fallback (patchset #1 id:1 of https://codereview.webrtc.org/2995373002/ )
Reason for revert:
Fix and reland.

Original issue's description:
> Revert of Modify profiles for H264 encode SW fallback (patchset #2 id:20001 of https://codereview.webrtc.org/2997913003/ )
>
> Reason for revert:
> Breaks the internal bots.
> Root cause: The "public_deps" is defined behind an "if" condition which may not be true.
>
> Original issue's description:
> > Modify profiles for H264 encode SW fallback
> >
> > We have only Constrained Baseline profile available in SW encoder impl
> > so modify the profile to that in case  of a fallback
> >
> > BUG=chromium:735959
> >
> > Review-Url: https://codereview.webrtc.org/2997913003
> > Cr-Commit-Position: refs/heads/master@{#19436}
> > Committed: 1fd66656b3
>
> TBR=magjed@webrtc.org,emircan@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:735959
>
> Review-Url: https://codereview.webrtc.org/2995373002
> Cr-Commit-Position: refs/heads/master@{#19438}
> Committed: 296b64eb25

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

Review-Url: https://codereview.webrtc.org/2997423002
Cr-Commit-Position: refs/heads/master@{#19476}
2017-08-23 21:19:50 +00:00
d4ab933e2c Reland of Enable -Wunused-lambda-capture warning (patchset #1 id:1 of https://codereview.webrtc.org/3007483002/ )
Reason for revert:
Relanding not enabling the warning if Xcode clang is used.
See https://cs.chromium.org/chromium/src/build/config/compiler/BUILD.gn?rcl=9de57af4acd3e74cde57e62dd48e58290eeb1481&l=1216
for details.

Original issue's description:
> Revert of Enable -Wunused-lambda-capture warning (patchset #1 id:1 of https://codereview.webrtc.org/2999403002/ )
>
> Reason for revert:
> Breaks iOS framework builder.
>
> Original issue's description:
> > Enable -Wunused-lambda-capture warning
> >
> > This should prevent some build errors downstream.
> > The warning is currrently disabled in Chromium:
> > https://cs.chromium.org/chromium/src/build/config/compiler/BUILD.gn?rcl=735aa36217a394455f70aad87e2c844053fd810a&l=1214
> > (see https://crbug.com/681136 for more info).
> >
> > BUG=webrtc:7133
> > NOTRY=True
> >
> > Review-Url: https://codereview.webrtc.org/2999403002
> > Cr-Commit-Position: refs/heads/master@{#19466}
> > Committed: fd7cffa433
>
> TBR=charujain@webrtc.org,charujain@google.com
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7133
>
> Review-Url: https://codereview.webrtc.org/3007483002
> Cr-Commit-Position: refs/heads/master@{#19473}
> Committed: aa0d2e694a

TBR=charujain@webrtc.org,charujain@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7133

Review-Url: https://codereview.webrtc.org/3002203002
Cr-Commit-Position: refs/heads/master@{#19475}
2017-08-23 19:31:31 +00:00
dab31ce1fa Detect whether a window is out of screen when using cropping window capturer
We are still using cropping window capturer even the window is out of the screen.
See the bug for details.

Bug: webrtc:8134
Change-Id: I5161b1a17a3a1f8244697eea5eb78975be6908f9
Reviewed-on: https://chromium-review.googlesource.com/627338
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19474}
2017-08-23 19:28:39 +00:00
aa0d2e694a Revert of Enable -Wunused-lambda-capture warning (patchset #1 id:1 of https://codereview.webrtc.org/2999403002/ )
Reason for revert:
Breaks iOS framework builder.

Original issue's description:
> Enable -Wunused-lambda-capture warning
>
> This should prevent some build errors downstream.
> The warning is currrently disabled in Chromium:
> https://cs.chromium.org/chromium/src/build/config/compiler/BUILD.gn?rcl=735aa36217a394455f70aad87e2c844053fd810a&l=1214
> (see https://crbug.com/681136 for more info).
>
> BUG=webrtc:7133
> NOTRY=True
>
> Review-Url: https://codereview.webrtc.org/2999403002
> Cr-Commit-Position: refs/heads/master@{#19466}
> Committed: fd7cffa433

TBR=charujain@webrtc.org,charujain@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7133

Review-Url: https://codereview.webrtc.org/3007483002
Cr-Commit-Position: refs/heads/master@{#19473}
2017-08-23 18:52:33 +00:00
d7850b299b Use fake audio device in peerconnectioninterface_unittest.cc.
This test doesn't actually send/receive any audio; it's only testing
the interface layer. But the fact that it was creating/destroying real
audio devices repeatedly caused problems when tests were run in
parallel. So switching to a fake audio device solves this.

BUG=webrtc:7806

Review-Url: https://codereview.webrtc.org/2997383002
Cr-Commit-Position: refs/heads/master@{#19472}
2017-08-23 17:59:19 +00:00
60e10c794e Add experiment to disable ulpfec.
BUG=None

Review-Url: https://codereview.webrtc.org/2997363002
Cr-Commit-Position: refs/heads/master@{#19471}
2017-08-23 17:40:00 +00:00
45ca37c022 Replace WEBRTC_TRACE logging in modules/media_file/
Patch set 1:
Run a script to replace occurrences of WEBRTC_TRACE logging with the new style,
in webrtc/modules/media_file/.

Patch set 2:
 - Manually fix log lines not handled by the script
 - Update the included headers
 - Remove the now unused object ID variables

Bug: webrtc:5118
Change-Id: I1acbaec3fbbdf1deb7b934624a2f1fd38253c7e9
Reviewed-on: https://chromium-review.googlesource.com/602007
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19470}
2017-08-23 17:30:38 +00:00
82931001c2 Use small BWE period when there is a true network degradation.
Bug: webrtc:8105
Change-Id: I751b89194f3fdb10ea41c6f9e48e38edefcbef1a
Reviewed-on: https://chromium-review.googlesource.com/616724
Commit-Queue: Minyue Li <minyue@webrtc.org>
Reviewed-by: Michael T <tschumim@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19469}
2017-08-23 17:22:28 +00:00
0fcb74d749 Robustified the detection of linear filter quality in AEC3
BUG=webrtc:8141

Review-Url: https://codereview.webrtc.org/3000383002
Cr-Commit-Position: refs/heads/master@{#19468}
2017-08-23 16:18:49 +00:00
91073ae78f Add a field trial to produce VideoFrames in camera capturers.
The field trials enables producing new VideoFrames in camera classes.
This field trial should be enabled if VideoSinks are used.

BUG=webrtc:7749, webrtc:7760

Review-Url: https://codereview.webrtc.org/2984633002
Cr-Commit-Position: refs/heads/master@{#19467}
2017-08-23 15:50:23 +00:00
fd7cffa433 Enable -Wunused-lambda-capture warning
This should prevent some build errors downstream.
The warning is currrently disabled in Chromium:
https://cs.chromium.org/chromium/src/build/config/compiler/BUILD.gn?rcl=735aa36217a394455f70aad87e2c844053fd810a&l=1214
(see https://crbug.com/681136 for more info).

BUG=webrtc:7133
NOTRY=True

Review-Url: https://codereview.webrtc.org/2999403002
Cr-Commit-Position: refs/heads/master@{#19466}
2017-08-23 15:31:51 +00:00
09a76193f5 Resolves threading issues when audio is interrupted on iOS.
Before this change we could crash in Debug when WebRTC audio was first
interrupted and then resumed again. The reason was that the new audio
stream stems from a new native I/O thread and that triggered thread
checkers. With this change, failing thread checkers are detached when
audio is interrupted to ensure that they don't fail when audio is restarted.

NOTRY=TRUE

Bug: webrtc:8126
Change-Id: Ib36ff6bc942477730aba60066f049ed0c43d3901
Reviewed-on: https://chromium-review.googlesource.com/628716
Commit-Queue: Henrik Andreasson <henrika@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19465}
2017-08-23 14:12:07 +00:00
cca0006e33 ObjC: Always dispatch async in UIApplication status observer.
Fixes a possible deadlock.

BUG=webrtc:8130

Review-Url: https://codereview.webrtc.org/3003633002
Cr-Commit-Position: refs/heads/master@{#19464}
2017-08-23 13:04:17 +00:00
a79cc28de1 Report max interframe delay over window insdead of interframe delay sum
Maximum of interframe delay is calculated over moving window in
ReceiveStatistics proxy now and reported via GetStats. Name of a metric
is also changed.

BUG=none

Review-Url: https://codereview.webrtc.org/2995143002
Cr-Commit-Position: refs/heads/master@{#19463}
2017-08-23 12:24:10 +00:00
1cc5fc3ebf Fix places that trigger no-unused-lambda-capture
no-unused-lambda-capture was suppressed, but it's been decided as desireable to stop suppressing it. This CL fixes places in the code that trigger it.

1. Some unnecessary captures removed.
2. s/constexpr/const when capturing a float by value - this is good enough to stop the error.
3. Complete removal of the constexpr/const-modifier for int-types as a workaround.

BUG=webrtc:7133

Review-Url: https://codereview.webrtc.org/3005433002
Cr-Commit-Position: refs/heads/master@{#19462}
2017-08-23 11:15:18 +00:00
3df87523aa MB: Remove Android clang bot configurations.
Changes to match https://chromium-review.googlesource.com/c/chromium/tools/build/+/627917

BUG=chromium:758084
NOTRY=True

Review-Url: https://codereview.webrtc.org/3004513002
Cr-Commit-Position: refs/heads/master@{#19461}
2017-08-23 10:37:26 +00:00
caea68f31e Let Call::OnRecoveredPacket parse RTP header extensions.
Packets recovered by ULPFEC enter through
RtpVideoStreamReceiver::OnRecoveredPacket, which does RTP
header extension parsing. Packets recovered by FlexFEC, however,
enter through Call::OnRecoveredPacket, which prior to this
CL did not do RTP header extension parsing.

The lack of RTP header extension parsing for FlexFEC packets is a
regression since https://codereview.webrtc.org/2886993005/.

TESTED=Using Android app with FlexFEC field trial enabled.
BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/3002023002
Cr-Commit-Position: refs/heads/master@{#19460}
2017-08-23 07:55:17 +00:00