5809 Commits

Author SHA1 Message Date
sakal
40d224814a Revert of Removes usage of native base::android::GetApplicationContext() (patchset #6 id:120001 of https://codereview.webrtc.org/2888093004/ )
Reason for revert:
Breaks bot on chromium.webrtc.fyi.

Original issue's description:
> Removes usage of native base::android::GetApplicationContext()
>
> BUG=webrtc:7665
>
> Review-Url: https://codereview.webrtc.org/2888093004
> Cr-Commit-Position: refs/heads/master@{#18195}
> Committed: bc83e2ee69

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

Review-Url: https://codereview.webrtc.org/2894593002
Cr-Commit-Position: refs/heads/master@{#18196}
2017-05-18 13:44:20 +00:00
sakal
bc83e2ee69 Removes usage of native base::android::GetApplicationContext()
BUG=webrtc:7665

Review-Url: https://codereview.webrtc.org/2888093004
Cr-Commit-Position: refs/heads/master@{#18195}
2017-05-18 13:28:45 +00:00
philipel
539107175a Break backwards traversal loop if we have looped around all packets in the PacketBuffer for H264 frames.
BUG=webrtc:7532

Review-Url: https://codereview.webrtc.org/2868723003
Cr-Commit-Position: refs/heads/master@{#18191}
2017-05-18 09:24:40 +00:00
jtteh
855aeead57 Updated comments for unit tests to validate iOS audio session isInterrupted flag does not get reset correctly.
BUG=webrtc:7605

Review-Url: https://codereview.webrtc.org/2886183002
Cr-Commit-Position: refs/heads/master@{#18188}
2017-05-17 19:37:17 +00:00
ivoc
1592c74d8a Add log message to help analyze why echo likelihood > 1.1
This CL adds a log message with the relevant part of the internal state of the echo detector to the text log when this unexpected scenario occurs.

BUG=b/38014838

Review-Url: https://codereview.webrtc.org/2883283002
Cr-Commit-Position: refs/heads/master@{#18185}
2017-05-17 16:53:02 +00:00
erikvarga
76a5593835 Don't add FEC and RTX overheads when calculating a padding packet's maximum payload size.
BUG=webrtc:7433

Review-Url: https://codereview.webrtc.org/2892583002
Cr-Commit-Position: refs/heads/master@{#18184}
2017-05-17 14:50:17 +00:00
kthelgason
37144b214e Revert of Split iOS sdk in to separate targets (patchset #1 id:1 of https://codereview.webrtc.org/2890733003/ )
Reason for revert:
Still problems with downstream projects

Original issue's description:
> Reland of Split iOS sdk in to separate targets (patchset #1 id:1 of https://codereview.webrtc.org/2890513002/ )
>
> Reason for revert:
> Fixing downstream breakages
>
> Original issue's description:
> > Revert of Split iOS sdk in to separate targets (patchset #13 id:280001 of https://codereview.webrtc.org/2862543002/ )
> >
> > Reason for revert:
> > Breaking downstream projects.
> >
> > Original issue's description:
> > > Split iOS sdk in to separate targets
> > >
> > > This CL splits the iOS sdk into separate static libraries for video,
> > > audio, ui, common, and peerconnection-related code. This will in the
> > > future make it easier to compile WebRTC without unneeded components.
> > >
> > > BUG=webrtc:4867
> > >
> > > Review-Url: https://codereview.webrtc.org/2862543002
> > > Cr-Commit-Position: refs/heads/master@{#18166}
> > > Committed: 52c83fe710
> >
> > TBR=magjed@webrtc.org,denicija@webrtc.org,tkchin@webrtc.org,henrika@webrtc.org,kthelgason@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:4867
> >
> > Review-Url: https://codereview.webrtc.org/2890513002
> > Cr-Commit-Position: refs/heads/master@{#18170}
> > Committed: 9756238084
>
> TBR=magjed@webrtc.org,denicija@webrtc.org,tkchin@webrtc.org,henrika@webrtc.org,charujain@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:4867
>
> Review-Url: https://codereview.webrtc.org/2890733003
> Cr-Commit-Position: refs/heads/master@{#18174}
> Committed: d51e042492

TBR=magjed@webrtc.org,denicija@webrtc.org,tkchin@webrtc.org,henrika@webrtc.org,charujain@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4867

Review-Url: https://codereview.webrtc.org/2893593002
Cr-Commit-Position: refs/heads/master@{#18182}
2017-05-17 13:52:58 +00:00
erikvarga
2788373528 Remove hardcoded kValueSizeBytes values from variable-length header extensions.
Since the RtpStreamId and RepairedRtpStreamId extensions can have variable
length, it makes no sense for them to have a constant valueSize field.
The header length calculation in RtpHeaderExtensionMap needed to be changed
for this because it previously worked with the assumption that all header
types have a constant size. Now it's the caller's job to specify the length
of the extensions that it might use.

BUG=webrtc:7433

Review-Url: https://codereview.webrtc.org/2867713003
Cr-Commit-Position: refs/heads/master@{#18179}
2017-05-17 12:08:38 +00:00
kthelgason
d51e042492 Reland of Split iOS sdk in to separate targets (patchset #1 id:1 of https://codereview.webrtc.org/2890513002/ )
Reason for revert:
Fixing downstream breakages

Original issue's description:
> Revert of Split iOS sdk in to separate targets (patchset #13 id:280001 of https://codereview.webrtc.org/2862543002/ )
>
> Reason for revert:
> Breaking downstream projects.
>
> Original issue's description:
> > Split iOS sdk in to separate targets
> >
> > This CL splits the iOS sdk into separate static libraries for video,
> > audio, ui, common, and peerconnection-related code. This will in the
> > future make it easier to compile WebRTC without unneeded components.
> >
> > BUG=webrtc:4867
> >
> > Review-Url: https://codereview.webrtc.org/2862543002
> > Cr-Commit-Position: refs/heads/master@{#18166}
> > Committed: 52c83fe710
>
> TBR=magjed@webrtc.org,denicija@webrtc.org,tkchin@webrtc.org,henrika@webrtc.org,kthelgason@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:4867
>
> Review-Url: https://codereview.webrtc.org/2890513002
> Cr-Commit-Position: refs/heads/master@{#18170}
> Committed: 9756238084

TBR=magjed@webrtc.org,denicija@webrtc.org,tkchin@webrtc.org,henrika@webrtc.org,charujain@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4867

Review-Url: https://codereview.webrtc.org/2890733003
Cr-Commit-Position: refs/heads/master@{#18174}
2017-05-17 10:33:49 +00:00
zijiehe
73c1234f6a Add a DesktopRect::UnionWith() function to extend current instance to cover both instances
This small piece of logic is duplicated in DxgiDuplicatorController,
DxgiAdapterDuplicator and desktop_configuration.mm. Meanwhile, the
implementation in desktop_configuration.mm is not safe. So I think a function in
DesktopRect to cover the requirement could be more efficient and safer.

BUG=webrtc:7541

Review-Url: https://codereview.webrtc.org/2845213002
Cr-Commit-Position: refs/heads/master@{#18171}
2017-05-16 23:50:32 +00:00
charujain
9756238084 Revert of Split iOS sdk in to separate targets (patchset #13 id:280001 of https://codereview.webrtc.org/2862543002/ )
Reason for revert:
Breaking downstream projects.

Original issue's description:
> Split iOS sdk in to separate targets
>
> This CL splits the iOS sdk into separate static libraries for video,
> audio, ui, common, and peerconnection-related code. This will in the
> future make it easier to compile WebRTC without unneeded components.
>
> BUG=webrtc:4867
>
> Review-Url: https://codereview.webrtc.org/2862543002
> Cr-Commit-Position: refs/heads/master@{#18166}
> Committed: 52c83fe710

TBR=magjed@webrtc.org,denicija@webrtc.org,tkchin@webrtc.org,henrika@webrtc.org,kthelgason@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4867

Review-Url: https://codereview.webrtc.org/2890513002
Cr-Commit-Position: refs/heads/master@{#18170}
2017-05-16 15:08:28 +00:00
peah
94f6fa0526 Removed implicit divisions in the residual echo detector
This CL changes the updating of a loop index from using the modulus
operator to using a conditional, avoiding the divisions done in the
modulus operator which had a measurable impact on mpbile
platforms.

Additionally, there is a similar removal of another modulus operator, but the impact of that should be negligible.

BUG=webrtc:7666

Review-Url: https://codereview.webrtc.org/2882183004
Cr-Commit-Position: refs/heads/master@{#18168}
2017-05-16 14:25:06 +00:00
ivoc
e3fc11464e Fixed NetEq overflow bug.
Negating an int can result in a value that cannot be represented as an int. This is fixed here by using a 64 bit variable.

BUG=chromium:663611

Review-Url: https://codereview.webrtc.org/2879863002
Cr-Commit-Position: refs/heads/master@{#18167}
2017-05-16 14:13:15 +00:00
kthelgason
52c83fe710 Split iOS sdk in to separate targets
This CL splits the iOS sdk into separate static libraries for video,
audio, ui, common, and peerconnection-related code. This will in the
future make it easier to compile WebRTC without unneeded components.

BUG=webrtc:4867

Review-Url: https://codereview.webrtc.org/2862543002
Cr-Commit-Position: refs/heads/master@{#18166}
2017-05-16 14:06:59 +00:00
ivoc
860249ec62 Adds fuzzer for the residual echo detector.
This is a robustness test for the residual echo detector, that can help to detect numerical issues.

BUG=b/38014838

Review-Url: https://codereview.webrtc.org/2877803002
Cr-Commit-Position: refs/heads/master@{#18165}
2017-05-16 13:50:11 +00:00
peah
52775841f0 Ensures the residual echo detector does not requiring band-splitting
This CL removes the residual echo detector from the list of
modules in APM that requires band-splitting.

BUG=webrtc:6220, webrtc:6183

Review-Url: https://codereview.webrtc.org/2884913002
Cr-Commit-Position: refs/heads/master@{#18164}
2017-05-16 13:14:09 +00:00
nisse
e4bcd6d02a New class RtpDemuxer and RtpPacketSinkInterface, use in Call.
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2867943003
Cr-Commit-Position: refs/heads/master@{#18160}
2017-05-16 11:47:04 +00:00
peah
edddac54bc Corrected the number of channels used when AEC3 is run on stereo input.
BUG=chromium:722343, webrtc:7519

Review-Url: https://codereview.webrtc.org/2883933003
Cr-Commit-Position: refs/heads/master@{#18158}
2017-05-16 08:08:58 +00:00
mbonadei
9baa77981f Moving compile_assert_c.h to webrtc/base
This header was not tracked by a GN target and in the discussion on
https://bugs.chromium.org/p/webrtc/issues/detail?id=7617 we decided
to also move it under webrtc/base.

I checked in chromium code search and it seems safe to move it
without creating a stub header in webrtc/system_wrappers.

BUG=webrtc:7617

Review-Url: https://codereview.webrtc.org/2882673002
Cr-Commit-Position: refs/heads/master@{#18151}
2017-05-15 15:06:47 +00:00
peah
9e6a290c8d Moving the residual echo detector outside of band-scheme in APM
This CL moves the residual echo detector to reside outside of
the band-scheme in APM. The benefit of this is that the
residual echo detector will then no longer enforce the
band-splitting to be used when it is the only active component
inside APM.

This CL also introduces diagnostic dumping of data inside the
residual echo detector.

BUG=webrtc:6220, webrtc:6183

Review-Url: https://codereview.webrtc.org/2884593002
Cr-Commit-Position: refs/heads/master@{#18150}
2017-05-15 14:19:21 +00:00
nisse
ea3a7987d2 Move webrtc/video_frame to common_video/include.
BUG=webrtc:7616

Review-Url: https://codereview.webrtc.org/2877703002
Cr-Commit-Position: refs/heads/master@{#18147}
2017-05-15 09:42:11 +00:00
tommi
e95b78bd8d Add a couple of checks to FrameBuffer while we're continuing to look at RtpFrameReferenceFinder.
BUG=chromium:679306
TBR=terelius@webrtc.org, philipel@webrtc.org

Review-Url: https://codereview.webrtc.org/2879073002
Cr-Commit-Position: refs/heads/master@{#18140}
2017-05-14 14:23:11 +00:00
nisse
d2ef314292 Make Call::OnRecoveredPacket parse RTP header and call OnRtpPacket.
To make the distinction for stats, add a |recovered| flag to
RtpPacketReceived.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2693123002
Cr-Commit-Position: refs/heads/master@{#18103}
2017-05-11 15:00:58 +00:00
henrik.lundin
a8e2c63a99 Add untracked header files to GN targets in audio_coding
BUG=webrtc:7619

Review-Url: https://codereview.webrtc.org/2875033002
Cr-Commit-Position: refs/heads/master@{#18101}
2017-05-11 14:18:06 +00:00
erikvarga
e6b16194c7 Add write support for the RtpStreamId and RepairedRtpStreamId header extensions.
BUG=webrtc:7433

Review-Url: https://codereview.webrtc.org/2871813003
Cr-Commit-Position: refs/heads/master@{#18093}
2017-05-11 09:36:32 +00:00
mflodman
221cc56684 Updating VCM owners to reflect current active persons in the project.
BUG=none
R=asapersson@webrtc.org, brandtr@google.com

Review-Url: https://codereview.webrtc.org/2877713002 .
Cr-Commit-Position: refs/heads/master@{#18091}
2017-05-11 07:28:18 +00:00
aleloi
0f23fa8768 Disable the residual echo detector in audio mixer.
The audio mixer has a subcomponent called FrameCombiner, which uses an
AudioProcessing instance as a limiter. The limiter smoothly increases
the volume to avoid causing clipping.

The limiter was created in a default configuration causing the
ResidualEchoDetector submodule of AudioProcessing to be
activated. That submodule operates in the band-split domain (see
AudioProcessingImpl::ApmSubmoduleStates::RenderMultiBandSubModulesActive()).

There is a goal to remove the (expensive and unnecessary)
band-splitting from AudioMixer. This change helps accomplish that. (It
can't be done yet, because the actual limiter sub-component of APM
also operates in the band-split domain).

BUG=webrtc:6185

Review-Url: https://codereview.webrtc.org/2875623002
Cr-Commit-Position: refs/heads/master@{#18090}
2017-05-11 07:25:45 +00:00
lliuu
c4b126d70e Fix audio device excessive logging on Windows
In the windows audio device implementation, play block size should be
number of samples per 10ms times the number of channels. Meanwhile
RequestPlayoutData is expecting number of samples per channel in a
block, and we should pass in the per channel number here to avoid debug
check.

BUG=7627

Review-Url: https://codereview.webrtc.org/2876593003
Cr-Commit-Position: refs/heads/master@{#18088}
2017-05-11 01:08:24 +00:00
gnish
b2a318bb8e Configured VCMTiming with sender defining delay times.
BUG=webrtc:7590

Review-Url: https://codereview.webrtc.org/2870823003
Cr-Commit-Position: refs/heads/master@{#18086}
2017-05-10 16:21:33 +00:00
danilchap
2d9d21f328 Add untracked headers in modules/rtp_rtcp
BUG=webrtc:7623

Review-Url: https://codereview.webrtc.org/2876533003
Cr-Commit-Position: refs/heads/master@{#18085}
2017-05-10 15:41:13 +00:00
henrik.lundin
b8c55b15a3 Handle padded audio packets correctly
RTP packets can be padded with extra data at the end of the payload. The usable
payload length of the packet should then be reduced with the padding length,
since the padding must be discarded. This was not the case; instead, the entire
payload, including padding data, was forwarded to the audio channel and in the
end to the decoder.

A special case of padding is packets which are empty except for the padding.
That is, they carry no usable payload. These packets are sometimes used for
probing the network and were discarded in
RTPReceiverAudio::ParseAudioCodecSpecific. The result is that NetEq never sees
those empty packets, just the holes in the sequence number series; this can
throw off the target buffer calculations.

With this change, the empty (after removing the padding) packets are let through,
all the way down to NetEq, to a new method called NetEq::InsertEmptyPacket. This
method notifies the DelayManager that an empty packet was received.

BUG=webrtc:7610, webrtc:7625

Review-Url: https://codereview.webrtc.org/2870043003
Cr-Commit-Position: refs/heads/master@{#18083}
2017-05-10 14:38:01 +00:00
nisse
f93752a2ee Reland of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2853383005/ )
Reason for revert:
Downstream projects have been fixed.

Original issue's description:
> Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2854873003/ )
>
> Reason for revert:
> More downstream breakage discovered.
>
> Original issue's description:
> > Reland of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2854883002/ )
> >
> > Reason for revert:
> > Will make another attempt to track down and fix downstream projects.
> >
> > Original issue's description:
> > > Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2852303002/ )
> > >
> > > Reason for revert:
> > > Unfortunately, more downstream updates needed.
> > >
> > > Original issue's description:
> > > > Reland of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2845333002/ )
> > > >
> > > > Reason for revert:
> > > > Downstream projects being updated.
> > > >
> > > > For Chrome, relanding depends on cl
> > > > https://codereview.chromium.org/2855783003/
> > > >
> > > > Original issue's description:
> > > > > Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #17 id:320001 of https://codereview.webrtc.org/2622263002/ )
> > > > >
> > > > > Reason for revert:
> > > > > Broke Chrome build, see, e.g.,
> > > > > http://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/16237
> > > > >
> > > > > Original issue's description:
> > > > > > Delete deprecated and transitional stuff related to video frame refactoring.
> > > > > >
> > > > > > BUG=webrtc:5880
> > > > > >
> > > > > > Review-Url: https://codereview.webrtc.org/2622263002
> > > > > > Cr-Commit-Position: refs/heads/master@{#17928}
> > > > > > Committed: 713a3bbcc7
> > > > >
> > > > > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > > > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > > > NOPRESUBMIT=true
> > > > > NOTREECHECKS=true
> > > > > NOTRY=true
> > > > > BUG=webrtc:5880
> > > > >
> > > > > Review-Url: https://codereview.webrtc.org/2845333002
> > > > > Cr-Commit-Position: refs/heads/master@{#17929}
> > > > > Committed: aec49d2b49
> > > >
> > > > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > > > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > > > BUG=webrtc:5880
> > > >
> > > > Review-Url: https://codereview.webrtc.org/2852303002
> > > > Cr-Commit-Position: refs/heads/master@{#17974}
> > > > Committed: d71ebd70f6
> > >
> > > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > NOPRESUBMIT=true
> > > NOTREECHECKS=true
> > > NOTRY=true
> > > BUG=webrtc:5880
> > >
> > > Review-Url: https://codereview.webrtc.org/2854883002
> > > Cr-Commit-Position: refs/heads/master@{#17978}
> > > Committed: 6e6a485a02
> >
> > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> >
> > BUG=webrtc:5880
> >
> > Review-Url: https://codereview.webrtc.org/2854873003
> > Cr-Commit-Position: refs/heads/master@{#18006}
> > Committed: 3870a071c4
>
> TBR=mflodman@webrtc.org,perkj@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5880
>
> Review-Url: https://codereview.webrtc.org/2853383005
> Cr-Commit-Position: refs/heads/master@{#18008}
> Committed: 61b22dde13

TBR=mflodman@webrtc.org,perkj@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:5880

Review-Url: https://codereview.webrtc.org/2867703002
Cr-Commit-Position: refs/heads/master@{#18081}
2017-05-10 12:25:59 +00:00
jtteh
5171a7f58c iOS audio session isInterrupted flag does not get reset correctly:
BUG=webrtc:7605

Review-Url: https://codereview.webrtc.org/2872953002
Cr-Commit-Position: refs/heads/master@{#18072}
2017-05-09 22:09:37 +00:00
zstein
7cb69d5cc7 This will allow me to test that Call invokes SendSideCongestionController::SetBweBitrates as expected (for https://codereview.chromium.org/2793913008).
FakeRtpTransportController moves to a common header and its constructor is changed to take a SendSideCongestionController to enable injecting the mock.

BUG=webrtc:7395

Review-Url: https://codereview.webrtc.org/2834663003
Cr-Commit-Position: refs/heads/master@{#18055}
2017-05-08 18:52:38 +00:00
mellem
90bdb3d138 Make WebRtcAudioEffects and its create method public.
This allows it to be reused with Android AudioRecords created outside
WebRtcAudioRecord.  WebRtcAudioEffects provides useful methods for enabling
hardware effects (such as echo cancellation) only on appropriate devices.  It
also allows some control of these effects through WebRtcAudioUtils.

BUG=webrtc:7448

Review-Url: https://codereview.webrtc.org/2786603004
Cr-Commit-Position: refs/heads/master@{#18053}
2017-05-08 17:21:30 +00:00
ilnik
fc0acc44e6 Remove deprecated API
BUG=none

Review-Url: https://codereview.webrtc.org/2865663002
Cr-Commit-Position: refs/heads/master@{#18044}
2017-05-08 09:59:38 +00:00
ivoc
8f94cd3419 Prevent residual echo likelihood values greater than 1.0.
The residual echo likelihood should report a likelihood between 0.0 and 1.0. Currently it can happen that echo likelihoods > 1.0 are reported. As a temporary mitigation to stop this, this CL enforces a hard maximum of 1.0 for the echo likelihood while we investigate the issue further.

BUG=b/38014838

Review-Url: https://codereview.webrtc.org/2861123002
Cr-Commit-Position: refs/heads/master@{#18030}
2017-05-05 12:50:10 +00:00
henrik.lundin
2979f55f95 NetEq: Fix a bug in expand_rate and speech_expand_rate calculation
After a Merge operation, the statistics for number of samples
generated using Expand must be corrected, and the correction can in
fact be negative. However, a bug was introduced in
https://codereview.webrtc.org/1230503003 which uses a size_t to
represent the correction, which leads to wrap-around of the negative
value. This is not a problem in itself, since this value is added to
another size_t, with the effect that the desired subtraction happens
anyway.

The actual problem arises if the statistics are polled/reset before a
subtraction happens -- that is, between an Expand and a Merge
operation. This will lead to an actual wrap-around of the stats value,
and large expand_rate (16384) is reported.

BUG=webrtc:7554

Review-Url: https://codereview.webrtc.org/2859483005
Cr-Commit-Position: refs/heads/master@{#18029}
2017-05-05 12:04:16 +00:00
henrika
999445a1bb Blacklisting of HW-AEC/NS and OpenSL must now be done by the WebRTC client.
BUG=NONE

Review-Url: https://codereview.webrtc.org/2858263002
Cr-Commit-Position: refs/heads/master@{#18025}
2017-05-05 09:03:32 +00:00
philipel
d1d247fa3c Don't initiate perodic probing if we don't have a bandwidth estimate.
BUG=webrtc:7582

Review-Url: https://codereview.webrtc.org/2861673006
Cr-Commit-Position: refs/heads/master@{#18018}
2017-05-04 15:35:52 +00:00
pbos
51f083ccb2 Remove layer_sync from TL frame config.
This is instead derived from pattern_idx inside the frame config.

This also removes active_layer_ use from
ScreenshareLayers::PopulateCodecSpecific and instead ties the layer to
TemporalLayers::FrameConfig.

BUG=chromium:702017, webrtc:7349
R=sprang@webrtc.org

Review-Url: https://codereview.webrtc.org/2860063002
Cr-Commit-Position: refs/heads/master@{#18017}
2017-05-04 13:39:04 +00:00
henrik.lundin
02739d9149 NetEqTest: Extend the callback structure
This change allows more callbacks to be registered to the test object.
The callbacks are used to give the user of the test object the ability
to instrument the test object. This CL specifically adds
instrumentation points just after a packet is inserted into NetEq, and
just after audio is pulled out of NetEq.

BUG=webrtc:7467

Review-Url: https://codereview.webrtc.org/2851383004
Cr-Commit-Position: refs/heads/master@{#18014}
2017-05-04 13:09:06 +00:00
pbos
18ad1d4008 Derive current layer from TL frame config.
Partially removes "current frame" state from TemporalLayers, aiming to
tie more state to the frame config being encoded. This is necessary for
having several outstanding frames being encoded.

Also renames several structs, since TemporalReferences contains more
than references it's renamed TemporalLayers::FrameConfig.

BUG=chromium:702017, webrtc:7349
R=sprang@webrtc.org

Review-Url: https://codereview.webrtc.org/2853073004
Cr-Commit-Position: refs/heads/master@{#18012}
2017-05-04 12:04:46 +00:00
nisse
61b22dde13 Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2854873003/ )
Reason for revert:
More downstream breakage discovered.

Original issue's description:
> Reland of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2854883002/ )
>
> Reason for revert:
> Will make another attempt to track down and fix downstream projects.
>
> Original issue's description:
> > Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2852303002/ )
> >
> > Reason for revert:
> > Unfortunately, more downstream updates needed.
> >
> > Original issue's description:
> > > Reland of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2845333002/ )
> > >
> > > Reason for revert:
> > > Downstream projects being updated.
> > >
> > > For Chrome, relanding depends on cl
> > > https://codereview.chromium.org/2855783003/
> > >
> > > Original issue's description:
> > > > Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #17 id:320001 of https://codereview.webrtc.org/2622263002/ )
> > > >
> > > > Reason for revert:
> > > > Broke Chrome build, see, e.g.,
> > > > http://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/16237
> > > >
> > > > Original issue's description:
> > > > > Delete deprecated and transitional stuff related to video frame refactoring.
> > > > >
> > > > > BUG=webrtc:5880
> > > > >
> > > > > Review-Url: https://codereview.webrtc.org/2622263002
> > > > > Cr-Commit-Position: refs/heads/master@{#17928}
> > > > > Committed: 713a3bbcc7
> > > >
> > > > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > > NOPRESUBMIT=true
> > > > NOTREECHECKS=true
> > > > NOTRY=true
> > > > BUG=webrtc:5880
> > > >
> > > > Review-Url: https://codereview.webrtc.org/2845333002
> > > > Cr-Commit-Position: refs/heads/master@{#17929}
> > > > Committed: aec49d2b49
> > >
> > > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > > BUG=webrtc:5880
> > >
> > > Review-Url: https://codereview.webrtc.org/2852303002
> > > Cr-Commit-Position: refs/heads/master@{#17974}
> > > Committed: d71ebd70f6
> >
> > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:5880
> >
> > Review-Url: https://codereview.webrtc.org/2854883002
> > Cr-Commit-Position: refs/heads/master@{#17978}
> > Committed: 6e6a485a02
>
> TBR=mflodman@webrtc.org,perkj@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
>
> BUG=webrtc:5880
>
> Review-Url: https://codereview.webrtc.org/2854873003
> Cr-Commit-Position: refs/heads/master@{#18006}
> Committed: 3870a071c4

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

Review-Url: https://codereview.webrtc.org/2853383005
Cr-Commit-Position: refs/heads/master@{#18008}
2017-05-04 09:11:12 +00:00
nisse
3870a071c4 Reland of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2854883002/ )
Reason for revert:
Will make another attempt to track down and fix downstream projects.

Original issue's description:
> Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2852303002/ )
>
> Reason for revert:
> Unfortunately, more downstream updates needed.
>
> Original issue's description:
> > Reland of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #1 id:1 of https://codereview.webrtc.org/2845333002/ )
> >
> > Reason for revert:
> > Downstream projects being updated.
> >
> > For Chrome, relanding depends on cl
> > https://codereview.chromium.org/2855783003/
> >
> > Original issue's description:
> > > Revert of Delete deprecated and transitional stuff related to video frame refactoring. (patchset #17 id:320001 of https://codereview.webrtc.org/2622263002/ )
> > >
> > > Reason for revert:
> > > Broke Chrome build, see, e.g.,
> > > http://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/16237
> > >
> > > Original issue's description:
> > > > Delete deprecated and transitional stuff related to video frame refactoring.
> > > >
> > > > BUG=webrtc:5880
> > > >
> > > > Review-Url: https://codereview.webrtc.org/2622263002
> > > > Cr-Commit-Position: refs/heads/master@{#17928}
> > > > Committed: 713a3bbcc7
> > >
> > > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > NOPRESUBMIT=true
> > > NOTREECHECKS=true
> > > NOTRY=true
> > > BUG=webrtc:5880
> > >
> > > Review-Url: https://codereview.webrtc.org/2845333002
> > > Cr-Commit-Position: refs/heads/master@{#17929}
> > > Committed: aec49d2b49
> >
> > TBR=mflodman@webrtc.org,perkj@webrtc.org
> > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > BUG=webrtc:5880
> >
> > Review-Url: https://codereview.webrtc.org/2852303002
> > Cr-Commit-Position: refs/heads/master@{#17974}
> > Committed: d71ebd70f6
>
> TBR=mflodman@webrtc.org,perkj@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5880
>
> Review-Url: https://codereview.webrtc.org/2854883002
> Cr-Commit-Position: refs/heads/master@{#17978}
> Committed: 6e6a485a02

TBR=mflodman@webrtc.org,perkj@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true

BUG=webrtc:5880

Review-Url: https://codereview.webrtc.org/2854873003
Cr-Commit-Position: refs/heads/master@{#18006}
2017-05-04 08:03:41 +00:00
glaznev
49c8f26ad1 Initial implementation of Android audio playback error handling.
BUG=b/34128648

Review-Url: https://codereview.webrtc.org/2861573002
Cr-Commit-Position: refs/heads/master@{#18002}
2017-05-03 18:32:39 +00:00
peah
5d153c76c6 Reland of Added ARM Neon SIMD optimizations for AEC3 (patchset #1 id:1 of https://codereview.webrtc.org/2856113003/ )
Reason for revert:
The original patch set was correct, but the Chromium bug number needed to be corrected.

Original issue's description:
> Revert of Added ARM Neon SIMD optimizations for AEC3 (patchset #2 id:970001 of https://codereview.webrtc.org/2834073005/ )
>
> Reason for revert:
> The bug number for the chromium bug was wrong.
>
> Original issue's description:
> > Added ARM Neon optimizations for AEC3
> >
> > This CL adds Neon SIMD optimizations for AEC3 on ARM, resulting
> > in an 8 times complexity reduction. The optimizations are basically
> > identical to what was already in place for SSE2.
> >
> > BUG=chromium:14993, webrtc:6018
> >
> > Review-Url: https://codereview.webrtc.org/2834073005
> > Cr-Commit-Position: refs/heads/master@{#17993}
> > Committed: f246b91eba
>
> TBR=ivoc@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:14993, webrtc:6018
>
> Review-Url: https://codereview.webrtc.org/2856113003
> Cr-Commit-Position: refs/heads/master@{#17994}
> Committed: b70f8cfd4d

TBR=ivoc@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:714993, webrtc:6018

Review-Url: https://codereview.webrtc.org/2862573002
Cr-Commit-Position: refs/heads/master@{#17997}
2017-05-03 13:45:44 +00:00
mbonadei
c66e7c1ca6 Revert of Extract iOS SDK helpers to separate target. (patchset #1 id:1 of https://codereview.webrtc.org/2852323003/ )
Reason for revert:
It is still breaking chromium trybots:

Undefined symbols for architecture x86_64:
  "base::allocator::g_replaced_default_zone", referenced from:
      base::allocator::IsAllocatorInitialized() in libbase.a(allocator_check.o)
ld: symbol(s) not found for architecture x86_64

Original issue's description:
> Reland of Extract iOS SDK helpers to separate target. (patchset #1 id:1 of https://codereview.webrtc.org/2853273002/ )
>
> Reason for revert:
> Trying to reland after: https://codereview.webrtc.org/2855103003.
>
> Original issue's description:
> > Revert of Extract iOS SDK helpers to separate target. (patchset #3 id:40001 of https://codereview.webrtc.org/2849823002/ )
> >
> > Reason for revert:
> > https://chromium.googlesource.com/external/webrtc/+/3c1e558449309be965815e1bf...
> >
> > I suspect this breaks Chrome ios.
> > https://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/bu...
> > https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Ftryserver.chromium.mac%2...
> >
> > Undefined symbols for architecture x86_64:
> >   "base::allocator::g_replaced_default_zone", referenced from:
> >       base::allocator::IsAllocatorInitialized() in libbase.a(allocator_check.o)
> > ld: symbol(s) not found for architecture x86_64
> > clang: error: linker command failed with exit code 1 (use -v to see invocation)
> > Traceback (most recent call last):
> >   File "../../build/toolchain/mac/linker_driver.py", line 229, in <module>
> >     Main(sys.argv)
> >   File "../../build/toolchain/mac/linker_driver.py", line 79, in Main
> >     subprocess.check_call(compiler_driver_args)
> >   File
> > "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py",
> > line 540, in check_call
> >     raise CalledProcessError(retcode, cmd)
> >
> > Original issue's description:
> > > Extract iOS SDK helpers to separate target.
> > >
> > > This will reduce the redundant objects built
> > > in Chromium when opening up test_support for the fuzzer
> > > tests.
> > >
> > > BUG=webrtc:6828
> > > NOTRY=True
> > >
> > > Review-Url: https://codereview.webrtc.org/2849823002
> > > Cr-Commit-Position: refs/heads/master@{#17972}
> > > Committed: 3c1e558449
> >
> > TBR=mbonadei@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:6828
> >
> > Review-Url: https://codereview.webrtc.org/2853273002
> > Cr-Commit-Position: refs/heads/master@{#17979}
> > Committed: 80e230239e
>
> TBR=kjellander@webrtc.org,perkj@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:6828
>
> Review-Url: https://codereview.webrtc.org/2852323003
> Cr-Commit-Position: refs/heads/master@{#17992}
> Committed: fafd6d850d

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

Review-Url: https://codereview.webrtc.org/2857953003
Cr-Commit-Position: refs/heads/master@{#17995}
2017-05-03 13:42:05 +00:00
peah
b70f8cfd4d Revert of Added ARM Neon SIMD optimizations for AEC3 (patchset #2 id:970001 of https://codereview.webrtc.org/2834073005/ )
Reason for revert:
The bug number for the chromium bug was wrong.

Original issue's description:
> Added ARM Neon optimizations for AEC3
>
> This CL adds Neon SIMD optimizations for AEC3 on ARM, resulting
> in an 8 times complexity reduction. The optimizations are basically
> identical to what was already in place for SSE2.
>
> BUG=chromium:14993, webrtc:6018
>
> Review-Url: https://codereview.webrtc.org/2834073005
> Cr-Commit-Position: refs/heads/master@{#17993}
> Committed: f246b91eba

TBR=ivoc@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:14993, webrtc:6018

Review-Url: https://codereview.webrtc.org/2856113003
Cr-Commit-Position: refs/heads/master@{#17994}
2017-05-03 13:40:47 +00:00
peah
f246b91eba Added ARM Neon optimizations for AEC3
This CL adds Neon SIMD optimizations for AEC3 on ARM, resulting
in an 8 times complexity reduction. The optimizations are basically
identical to what was already in place for SSE2.

BUG=chromium:14993, webrtc:6018

Review-Url: https://codereview.webrtc.org/2834073005
Cr-Commit-Position: refs/heads/master@{#17993}
2017-05-03 13:28:59 +00:00