13440 Commits

Author SHA1 Message Date
magjed
b471d1cffb Android EglBase: Include EGL error code in exceptions
This CL appends the EGL error code in exceptions after an EGL function
fails. This information is helpful when debugging.

BUG=webrtc:6350

Review-Url: https://codereview.webrtc.org/2338033002
Cr-Commit-Position: refs/heads/master@{#14208}
2016-09-14 09:40:58 +00:00
kthelgason
194f40a2e7 Refactor QualityScaler and MovingAverage
The MovingAverage class was very specific to the QualityScaler. This
commit generalizes the MovingAverage class to be useful in other
situations as well, and adapts the QualityScaler to use the new
MovingAverage.

BUG=webrtc:6304

Review-Url: https://codereview.webrtc.org/2310853002
Cr-Commit-Position: refs/heads/master@{#14207}
2016-09-14 09:15:02 +00:00
nisse
a075848ebd New method TimestampAligner::TranslateTimestamp
Also enforce a minimum inter-frame interval of 1 ms,
fix a bug in the clipping logic, and improve comments.

BUG=webrtc:5740

Review-Url: https://codereview.webrtc.org/2325563002
Cr-Commit-Position: refs/heads/master@{#14206}
2016-09-14 07:37:03 +00:00
maxmorin
f8a4ecc4a1 Remove dependency of audio_device on metrics_default.
BUG=webrtc:6349
NOTRY=True

Review-Url: https://codereview.webrtc.org/2338813002
Cr-Commit-Position: refs/heads/master@{#14205}
2016-09-14 07:20:26 +00:00
danilchap
17366bc090 Remove handling unused rtcp packets.
App, ExtendedJitterReport and VoipMetric in ExtenedReports are not
used when received (no callbacks, no state change), so removed.

BUG=webrtc:5260

Review-Url: https://codereview.webrtc.org/2320703003
Cr-Commit-Position: refs/heads/master@{#14204}
2016-09-14 06:54:55 +00:00
nisse
cdf37a9293 Delete Timing class, timing.h, and update all users.
BUG=webrtc:6324

Review-Url: https://codereview.webrtc.org/2290203002
Cr-Commit-Position: refs/heads/master@{#14203}
2016-09-14 06:41:55 +00:00
peah
d29e3ea4b2 Added build flag around the Intelligibility enhancer performance test code
BUG=chromium:641931

Review-Url: https://codereview.webrtc.org/2294093004
Cr-Commit-Position: refs/heads/master@{#14202}
2016-09-14 04:42:43 +00:00
minyue
caa9cb2cea Adding basic implementation of AudioNetworkAdaptor.
The basic implementation of AudioNetworkAdaptor include the introduction of
  1. Controller
  2. ControllerManager

ControllerManager is to hold all needed controllers. It also orders them according to their significance in dealing with current network condition.

Controller provides an interface MakeDecision, which has to be implemented by specific controllers. AudioNetworkAdaptorImpl calls MakeDecision of the controllers in the order decided by ControllerManager to collect EncoderRuntimeConfig.

BUG=webrtc:6303

Review-Url: https://codereview.webrtc.org/2306083002
Cr-Commit-Position: refs/heads/master@{#14201}
2016-09-13 20:34:22 +00:00
danilchap
dd12892ede Reland of Make rtcp parsing implementation private in RtcpReceiver (patchset #1 id:1 of https://codereview.webrtc.org/2332673003/ )
Reason for revert:
Fuzzer changed not use functions moved to private.

Original issue's description:
> Revert of Make rtcp parsing implementation private in RtcpReceiver (patchset #1 id:1 of https://codereview.webrtc.org/2320603002/ )
>
> Reason for revert:
> Breaks fuzzer compilation.
>
> Original issue's description:
> > Make rtcp parsing implementation private in RtcpReceiver:
> > Function just for Parse and for Callbacks moved to private section.
> > All handles moved from protected to private section.
> >
> > BUG=webrtc:5260
> > R=sprang@webrtc.org
> >
> > Committed: https://crrev.com/faf708e238c7b43a732fbebf79ac9298b4b95a95
> > Cr-Commit-Position: refs/heads/master@{#14181}
>
> TBR=sprang@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5260
>
> Committed: https://crrev.com/180e4525ca7c9a23602cdf37a8756df7d23e7143
> Cr-Commit-Position: refs/heads/master@{#14182}

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

Review-Url: https://codereview.webrtc.org/2336213002
Cr-Commit-Position: refs/heads/master@{#14200}
2016-09-13 19:23:33 +00:00
kwiberg
d59d3bb117 Replace a DCHECK with static_assert
This requires marking a bunch of compile-time constants "constexpr"
instead of just "const".

Review-Url: https://codereview.webrtc.org/2335483003
Cr-Commit-Position: refs/heads/master@{#14199}
2016-09-13 14:49:41 +00:00
solenberg
ba56b6c7d2 Moved webrtc/test/channel_transport/ into webrtc/voice_engine/test/
Only used in VoE tests so I'm moving it in under voice_engine/ until we've removed its usage and can deprecate.

Note: submitting this with PRESUBMIT=false because the files do not adhere to style guide conventions and I'd rather change that in a separate CL.

BUG=
NOPRESUBMIT=true

Committed: https://crrev.com/ade2a038a9290ee0c85d8c682eba5447aca943cd
Review-Url: https://codereview.webrtc.org/2319583005
Cr-Original-Commit-Position: refs/heads/master@{#14191}
Cr-Commit-Position: refs/heads/master@{#14198}
2016-09-13 14:29:19 +00:00
charujain
bb723e53b4 Fixed video_loopback target.
Moved it inside the rtc_include_tests if clause
so that it build only when tests flag is set to true.

NOTRY=True

BUG=31425205

Review-Url: https://codereview.webrtc.org/2337463002
Cr-Commit-Position: refs/heads/master@{#14197}
2016-09-13 12:52:54 +00:00
Danil Chapovalov
2b2779f3f1 Make CopyOnWriteBuffer keep capacity
for SetData and Clear functions too.

This way result of all functions is same
for shared and non-shared buffer cases

R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14196}
2016-09-13 12:15:23 +00:00
Danil Chapovalov
9708884c31 Update rtcp receiver fuzzer to use generic function
IncomingPacket(const uint8_t* packet, size_t size)
instead of implementation specific
IncomingRTCPPacket(PacketInfo* out, Parser* in)
This would allow switch parse implementation

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

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

Cr-Commit-Position: refs/heads/master@{#14195}
2016-09-13 10:41:53 +00:00
brandtr
6631e8a21b Minor fixes in FEC and RtpSender{,Video}
- Rename GetNumberOfFecPackets -> NumFecPackets and
  PacketOverhead -> MaxPacketOverhead in ForwardErrorCorrection.
- Rename FECPacketOverhead -> FecPacketOverhead in ProducerFec.
- Move ownership of ForwardErrorCorrection from RTPSenderVideo
  to ProducerFec.
- Make MaxPacketOverhead a member function of ForwardErrorCorrection.
  This will allow for changing it, based on FEC header types, later on.

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2275443002
Cr-Commit-Position: refs/heads/master@{#14194}
2016-09-13 10:23:34 +00:00
solenberg
07d9e545ff Revert of Moved webrtc/test/channel_transport/ into webrtc/voice_engine/test/ (patchset #7 id:120001 of https://codereview.webrtc.org/2319583005/ )
Reason for revert:
Breaks downstream code

Original issue's description:
> Moved webrtc/test/channel_transport/ into webrtc/voice_engine/test/
>
> Only used in VoE tests so I'm moving it in under voice_engine/ until we've removed its usage and can deprecate.
>
> Note: submitting this with PRESUBMIT=false because the files do not adhere to style guide conventions and I'd rather change that in a separate CL.
>
> BUG=
> NOPRESUBMIT=true
>
> Committed: https://crrev.com/ade2a038a9290ee0c85d8c682eba5447aca943cd
> Cr-Commit-Position: refs/heads/master@{#14191}

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

Review-Url: https://codereview.webrtc.org/2336123002
Cr-Commit-Position: refs/heads/master@{#14193}
2016-09-13 08:24:10 +00:00
kwiberg
22487b2d0a webrtc/base: Use RTC_DCHECK() instead of assert()
Review-Url: https://codereview.webrtc.org/2325623002
Cr-Commit-Position: refs/heads/master@{#14192}
2016-09-13 08:17:19 +00:00
solenberg
ade2a038a9 Moved webrtc/test/channel_transport/ into webrtc/voice_engine/test/
Only used in VoE tests so I'm moving it in under voice_engine/ until we've removed its usage and can deprecate.

Note: submitting this with PRESUBMIT=false because the files do not adhere to style guide conventions and I'd rather change that in a separate CL.

BUG=
NOPRESUBMIT=true

Review-Url: https://codereview.webrtc.org/2319583005
Cr-Commit-Position: refs/heads/master@{#14191}
2016-09-13 08:10:54 +00:00
peah
88ac853e14 The current scheme for setting parameters and specifying the
behavior of the audio processing module is quite complex and hard to
implement in a threadsafe and efficient manner. Therefore a new
scheme for setting the parameters in the audio processing module is
introduced in this CL.

The idea is to roll this scheme out gradually and as a first functionality
in the audio processing module where this is applied the level controller
was chosen. This CL includes the replacement of the Config-based
level controller scheme with the new scheme.

TBR=henrik.lundin@webrtc.org, solenberg@webrtc.org,
BUG=webrtc:5298

Review-Url: https://codereview.webrtc.org/2338493002
Cr-Commit-Position: refs/heads/master@{#14190}
2016-09-12 23:47:32 +00:00
Irfan Sheriff
b2540bb99f Probing: Add support for exponential startup probing
Adds support for exponentially probing the bandwidth at start-up to allow
ramp-up to real capacity of the network.

BUG=webrtc:6332
R=philipel@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14189}
2016-09-12 19:29:05 +00:00
peah
a421ddd60e The buffering of the farend signal is refactored in this CL.
The former buffering scheme was overly complicated and
complex as.
-It buffered twice as many data points as needed.
-It used the ring_buffer C functionality directly inside the
 delay adjustment functionality which makes that
functionality very hard to read.

In order to overcome these problems this CL does
-Change the buffering to buffer only the amount of samples
 needed.
-Wrap the ring_buffer C functionality in a wrapper class
 with methods that are more descriptive in what they do
 to affect the AEC delay.

Additional notes:
-Some minor other name changes/code changes were also
 introduced.
-The ringbuffer C functionality should be removed, but now
 is not the time to do it as the rest of the code is very
 adapted to the wrapping behavior of the ringbuffer. It is
 better to simplify the surrounding code before doing that.

The changes have been tested to be bitexact.

This CL is chained to the CL https://codereview.webrtc.org/2321483002/
and will be followed by another CL.

BUG=webrtc:5298, webrtc:6018

Review-Url: https://codereview.webrtc.org/2319693003
Cr-Commit-Position: refs/heads/master@{#14188}
2016-09-12 18:27:20 +00:00
sakal
b3f7876a95 Add printStackTrace method to CameraCapturer.
The method can be used to print the stack trace of the camera thread in
error conditions.

BUG=webrtc:6148

Review-Url: https://codereview.webrtc.org/2332693002
Cr-Commit-Position: refs/heads/master@{#14187}
2016-09-12 14:35:21 +00:00
Erik Språng
78ce619a0c Extract simulcast rate allocation outside of video encoder.
This is a first step to refactor this code.
I'm deprecating https://codereview.webrtc.org/1913073002 and
implementing this in smaller more isolated steps.

BUG=webrtc:5206
R=asapersson@webrtc.org, kjellander@webrtc.org, noahric@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#14186}
2016-09-12 14:04:56 +00:00
kjellander
7b11c65a17 MB: Move iOS GYP bots to use limited support config
BUG=webrtc:5949
NOTRY=True

Review-Url: https://codereview.webrtc.org/2325063002
Cr-Commit-Position: refs/heads/master@{#14185}
2016-09-12 12:34:01 +00:00
peah
8e56521143 The output signal of the AEC needs to be buffered as the
internal block size of the AEC differ from the frame
size in the AEC output.

Before this CL, this buffering was done using ringbuffers
as well as secondary internal AEC buffers that were stored
on the state. The internal buffers were redundant, and the
ringbuffers were so short that the benefit of using
ringbuffers were lost.

This CL addresses the above issues by replacing the
ringbuffers by linear buffers. This has the main advantage
of cleaner code but it should significantly less
computational complex.

Furthermore, as the complexity of the function where the
conversion to external and internal AEC frame sizes is done
increased significantly with the changes in this CL, the
CL also include refactoring the near-end buffer handling
to increase readability and reduce code repetition.

After the changes in this CL it is very clear that the
former buffering of the output was incorrectly done for
the first frames. This CL corrects that but in doing that
it breaks the bitexactness with the former code.
The bitexactness is, however, only broken for the first
1000 samples and it has been verified that for a test suite
the CL maintains bitexactness in the AEC output
after the first 1000 samples.

This CL is chained to the CL https://codereview.webrtc.org/2311833002/ and will be
followed by more CLs that refactor the other buffers
inside the AEC.

BUG=webrtc:5298, webrtc:6018

Review-Url: https://codereview.webrtc.org/2321483002
Cr-Commit-Position: refs/heads/master@{#14184}
2016-09-12 11:49:50 +00:00
Danil Chapovalov
a64a2fbf6d Fix oversized rtp extension parsing.
When size of individual one-byte extension span beyound extension block

BUG=chromium:645201
R=brandtr@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14183}
2016-09-12 09:41:44 +00:00
danilchap
180e4525ca Revert of Make rtcp parsing implementation private in RtcpReceiver (patchset #1 id:1 of https://codereview.webrtc.org/2320603002/ )
Reason for revert:
Breaks fuzzer compilation.

Original issue's description:
> Make rtcp parsing implementation private in RtcpReceiver:
> Function just for Parse and for Callbacks moved to private section.
> All handles moved from protected to private section.
>
> BUG=webrtc:5260
> R=sprang@webrtc.org
>
> Committed: https://crrev.com/faf708e238c7b43a732fbebf79ac9298b4b95a95
> Cr-Commit-Position: refs/heads/master@{#14181}

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

Review-Url: https://codereview.webrtc.org/2332673003
Cr-Commit-Position: refs/heads/master@{#14182}
2016-09-12 08:40:44 +00:00
Danil Chapovalov
faf708e238 Make rtcp parsing implementation private in RtcpReceiver:
Function just for Parse and for Callbacks moved to private section.
All handles moved from protected to private section.

BUG=webrtc:5260
R=sprang@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14181}
2016-09-12 08:31:23 +00:00
sakal
1a0533dc3d Add statistics for the time it takes to start and stop the camera on Camera2.
BUG=webrtc:6302

Review-Url: https://codereview.webrtc.org/2326483003
Cr-Commit-Position: refs/heads/master@{#14180}
2016-09-12 08:05:28 +00:00
asapersson
6ffb67d049 Add periodic logging of number of captured and dropped frames in VideoCaptureInput. Logged every minute.
BUG=

Review-Url: https://codereview.webrtc.org/2298213002
Cr-Commit-Position: refs/heads/master@{#14179}
2016-09-12 07:10:53 +00:00
kjellander
11d5766819 GN: Revert to default compiler optimizations for Win Release.
Revert back to the GN/Chromium default optimization levels what
was changed in https://codereview.webrtc.org/2307283002/ and
https://codereview.webrtc.org/2305403002/ due to a performance
regression. Those changes caused a size regression in Chromium,
which is why this is changed back.

BUG=chromium:641966
NOTRY=True
TBR=ehmaldonado@webrtc.org, henrik.lundin@webrtc.org

Review-Url: https://codereview.webrtc.org/2334593002
Cr-Commit-Position: refs/heads/master@{#14178}
2016-09-12 06:29:49 +00:00
kjellander
10f606d8de Revert of Introduced new scheme for controlling the functionality inside the audio processing module (patchset #12 id:260001 of https://codereview.webrtc.org/2292863002/ )
Reason for revert:
Interface change in the mock breaks downstream code.

Original issue's description:
> The current scheme for setting parameters and specifying the behavior
> of the audio processing module is quite complex and hard to implement
> in a threadsafe and efficient manner. Therefore a new scheme for setting
> the parameters in the audio processing module is introduced in this CL.
>
> The idea is to roll this scheme out gradually and as a first functionality
> in the audio processing module where this is applied the level controller
> was chosen. This CL includes the replacement of the Config-based
> level controller scheme with the new scheme.
>
> BUG=webrtc:5298
>
> Committed: https://crrev.com/c8bbe3fe9aad9e9a1189a42dcaa8f5d6c261ecc8
> Cr-Commit-Position: refs/heads/master@{#14171}

TBR=solenberg@webrtc.org,henrik.lundin@webrtc.org,peah@webrtc.org
BUG=webrtc:5298
NOTRY=True

Review-Url: https://codereview.webrtc.org/2334583002
Cr-Commit-Position: refs/heads/master@{#14177}
2016-09-12 06:04:37 +00:00
honghaiz
5df5434cef Fix a type mistake
long in c++ is 32 bits. We need 64 bits here.

Review-Url: https://codereview.webrtc.org/2326253002
Cr-Commit-Position: refs/heads/master@{#14176}
2016-09-10 22:48:00 +00:00
peah
2ace3f9406 The audio processing module (APM) relies on two for
functionalities  doing sample-rate conversions:
-The implicit resampling done in the AudioBuffer CopyTo,
 CopyFrom, InterleaveTo and DeinterleaveFrom methods.
-The multi-band splitting scheme.

The selection of rates in these have been difficult and
complicated, partly due to that the APM API which allows
for activating the APM submodules without notifying
the APM.

This CL adds functionality that for each capture frame
polls all submodules for whether they are active or not
and compares this against a cached result.
Furthermore, new functionality is added that based on the
results of the comparison do a reinitialization of the APM.

This has several advantages
-The code deciding on whether to analysis and synthesis is
 needed for the bandsplitting can be much simplified and
 centralized.
-The selection of the processing rate can be done such as
 to avoid the implicit resampling that was in some cases
 unnecessarily done.
-The optimization for whether an output copy is needed
 that was done to improve performance due to the implicit
 resampling is no longer needed, which simplifies the
 code and makes it less error-prone in the sense that
 is no longer neccessary to keep track of whether any
 module has changed the signal.

Finally, it should be noted that the polling of the state
for all the submodules was done previously as well, but in
a less obvious and distributed manner.

BUG=webrtc:6181, webrtc:6220, webrtc:5298, webrtc:6296, webrtc:6298, webrtc:6297

Review-Url: https://codereview.webrtc.org/2304123002
Cr-Commit-Position: refs/heads/master@{#14175}
2016-09-10 11:42:36 +00:00
asapersson
1d02d3e5e6 Remove RTC_LOGGED_* macro.
BUG=

Review-Url: https://codereview.webrtc.org/2326843003
Cr-Commit-Position: refs/heads/master@{#14174}
2016-09-10 05:40:34 +00:00
Honghai Zhang
d5fff5040c Removing assert error when we fail to create a connection for a ping from an unknown address.
It may happen in some legitimate scenarios.
For example a turn port may have had a refresh request timeout, so it won't create a new connection for a ping from an unknown address.

R=deadbeef@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14173}
2016-09-10 03:48:08 +00:00
jackychen
ed0b0dba15 Revert "Optimize Android NV12 capture"
Import breakage in g3.

TBR=magjed@webrtc.org

This reverts commit 36d38cbb153e19bdc3c62a750aba6889da40aac2.

BUG=

Review-Url: https://codereview.webrtc.org/2327893002
Cr-Commit-Position: refs/heads/master@{#14172}
2016-09-09 23:15:15 +00:00
peah
c8bbe3fe9a The current scheme for setting parameters and specifying the behavior
of the audio processing module is quite complex and hard to implement
in a threadsafe and efficient manner. Therefore a new scheme for setting
the parameters in the audio processing module is introduced in this CL.

The idea is to roll this scheme out gradually and as a first functionality
in the audio processing module where this is applied the level controller
was chosen. This CL includes the replacement of the Config-based
level controller scheme with the new scheme.

BUG=webrtc:5298

Review-Url: https://codereview.webrtc.org/2292863002
Cr-Commit-Position: refs/heads/master@{#14171}
2016-09-09 21:17:07 +00:00
Taylor Brandstetter
e753641ef1 Adding ability to simulate EWOULDBLOCK/SignalReadyToSend.
Calling VirtualSocketServer::SetSendingBlocked(true) will simulate the
network interface being blocked, and SetSendingBlocked(false) will
simulate it being unblocked, resulting in SignalReadyToSend if
appropriate.

I plan to use this to write tests for upper layers of code that deal
with EWOULDBLOCK/SignalReadyToSend.

Also doing some minor housekeeping in this CL (using RTC_DCHECK,
renaming variables, etc.).

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

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

Cr-Commit-Position: refs/heads/master@{#14170}
2016-09-09 20:16:25 +00:00
solenberg
fc433e6546 Don't use VoE legacy APIs in force_mic_volume_max tool.
BUG=webrtc:4690

Committed: https://crrev.com/ae9f2bdcef7f3a338ece6f57744c8c8f74d15483
Review-Url: https://codereview.webrtc.org/2268183007
Cr-Original-Commit-Position: refs/heads/master@{#14135}
Cr-Commit-Position: refs/heads/master@{#14169}
2016-09-09 18:05:01 +00:00
noahric
fac0ff022b Change SimulcastEncoderAdapter to allow a 0 for SetRates.
0 means "pause", so forcing it to the min bitrate means we'll never
allow pausing for internal source encoders.

BUG=

Review-Url: https://codereview.webrtc.org/2304603002
Cr-Commit-Position: refs/heads/master@{#14168}
2016-09-09 17:27:20 +00:00
magjed
36d38cbb15 Optimize Android NV12 capture
This CL optimizes the Android capture NV12 -> I420 + scaling code. For
example, when the input is 1280x720 and we adapt to 640x360, this CL:
 - Reduces conversion time from 3.37 ms to 1.46 ms.
 - Reduces memory footprint by 1 MB.

BUG=webrtc:6319

Review-Url: https://codereview.webrtc.org/2317443003
Cr-Commit-Position: refs/heads/master@{#14167}
2016-09-09 16:09:53 +00:00
Danil Chapovalov
291cd8fac3 CopyOnWriteBuffer::SetSize to smaller size memcpy less.
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14166}
2016-09-09 15:32:43 +00:00
solenberg
96f2c4df31 Remove unused audio_e2e_harness.cc and infrastructure.
BUG=webrtc:4690

Review-Url: https://codereview.webrtc.org/2295283004
Cr-Commit-Position: refs/heads/master@{#14165}
2016-09-09 13:51:25 +00:00
Henrik Kjellander
467bc84dc9 Revert webrtc/build/mb_config.pyl accidental change
In https://codereview.webrtc.org/2320043002/ a mb_config.pyl
change that belonged to https://codereview.webrtc.org/2325063002/
accidentally was included.
This reverts it.

TBR=ehmaldonado@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#14164}
2016-09-09 13:07:21 +00:00
Henrik Kjellander
a41c13e6a2 OWNERS: Make everyone able to change *.gn,*.gni files.
Project-wide change to make it possible for all team members
to do changes to GN files.

NOTRY=True
R=kwiberg@webrtc.org
TBR=henrika@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14163}
2016-09-09 12:51:48 +00:00
kwiberg
2b1b7a83ad iSAC fix: Ignore overflow in signed left shift
A left shift by 10 was assumed to never overflow, since "[s]imulation
of the 25 files shows that maximum value in the vector gain_lo_hiQ17[]
is 441344, which means that it is log2((2^31)/441344) = 12.2 shifting
bits from saturation." However, a fuzzer test succeeded in provoking
an overflow, which we ignore in this CL on the theory that only
"abnormal" inputs cause overflow.

Also had to replace a "foo << 1" with "foo * (1 << 1)" in
WEBRTC_SPL_MUL_16_32_RSFT15 because foo could be negative; this
problem showed up as soon as I'd asked UBSan to ignore the overflow
discussed above.

BUG=chromium:615819

Review-Url: https://codereview.webrtc.org/2314413002
Cr-Commit-Position: refs/heads/master@{#14162}
2016-09-09 12:51:38 +00:00
ehmaldonado
53cec04f5c GN: Move audio_coding to public_deps in voice engine
audio_coding should be in public_deps, in order to a define used by
voe_output_test.ccto be exported, as is done in GYP

NOTRY=True
BUG=webrtc:5949

Review-Url: https://codereview.webrtc.org/2321783003
Cr-Commit-Position: refs/heads/master@{#14161}
2016-09-09 12:32:16 +00:00
henrika
f06f35a161 Adds logging of native audio levels and UMA stats to track issues.
This changes added a simple measurement of levels "close to the audio hardware"
both for playout and for recording. These levels are logged once each 10 seconds.

It also adds WebRTC.Audio.RecordedOnlyZeros UMA stat and it is updated at
destuction. It will report true iff all reported recording leves are zero.

BUG=NONE
R=peah@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14160}
2016-09-09 12:23:24 +00:00
Stefan Holmer
99f8e0841a Add a chart for packet loss on incoming streams.
Also add stream names to labels.

R=philipel@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14159}
2016-09-09 11:38:00 +00:00