3638 Commits

Author SHA1 Message Date
Peter Boström
85829fd90c Make QualityScaler more responsive to downgrades.
Permits going from HD to QVGA in 6 seconds instead of 10. Also adds
windows for going up quickly in the beginning of a call (before any
downscaling happens due to bad quality).

BUG=webrtc:5678
R=glaznev@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12219}
2016-04-04 16:11:18 +00:00
skvlad
1c392cc5cf Avoid rescheduling the next RTCP packet if the RTCP sender status doesn't change.
The change made in https://codereview.webrtc.org/1757683002 introduced an extra call to RTCPSender::SetRTCPStatus after the video receive stream is created. The SetRTCPStatus call results in no state change, as the RTCP sender is already enabled, however, it reschedules the next RTCP packet to be RTCP_INTERVAL_VIDEO_MS/2 (500) ms in the future.
Before the change, the next packet time was only set by the previous call to RTCPSender::SetSSRC, which placed it 100 ms in the future. The change, therefore, changed the timing of multiple performance tests - as it now takes a different length of time to ramp up to the same bandwidth.

BUG=chromium:597332

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

Cr-Commit-Position: refs/heads/master@{#12203}
2016-04-01 21:46:54 +00:00
Alejandro Luebs
2d66cf9d8d Tweak kDecayRate in the IntelligibilityEnhancer
This makes the addaptation of the IntelligibilityEnhancer slower, which makes it take more time to kick in or when the background noise changes drastically. But on the other hand, it reduces the risk of clipping and makes the changing in coloring less noticeable.

R=henrik.lundin@webrtc.org, peah@webrtc.org, turaj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12202}
2016-04-01 20:59:44 +00:00
Alejandro Luebs
3b14996046 Fix normalization of noise estimate in NoiseSuppressor
R=henrik.lundin@webrtc.org, peah@webrtc.org, turaj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12201}
2016-04-01 20:54:47 +00:00
brucedawson
d81dc49c5b Fix C4434 warning about 32-bit shift assigned to 64-bits
VS 2015 has a new or louder warning about 32-bit shifts that are then
assigned to a 64-bit target. This type of code triggers it:

int64_t size = 1 << shift_amount;

Because the '1' being shifted is a 32-bit int the result of the shift
will be a 32-bit result, so assigning it to a 64-bit variable is just
misleading.

In this case the code that triggers it is this:

  size_t window_size = static_cast<size_t>(1 << shift_amount);

The destination is a size_t so the warning only shows up on 64-bit
builds and doesn't indicate a real bug. It's curious that the code
had a cast already - presumably to suppress some other warning - but
the cast is not in the ideal place and doesn't avoid this new warning.
Moving the cast allows shift_amount to be log2(size_t) and allows
enabling C4334 in Chromium.

BUG=593448

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

Cr-Commit-Position: refs/heads/master@{#12199}
2016-04-01 17:16:21 +00:00
jackychen
fa0befe13b External denoiser based on noise estimation and moving object detection.
Improved the existing external denoiser in WebRTC: the filter strength
is adaptive based on the noise level of the whole frame and the moving
object detection result. The adaptive filter effectively removes the
artifacts in previous version, such as trailing and blockiness on moving
objects.
The external denoiser is off by default for now.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#12198}
2016-04-01 14:47:06 +00:00
henrik.lundin
cfebcca51b Disable VideoCaptureExternalTest.FrameRate on Mac
The test is flaky.

BUG=webrtc:3270
TBR=mflodman@webrtc.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#12196}
2016-04-01 10:23:19 +00:00
philipel
c707ab7cb0 Packet buffer for the new jitter buffer.
BUG=webrtc:5514
R=stefan@webrtc.org, mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12194}
2016-04-01 09:02:00 +00:00
solenberg
86101e9c08 Remove deprecated RtpReceiver::CreateAudioReceiver() function.
BUG=webrtc:4690

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

Cr-Commit-Position: refs/heads/master@{#12192}
2016-04-01 08:01:33 +00:00
Alejandro Luebs
63a2c13d6d Only split into bands when the reverse stream is analyzed in the APM
BUG=596079
R=henrik.lundin@webrtc.org, peah@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12187}
2016-04-01 01:04:47 +00:00
Alex Glaznev
fecb7c3c50 Use mobile platform settings for VP8 and VP9 decoders on all Android builds.
BUG=b/27877683
R=jackychen@webrtc.org, marpan@google.com, marpan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12185}
2016-03-31 21:23:33 +00:00
kwiberg
4a206a96c1 Remove webrtc::ScopedVector
We can (and should) use std::vector<std::unique_ptr<T>> instead.
Because it's standard, and because it's safer since callers have to
manually wrap elements in std::unique_ptr before inserting them and
manually unwrap them after inserting them.

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

Cr-Commit-Position: refs/heads/master@{#12182}
2016-03-31 17:24:31 +00:00
asapersson
118ef00594 Add histogram stats for average QP per frame for VP8 (for sent video streams):
- "WebRTC.Video.Encoded.Qp.Vp8"
- "WebRTC.Video.Encoded.Qp.Vp8.S0"
- "WebRTC.Video.Encoded.Qp.Vp8.S1"
- "WebRTC.Video.Encoded.Qp.Vp8.S2"

BUG=

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

Cr-Commit-Position: refs/heads/master@{#12174}
2016-03-31 07:00:25 +00:00
peah
9846651cc4 Changed the names of some of the bitexactness unittests to
be similar to the other file names of the tests.

(Also removed a redundant blank line in the highpass filter unittest
file).

BUG=

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

Cr-Commit-Position: refs/heads/master@{#12171}
2016-03-30 22:34:01 +00:00
peah
51fbdd6ada Changed tests to be DISABLED on non-supported platforms rather than not to build at all.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#12170}
2016-03-30 21:58:42 +00:00
danilchap
4b9cad86ce [rtcp] Sdes::Parse updated not to use RTCPUtility
BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#12169}
2016-03-30 20:34:38 +00:00
danilchap
41befcee7d Make rtcp sender use max transfer unit.
Remove packet overhead from rtp sender as unused.

R=philipel, åsapersson

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

Cr-Commit-Position: refs/heads/master@{#12165}
2016-03-30 18:11:55 +00:00
danilchap
367bbbf76d [rtcp] ReceiverReport::Parse updated not to use RTCPUtility
BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#12164}
2016-03-30 16:43:09 +00:00
aluebs
fc737e5442 Fix division by zero in NonlinearBeamformer
BUG=webrtc:5703

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

Cr-Commit-Position: refs/heads/master@{#12163}
2016-03-30 16:37:47 +00:00
peah
7ea928e8e2 Renamed the test::BitExactFrame method to test::VectorDifferenceBounded.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#12162}
2016-03-30 15:14:02 +00:00
Peter Boström
d53c389550 Shorten single-stream VP8 HW implementation names.
Removes "SimulcastEncoderAdapter" from single-stream HW VP8 even though
they are wrapped in a SimulcastEncoderAdapter.

BUG=
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12161}
2016-03-30 15:04:04 +00:00
jbauch
f1f87203d7 Split ByteBuffer into writer/reader objects.
This allows the reader to reference data, thus avoiding unnecessary
allocations and memory copies.

BUG=webrtc:5155,webrtc:5670

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

Cr-Commit-Position: refs/heads/master@{#12160}
2016-03-30 13:43:44 +00:00
kwiberg
0d05da7ee6 Rent-A-Codec: Reference count the shared iSAC bandwidth estimation state
Now that the Rent-A-Codec no longer owns the encoders and decoders it
produces, they may outlive it. It's thus no longer correct for the
Rent-A-Codec to own the bandwidth estimation state; all of the
involved objects need to share ownership.

BUG=webrtc:5028

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

Cr-Commit-Position: refs/heads/master@{#12159}
2016-03-30 11:10:18 +00:00
kwiberg
4cdbd57fe3 AudioCodingModule: Add methods for injecting external encoder stacks
BUG=webrtc:5028

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

Cr-Commit-Position: refs/heads/master@{#12158}
2016-03-30 10:10:15 +00:00
solenberg
1d0313916b Reland https://codereview.webrtc.org/1802993002/
Clean away use of RtpAudioFeedback interface from RTP/RTCP receiver code.

BUG=webrtc:4690

Committed: https://crrev.com/69a81999ace08e40e2b2ec526b0e111aa11b9538
Cr-Commit-Position: refs/heads/master@{#12015}

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

Cr-Commit-Position: refs/heads/master@{#12157}
2016-03-30 09:42:37 +00:00
solenberg
0d343fa39d Remove unused stuff from AudioFrame:
- The interleaved_ field. Never set to anything but 'true'. AudioFrame data appears to always be treated as interleaved.
- The Append() method.
- operator-=().

BUG=

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

Cr-Commit-Position: refs/heads/master@{#12152}
2016-03-29 23:42:12 +00:00
peah
059dadf0c4 Added missing TODOs in the beamformer unit test code.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#12151}
2016-03-29 22:15:14 +00:00
Alejandro Luebs
af2f3dd206 Reland: Add IntelligibilityEnhancer support to audioproc_float
Landed originally here: https://codereview.webrtc.org/1800413002/

TBR=peah@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12150}
2016-03-29 21:54:44 +00:00
Alejandro Luebs
dd56fa8642 Revert "Add IntelligibilityEnhancer support to audioproc_float"
Revert reason: I unintentionally added a patch when rebasing that is breaking the bots.

This reverts commit 98c69a0ee785adeb9d95fffeb55cdb6cedbe82c6.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#12148}
2016-03-29 20:05:46 +00:00
Alejandro Luebs
98c69a0ee7 Add IntelligibilityEnhancer support to audioproc_float
R=peah@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12147}
2016-03-29 19:43:42 +00:00
peah
57d5a2e4df Reland of Added a bitexactness test for the gain controller in the audio processing module.
This is a reland of the CL https://codereview.webrtc.org/1812433002/ which
was reverted due to incorrect bitexactness on Android bots.

The changes done in the relanding CL is to Deactivate the test for Android and reduce the number of interations.

TBR=henrik.lundin@webrtc.org
BUG=webrtc:5339

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

Cr-Commit-Position: refs/heads/master@{#12143}
2016-03-29 16:48:44 +00:00
Henrik Kjellander
b252856d10 Remove all uses of the HAVE_CONFIG_H define.
BUG=
R=henrik.lundin@webrtc.org, pthatcher@google.com, stefan@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12141}
2016-03-29 15:47:28 +00:00
danilchap
2f36c2399e [rtcp] SenderReport::Parse updated not to use RTCPUtility
BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#12140}
2016-03-29 15:02:33 +00:00
peah
ceef04613b Added a bitexactness test for the beamformer in the audio processing module
BUG=webrtc:5341

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

Cr-Commit-Position: refs/heads/master@{#12137}
2016-03-29 12:35:56 +00:00
asapersson
58d992e025 Add macros for ability to log samples that are added to histograms (RTC_LOGGED_*).
Adds logging of:
- video stats that are recorded when a stream is removed
- bitrate stats that are recorded at the end of a call
- initial bwe rampup stats

BUG=

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

Cr-Commit-Position: refs/heads/master@{#12133}
2016-03-29 09:15:11 +00:00
peah
d4f6ea70b5 Re-reland of Added a bitexactness test for the echo canceller in the audio processing module.
This is a reland of the CL https://codereview.webrtc.org/1827833006/ that was reverted due to problems of the bitexactness of the Chromium Android64 and Android32 bots.

The reverting CL was https://codereview.webrtc.org/1827863003/

This new action taken in this CL is to disable the test for all Android, ARM and ARM64 platforms

TBR=henrik.lundin@webrtc.org
BUG=webrtc:5337

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

Cr-Commit-Position: refs/heads/master@{#12131}
2016-03-29 07:37:51 +00:00
peah
4b0c74172e Added a bitexactness test for the intelligibility enhancer in the audio processing module
BUG=webrtc:5242

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

Cr-Commit-Position: refs/heads/master@{#12129}
2016-03-29 06:43:57 +00:00
peah
918d015737 Revert of Added a bitexactness test for the gain controller in the audio processing module. (patchset #3 id:60001 of https://codereview.webrtc.org/1812433002/ )
Reason for revert:
This CL are breaking some of the Android buildbots in Chromium.

The CL will need be be revised to exclude the Android platform.

Original issue's description:
> Added a bitexactness test for the gain controller in the audio processing module.
>
> BUG=webrtc:5339
>
> Committed: https://crrev.com/a49dc36976da44f3d6d75aed2dcab93fe14fc3a0
> Cr-Commit-Position: refs/heads/master@{#12124}

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

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

Cr-Commit-Position: refs/heads/master@{#12127}
2016-03-25 07:50:47 +00:00
peah
a49dc36976 Added a bitexactness test for the gain controller in the audio processing module.
BUG=webrtc:5339

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

Cr-Commit-Position: refs/heads/master@{#12124}
2016-03-25 00:59:29 +00:00
minyue
84db6fa7f5 Adding BlockMeanCalculator for AEC.
This will improve the readability of AEC code.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#12123}
2016-03-24 21:36:33 +00:00
peah
7c931ad698 Fixed a potential deadlock problem in the AGC
where the render and capture locks were
acquired in the wrong order.

BUG=webrtc:5339

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

Cr-Commit-Position: refs/heads/master@{#12122}
2016-03-24 19:52:11 +00:00
solenberg
1c2af8e319 Avoid clicks when muting/unmuting a voe::Channel.
Muting/unmuting is triggered in the PeerConnection API by calling setEnable() on an audio track.

BUG=webrtc:5671

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

Cr-Commit-Position: refs/heads/master@{#12121}
2016-03-24 17:36:06 +00:00
guidou
027fd8f907 Revert of Added a bitexactness test for the echo canceller in the audio processing module. (patchset #2 id:40001 of https://codereview.webrtc.org/1827833006/ )
Reason for revert:
This CL is breaking some WebRTC Android bots.
Example: https://build.chromium.org/p/client.webrtc/builders/Android32%20Tests%20%28L%20Nexus5%29/builds/6038

Original issue's description:
> Reland of Added a bitexactness test for the echo canceller in the audio processing module.
>
> This is a reland of the CL https://codereview.webrtc.org/1809613002/ that was reverted due to problems of the bitexactness of the Chromium Android64 bots.
>
> The reverting CL was https://codereview.webrtc.org/1824583003/
>
> TBR=henrik.lundin@webrtc.org
> BUG=webrtc:5337
>
> Committed: https://crrev.com/e29f0e2515934d5286950da7fc58b548132469ff
> Cr-Commit-Position: refs/heads/master@{#12114}

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

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

Cr-Commit-Position: refs/heads/master@{#12119}
2016-03-24 13:44:06 +00:00
peah
e29f0e2515 Reland of Added a bitexactness test for the echo canceller in the audio processing module.
This is a reland of the CL https://codereview.webrtc.org/1809613002/ that was reverted due to problems of the bitexactness of the Chromium Android64 bots.

The reverting CL was https://codereview.webrtc.org/1824583003/

TBR=henrik.lundin@webrtc.org
BUG=webrtc:5337

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

Cr-Commit-Position: refs/heads/master@{#12114}
2016-03-24 09:45:58 +00:00
terelius
85fa7d5311 Move swap_queue.h to base/
This will let us use the SwapQueue as a message queue for the event log's output thread. See https://codereview.webrtc.org/1687703002/

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

Cr-Commit-Position: refs/heads/master@{#12113}
2016-03-24 08:51:59 +00:00
danilchap
f752f85f3d [rtcp] Pli::Parse updated not to use RTCPUtility
BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#12104}
2016-03-23 15:25:30 +00:00
emircan
2df29cb673 Remove redefined macros from BitrateAdjuster
This CL removes the include that redefines Chrome macros, so Chrome
can include this header in https://codereview.chromium.org/1818903004/.

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

Cr-Commit-Position: refs/heads/master@{#12095}
2016-03-22 23:05:35 +00:00
Peter Boström
01bcbd0df6 Make Android min-resolution rotation-agnostic.
Min resolution shouldn't have anything to do with CVO being enabled or
not, nor device rotation.

BUG=webrtc:5678
R=glaznev@webrtc.org
TBR=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12092}
2016-03-22 20:44:43 +00:00
danilchap
56036ffc45 cleanup RTCPSender
rtc::scoped_ptr -> std::unique_ptr.
CrticalSectionWrapper -> CriticalSection.
assert -> DCHECK.
removed unused headers.
removed unused using.
removed unused member field.

BUG=webrtc:5520, webrtc:5565
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#12091}
2016-03-22 18:14:16 +00:00
peah
8d2ade65b1 Reland of Added a bitexactness test for the echo control mobile in the audio processing module
The reverted CL https://codereview.webrtc.org/1805373002/ was reverted due to an error in another CL.

BUG=webrtc:5663
TBR=henrik.lundin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12090}
2016-03-22 18:05:17 +00:00