6455 Commits

Author SHA1 Message Date
magjed
9cbebee523 VideoCapturerAndroid: Use one thread per startCapture()/stopCapture() session
Currently, VideoCapturerAndroid sets the thread and handler in the ctor
and clears them in dispose(). This CL sets the handler in startCapture()
instead and clears it in stopCapture(). The purpose is to prepare for
sending in the SurfaceTextureHelper in startCapture() instead of letting
VideoCapturerAndroid create it in the ctor.

All access to the handler is now synchronized by a lock, and all
Runnables are posted with a token so that they can be removed all at
once in stopCapture() to guarantee that no pending operation will be
executed after stopCapture().

BUG=webrtc:5519

Review URL: https://codereview.webrtc.org/1763673002

Cr-Commit-Position: refs/heads/master@{#11939}
2016-03-10 10:16:38 +00:00
sprang
1b3530b4df Make rtc::TimestampWrapAroundHandler handle backwards wrapping
Also fix a timestamp issue in video analyzer test.

BUG=webrtc:5637, webrtc:5537

Review URL: https://codereview.webrtc.org/1779773002

Cr-Commit-Position: refs/heads/master@{#11938}
2016-03-10 09:33:01 +00:00
hta
6b4f839c53 Adds a test for an one-way media PeerConnection.
This involves changing a few verification functions for frames
received so that they always accept the result if there's no stream.

BUG=

Review URL: https://codereview.webrtc.org/1772353002

Cr-Commit-Position: refs/heads/master@{#11937}
2016-03-10 08:24:37 +00:00
tkchin
aac3eb2bba Minor ObjC API tweaks.
Adds setConfiguration back and renames statsId back to reportId.

BUG=

Review URL: https://codereview.webrtc.org/1778033002

Cr-Commit-Position: refs/heads/master@{#11936}
2016-03-10 05:49:48 +00:00
Taylor Brandstetter
5de6b753bd If MSID is encoded in both ways, make the SSRC-level one take priority.
BUG=webrtc:5264
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1762003003 .

Cr-Commit-Position: refs/heads/master@{#11933}
2016-03-10 01:02:39 +00:00
perkj
dfc2870380 Revert of Drop the 16kHz sample rate restriction on AECM and zero out higher bands (patchset #3 id:40001 of https://codereview.webrtc.org/1774553002/ )
Reason for revert:
Breaks Android it looks like.
See your own try jobs and
https://build.chromium.org/p/client.webrtc/builders/Android32%20Tests%20%28L%...

Original issue's description:
> Drop the 16kHz sample rate restriction on AECM and zero out higher bands
>
> The restriction has been removed completely and AECM now supports any
> number of higher bands. But this has been achieved by always zeroing out the
> higher bands, instead of applying a constant gain which is the average over half
> of the lower band (like it is done for the AEC), because that would be
> non-trivial to implement and we don't want to spend too much time on AECM, since
> we want to get rid of it in the long term anyway.
>
> R=peah@webrtc.org, solenberg@webrtc.org, tina.legrand@webrtc.org
>
> Committed: https://crrev.com/f687d53aabee0523ce6e9e0636163af8df120e41
> Cr-Commit-Position: refs/heads/master@{#11931}

TBR=peah@webrtc.org,turaj@webrtc.org,tina.legrand@webrtc.org,solenberg@webrtc.org,aluebs@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.webrtc.org/1781893002

Cr-Commit-Position: refs/heads/master@{#11932}
2016-03-10 00:23:32 +00:00
Alex Luebs
f687d53aab Drop the 16kHz sample rate restriction on AECM and zero out higher bands
The restriction has been removed completely and AECM now supports any
number of higher bands. But this has been achieved by always zeroing out the
higher bands, instead of applying a constant gain which is the average over half
of the lower band (like it is done for the AEC), because that would be
non-trivial to implement and we don't want to spend too much time on AECM, since
we want to get rid of it in the long term anyway.

R=peah@webrtc.org, solenberg@webrtc.org, tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1774553002 .

Cr-Commit-Position: refs/heads/master@{#11931}
2016-03-09 15:38:09 +00:00
solenberg
3ecb5c8698 Revert of - Clean up unused voice engine DTMF code. (patchset #4 id:60001 of https://codereview.webrtc.org/1722253002/ )
Reason for revert:
Breaks Chromium FYI bots for Android. E.g. https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28K%20Nexus5%29/builds/4486/steps/content_browsertests/logs/stdio

Original issue's description:
> - Clean up unused voice engine DTMF code following removal of VoEDtmf APIs.
> - Use better types in AudioSendStream::SendTelephoneEvent() and related methods.
>
> BUG=webrtc:4690
>
> Committed: https://crrev.com/8886c816582a7c6190c5429222cb8096fca302a6
> Cr-Commit-Position: refs/heads/master@{#11927}

TBR=tina.legrand@webrtc.org,henrik.lundin@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1776243003

Cr-Commit-Position: refs/heads/master@{#11930}
2016-03-09 15:32:05 +00:00
Alex Luebs
57ae82929a Convert IntelligibilityEnhancer to multi-threaded mode
BUG=581029
R=henrik.lundin@webrtc.org, peah@webrtc.org, turaj@webrtc.org

Review URL: https://codereview.webrtc.org/1766383002 .

Cr-Commit-Position: refs/heads/master@{#11929}
2016-03-09 15:24:41 +00:00
Danil Chapovalov
c1e55c7136 rtt calculation handles time go backwards
CompactNtpIntervalToMs renamed to CompactNtpRttToMs and handle special cases:
large values consider negative/invalid and result in value of 1.
0 result consider too small and increases to 1.

BUG=590996
R=asapersson@webrtc.org, stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1763823003 .

Cr-Commit-Position: refs/heads/master@{#11928}
2016-03-09 14:14:45 +00:00
solenberg
8886c81658 - Clean up unused voice engine DTMF code following removal of VoEDtmf APIs.
- Use better types in AudioSendStream::SendTelephoneEvent() and related methods.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1722253002

Cr-Commit-Position: refs/heads/master@{#11927}
2016-03-09 11:32:53 +00:00
sprang
16daaa5a40 Fixed incorrect handling of timestamps in video quality test
* Both timestamps must be unwrapped before comparing
* rtp timestamp delta must be subtracted before unwrapping

BUG=webrtc:5637, webrtc:5537

Review URL: https://codereview.webrtc.org/1774123003

Cr-Commit-Position: refs/heads/master@{#11926}
2016-03-09 09:40:53 +00:00
honghaiz
97aacee11d Filter out the network in networkmonitor if the linkProperties is null.
It may be null if the network is unknown.
Also revised the logging to replace network id with network.toString(). They are pretty much the same for logging but network.toString does not need to parse the int value.

BUG=

Review URL: https://codereview.webrtc.org/1774343002

Cr-Commit-Position: refs/heads/master@{#11925}
2016-03-09 04:50:03 +00:00
perkj
0d3eef2080 Add implementation of VideoTrackSource and make VideoCapturerTrackSource inherit from it.
BUG=webrtc:5426
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1773993002 .

Cr-Commit-Position: refs/heads/master@{#11923}
2016-03-09 01:39:33 +00:00
Jon Hjelle
32e0c01b33 Restore type attributes and remove extraneous nullability annotations for Objective-C Mac build
BUG=webrtc:5592
R=tkchin@webrtc.org

Review URL: https://codereview.webrtc.org/1773743002 .

Patch from Jon Hjelle <hjon@andyet.net>.

Cr-Commit-Position: refs/heads/master@{#11922}
2016-03-09 00:04:56 +00:00
Peter Boström
ca8b404e86 Add tracing to interesting media-related methods.
Accounts for a lot of worker-thread blocking by voice-related code or
initializing SRTP.

BUG=
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1780543003 .

Cr-Commit-Position: refs/heads/master@{#11920}
2016-03-08 22:24:21 +00:00
Honghai Zhang
13e433902d Filter out network-change event with a null interface name.
This fixes an Android native crash.
This has happened occasionally.

BUG=
R=glaznev@webrtc.org

Review URL: https://codereview.webrtc.org/1771383002 .

Cr-Commit-Position: refs/heads/master@{#11919}
2016-03-08 21:10:23 +00:00
Taylor Brandstetter
1a018dcda3 Prevent a voice channel from sending data before a source is set.
At the top level, setting a track on an RtpSender is equivalent to
setting a source (previously called a renderer)
on a voice send stream. An RtpSender without a track
is not supposed to send data (not even muted data), so a send stream without
a source shouldn't send data.

Also replacing SendFlags with a boolean and implementing "Start"
and "Stop" methods on AudioSendStream, which was planned anyway
and simplifies this CL.

R=pthatcher@webrtc.org, solenberg@webrtc.org

Review URL: https://codereview.webrtc.org/1741933002 .

Cr-Commit-Position: refs/heads/master@{#11918}
2016-03-08 20:37:48 +00:00
Magnus Jedvert
1ae6a45986 Android VideoCapturerAndroid: Move stopListening() call to stopCaptureOnCameraThread()
switchCamera() only calls stopCaptureOnCameraThread(), not
stopCapture(), so the stopListening() call must be placed there.

BUG=webrtc:5519,b/27497950
R=perkj@webrtc.org

Review URL: https://codereview.webrtc.org/1770423002 .

Cr-Commit-Position: refs/heads/master@{#11917}
2016-03-08 19:38:15 +00:00
tkchin
5ed5ed953d Fix VideoToolbox backgrounding issues.
When the iOS application is not in the foreground, the hardware encoder and
decoder become invalidated. There doesn't seem to be a way to query their state
so we don't know they're invalid until we get an error code after an
encode/decode request. To solve the issue, we just don't encode/decode when the
app is not active, and reinitialize the encoder/decoder when the app is active
again.

Also fixes a leak in the decoder.

BUG=webrtc:4081

Review URL: https://codereview.webrtc.org/1732953003

Cr-Commit-Position: refs/heads/master@{#11916}
2016-03-08 18:51:58 +00:00
glaznev
3816bfd87b Fix incorrect stride information reported by some HW decoders.
BUG=webrtc:4787

Review URL: https://codereview.webrtc.org/1767733002

Cr-Commit-Position: refs/heads/master@{#11915}
2016-03-08 18:35:38 +00:00
glaznev
295c4c276b Reduce camera freeze timeout to 4 sec.
BUG=b/27496394

Review URL: https://codereview.webrtc.org/1776463002

Cr-Commit-Position: refs/heads/master@{#11914}
2016-03-08 18:35:11 +00:00
Alex Luebs
5b830fed07 Drop the restriction on same forward and reverse sample rate on the AudioFrame interface of the APM
R=peah@webrtc.org

Review URL: https://codereview.webrtc.org/1766233003 .

Cr-Commit-Position: refs/heads/master@{#11913}
2016-03-08 17:00:08 +00:00
hbos
b8f7885861 Added webrtc/base/safe_conversions.h as a pseudonym
for webrtc/base/numerics/safe_conversions.h.

This prevents downstream projects from breaking that have not yet been
updated to use the new file path. As soon as they have this file should
be removed.

This is a follow-up to https://codereview.webrtc.org/1753293002/.

TBR=hta@webrtc.org
NOPRESUBMIT=True
NOTRY=True
BUG=webrtc:5548

Review URL: https://codereview.webrtc.org/1774933003

Cr-Commit-Position: refs/heads/master@{#11912}
2016-03-08 15:12:57 +00:00
solenberg
72e29d2cbb On WVoMC::SetSendParameters(), figure out send codec settings ONCE, not for each send stream.
This CL is a first step to moving codec configuration into AudioSendStream.

BUG=webrtc:4690
TBR=ossu@webrtc.org

Review URL: https://codereview.webrtc.org/1765873002

Cr-Commit-Position: refs/heads/master@{#11911}
2016-03-08 14:35:22 +00:00
kwiberg
6030a129c0 Pass ownership of external encoders to the ACM
We want this because otherwise the ACM uses its mutex to protect an
encoder that's owned by someone else. That someone else may easily
slip up and delete or otherwise touch the encoder before making sure
that the ACM has stopped using it, bypassing the lock.

BUG=webrtc:5028

Review URL: https://codereview.webrtc.org/1702943002

Cr-Commit-Position: refs/heads/master@{#11909}
2016-03-08 14:01:37 +00:00
henrik.lundin
bc89de3bca Adding a namespace comment
This was pointed out in https://codereview.webrtc.org/1772583002/.

BUG=webrtc:5607 NOTRY=true
TBR=kwiberg@webrtc.org

Review URL: https://codereview.webrtc.org/1774933002

Cr-Commit-Position: refs/heads/master@{#11908}
2016-03-08 13:20:18 +00:00
hbos
de1c81b2d2 Safe numeric library added: base/numerics (copied from Chromium)
This copies the contents (unittest excluded) of base/numerics in
chromium to base/numerics in webrtc. Files added:
- safe_conversions.h
- safe_conversions_impl.h
- safe_math.h
- safe_math_impl.h

A really old version of safe_conversions[_impl].h previously existed in
base/, this has been deleted and sources using it have been updated
to include the new base/numerics/safe_converions.h.

This CL also adds a DEPS file to webrtc/base.

NOPRESUBMIT=True
BUG=webrtc:5548, webrtc:5623

Review URL: https://codereview.webrtc.org/1753293002

Cr-Commit-Position: refs/heads/master@{#11907}
2016-03-08 12:46:07 +00:00
solenberg
622d8950f5 Remove the VoEDtmf interface.
BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1723153002

Cr-Commit-Position: refs/heads/master@{#11906}
2016-03-08 12:11:00 +00:00
philipel
7b4c9db28a DCHECK fix for https://codereview.webrtc.org/1769113003/
TBR=stefan@webrtc.org

BUG=webrtc:5514

Review URL: https://codereview.webrtc.org/1770373002 .

Cr-Commit-Position: refs/heads/master@{#11905}
2016-03-08 12:06:55 +00:00
philipel
5ab4c6d7e0 Revert "Revert of Implement the NackModule as part of the new jitter buffer. (patchset #19 id:360001 of https://codereview.webrtc.org/1715673002/ )"
This reverts commit eb648bf0e5a9bae185bcd6b4b3be371e1da3507d.

Re-reverting to fix original CL (https://codereview.webrtc.org/1715673002/).

TBR=stefan@webrtc.org, tommi@webrtc.org, torbjorng@webrtc.org

BUG=webrtc:5514

Review URL: https://codereview.webrtc.org/1769113003

Cr-Commit-Position: refs/heads/master@{#11904}
2016-03-08 11:36:22 +00:00
henrik.lundin
55480f5efa Remove the type parameter to NetEq::GetAudio
The type is included in the AudioFrame output parameter.

Rename the type NetEqOutputType to just OutputType, since it is now
internal to NetEq.

BUG=webrtc:5607

Review URL: https://codereview.webrtc.org/1769883002

Cr-Commit-Position: refs/heads/master@{#11903}
2016-03-08 10:38:02 +00:00
henrik.lundin
500c04bc86 Delete VAD methods from AcmReceiver and move functionality inside NetEq
This change essentially does two things:

1. Remove the VAD-related methods from AcmReceiver. These are
EnableVad(), DisableVad(), and vad_enabled(). None of them were used
outside of unit tests.

2. Move the functionality to set AudioFrame::speech_type_ and
AudioFrame::vad_activity_ inside NetEq. This was previously done in
AcmReceiver, but based on information inherently owned by NetEq.

With the change in 2, NetEq's GetAudio interface can be simplified by
removing the output type parameter. This will be done in a follow-up
CL.

BUG=webrtc:5607

Review URL: https://codereview.webrtc.org/1772583002

Cr-Commit-Position: refs/heads/master@{#11902}
2016-03-08 10:36:07 +00:00
asapersson
5249599a9b Update histogram "WebRTC.Video.OnewayDelayInMs" to use the estimated one-way delay.
Previous logged delay was: network delay (rtt/2) + jitter delay + decode time + render delay.

Make capture time in local timebase available for decoded VP9 video frames (propagate ntp_time_ms from EncodedImage to decoded VideoFrame).

BUG=

Review URL: https://codereview.webrtc.org/1688143003

Cr-Commit-Position: refs/heads/master@{#11901}
2016-03-08 10:10:24 +00:00
aluebs
4c279b852c Drop 48kHz sample rate support in the APM for ARM architecture
The 3-band splitting filter is highly complex on this architecture. Today this is not a problem, because on those platforms we mostly use AECM which forces us to downsample to 16kHz anyway, but this is a way of guarding against it. In the long term we want to optimize the 3-band splitting filter for ARM architectures, but for now we can just disable it.

Review URL: https://codereview.webrtc.org/1766103002

Cr-Commit-Position: refs/heads/master@{#11900}
2016-03-08 09:48:25 +00:00
peah
4510bbd5fc Minor cleaning up of the EchoCancellationImpl code
BUG=

Review URL: https://codereview.webrtc.org/1767043002

Cr-Commit-Position: refs/heads/master@{#11899}
2016-03-08 06:50:21 +00:00
perkj
745b297b27 Fix mistake in dummy videotracksource.cc and h
VideoTrackSource will be implemented in an upcoming cl but is needed to be included in libjingle.gyp in Chrome before the cl can be landed.

R=kjellander@webrtc.org

Review URL: https://codereview.webrtc.org/1769343003 .

Cr-Commit-Position: refs/heads/master@{#11897}
2016-03-08 01:55:13 +00:00
perkj
c11b184837 Remove CaptureManager and related calls in ChannelManager.
Removed unused screencast APIs.

BUG=webrtc:5426

Review URL: https://codereview.webrtc.org/1757843003

Cr-Commit-Position: refs/heads/master@{#11896}
2016-03-08 01:35:46 +00:00
peah
6ebc4d3f7d Changed name for the upcoming AEC from NextGenerationAec to AEC3.
BUG=webrtc:5201

Review URL: https://codereview.webrtc.org/1763703002

Cr-Commit-Position: refs/heads/master@{#11895}
2016-03-08 00:59:43 +00:00
perkj
e1d9a4a2c9 i# Enter a description of the change.
Remove implementation in videosource.cc
It should have been part of https://codereview.webrtc.org/1770003002/....
TBR=pthatcher@webrtc.org
BUG=webrtc:5621

Review URL: https://codereview.webrtc.org/1767373002 .

Cr-Commit-Position: refs/heads/master@{#11894}
2016-03-08 00:51:55 +00:00
perkj
a3ede6c510 Renamed VideoSourceInterface to VideoTrackSourceInterface.
Moved VideoSourceInterface to MediaStreamInterface.h
Renamed VideoSourceTest to VideoCapturerTrackSourceTest
Renamed VideoSource to VideoCaptureTrackSource and cl lint and cl format.
BUG=webrtc:5426
TBR=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1770003002 .

Cr-Commit-Position: refs/heads/master@{#11893}
2016-03-08 00:28:03 +00:00
hbos
5291393510 DtlsIdentityStoreInterface::RequestIdentity: const& parameters
Changing from:

virtual void RequestIdentity(
    rtc::KeyParams key_params,
    rtc::Optional<uint64_t> expires,
    const rtc::scoped_refptr<DtlsIdentityRequestObserver>& observer);

to:

virtual void RequestIdentity(
    const rtc::KeyParams& key_params,
    const rtc::Optional<uint64_t>& expires_ms,
    const rtc::scoped_refptr<DtlsIdentityRequestObserver>& observer);

Making FakeDtlsIdentityStore DCHECK that |expires_ms| is not set, since it does not support that parameterization.

In a follow-up chromium CL the new signature will be used.

BUG=webrtc:5092, chromium:544902

Review URL: https://codereview.webrtc.org/1766673002

Cr-Commit-Position: refs/heads/master@{#11892}
2016-03-07 23:14:48 +00:00
kjellander
43942d1f1e Roll chromium_revision 508edd3..35d57a0 (379249:379535)
Change log: 508edd3..35d57a0
Full diff: 508edd3..35d57a0

Changed dependencies:
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/708db16..58218b6
DEPS diff: 508edd3..35d57a0/DEPS

No update to Clang.

TBR=torbjorng@webrtc.org
BUG=webrtc:5634
NOTRY=True

Review URL: https://codereview.webrtc.org/1773543002

Cr-Commit-Position: refs/heads/master@{#11890}
2016-03-07 21:59:15 +00:00
perkj
11e1805a31 Add new empty files for VideoCapturerTrackSource and VideoTrackSource to make Chrome compile when adding implementation.
BUG=webrtc:5621
TBR=kjellander@webrtc.org

Review URL: https://codereview.webrtc.org/1768243002 .

Cr-Commit-Position: refs/heads/master@{#11889}
2016-03-07 21:03:47 +00:00
Honghai Zhang
049fbb1883 Renaming variables in p2ptransportchannel to be consistent.
Also change the type of "time interval" to int from uint32.
Fixed a few TODO therein. I think we should have the following convention:
1. All time delay/intervals should have type int although the time instant should have time uint32_t.
2. "interval" is preferred to "delay" if the delay will be repeated (like rescheduling).

BUG=
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1762863002 .

Cr-Commit-Position: refs/heads/master@{#11888}
2016-03-07 19:13:15 +00:00
kjellander
eb648bf0e5 Revert of Implement the NackModule as part of the new jitter buffer. (patchset #19 id:360001 of https://codereview.webrtc.org/1715673002/ )
Reason for revert:
Unfortunately this breaks in the main waterfall: https://build.chromium.org/p/client.webrtc/builders/Android32%20Builder/builds/6362

I think it's related to dcheck_always_on=1 which is set in GYP_DEFINES only on the trybots, but not on the bots in the main waterfall.

Original issue's description:
> Implement the NackModule as part of the new jitter buffer.
>
> Things done/implemented in this CL:
>   - An interface that can send Nack (VCMNackSender).
>   - An interface that can request KeyFrames (VCMKeyFrameRequestSender).
>   - The nack module (NackModule).
>   - A set of convenience functions for modular numbers (mod_ops.h).
>
> BUG=webrtc:5514
>
> Committed: https://crrev.com/f472c5b6722dfb221f929fc4d3a2b4ca54647701
> Cr-Commit-Position: refs/heads/master@{#11882}

TBR=sprang@webrtc.org,stefan@webrtc.org,terelius@webrtc.org,torbjorng@webrtc.org,perkj@webrtc.org,tommi@webrtc.org,philipel@webrtc.org
BUG=webrtc:5514
NOTRY=True

Review URL: https://codereview.webrtc.org/1771883002

Cr-Commit-Position: refs/heads/master@{#11887}
2016-03-07 17:56:34 +00:00
Danil Chapovalov
96150a6322 [cleanup] fixed macros and includes in rtp_cvo.h
assert macro replaced with RTC_NOTREACHED, added proper include for it.

R=asapersson@webrtc.org, åsapersson

Review URL: https://codereview.webrtc.org/1763973003 .

Cr-Commit-Position: refs/heads/master@{#11886}
2016-03-07 09:55:28 +00:00
asapersson
a2c58e2198 Switch to use new implementation in metrics.h for gathering statistics.
Sparse macro replaced for all audio histograms that have a constant name.

BUG=webrtc:5283

Review URL: https://codereview.webrtc.org/1762863003

Cr-Commit-Position: refs/heads/master@{#11885}
2016-03-07 09:53:08 +00:00
isheriff
7620be8492 Frame dropper improvements & cleanup
1. Fix the case of key frame accumulation being incorrect due to the chunk
    size being computed at the time of leak based on input frame rate. The issue
    is that the count is computed based on key frame ratio and the actual chunk
    size computed from current input frame rate. These can be wildly different
    especially at the beginning of the stream (key frame ratio defaults based
    on 30 fps) resulting in incorrect key frame accumulation causing large frame
    drops when the input frame rate is low.

    2. Add large delta frame compensation. The current code accounts for key frames
    but not large delta frames. This is a common occurence in some application
    (remote desktop as an example)

    3. Fixes an issue identified by the unit tests. The accumulation of
    key frames had an issue in the scenario of a high key frame ratio where
    the full key frame was not being accounted for.

    3. Removes fast mode and other methods that are mostly dead code.

    4. Cleans up variable names as per chromium style.

Review URL: https://codereview.webrtc.org/1750493002

Cr-Commit-Position: refs/heads/master@{#11884}
2016-03-07 07:22:42 +00:00
peah
50e21bd40b This CL introduces namespaces in the aec c++ files
(the ones that were recently moved from c)

There are many files changed but most changes just
consist of adding namespaces.

In aec_common.h an C++-specific #ifdef needed to be added as
that file is both included from C and C++. I could see no
way around that but please let me know if there is a better
way around that.

BUG=webrtc:5201

Review URL: https://codereview.webrtc.org/1766663002

Cr-Commit-Position: refs/heads/master@{#11883}
2016-03-05 16:39:30 +00:00