Commit Graph

10610 Commits

Author SHA1 Message Date
b7d9a97ce4 Expose codec implementation names in stats.
Used to distinguish between software/hardware encoders/decoders and
other implementation differences. Useful for tracking quality
regressions related to specific implementations.

BUG=webrtc:4897
R=hta@webrtc.org, mflodman@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11084}
2015-12-18 15:01:23 +00:00
6c6510afad audio_device: Move sources into platform-conditions.
This should solve a problem discovered when converting from GYP to
other project formats, where the source files weren't included correctly
for each platform.

Two other targets in WebRTC have similar source files, which are correctly
generated for each platform:
* video_render_module_internal_impl
* video_capture_module_internal_impl
They both list the sources as it's changed to in this CL.

NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11083}
2015-12-18 12:33:34 +00:00
9b7fc7f25d Defines for ARM and MIPS CPU types.
This removes a dependency on Chromium's build/build_config.h
(which is not allowed).
The added defines are identical to the ones in build/build_config.h.

NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11082}
2015-12-18 12:28:49 +00:00
ae2c5ad12a Added option to specify a maximum file size when recording an AEC dump.
For applications with a strict filesize limit for debug files,
I added an option to specify a maximum filesize for AEC dumps. An
existing unit test is extended to check that the feature works as
advertised.

BUG=webrtc:4741
TBR=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11081}
2015-12-18 11:53:42 +00:00
095ae15d6b Keep listening if "accept" returns an invalid socket.
There is an issue in PhysicalSocket::Accept where the flag to continue
listening is not set in "enabled_events_" if "accept" returns an error.
This CL fixes this (initial idea by silviu.cpp@gmail.com).

BUG=webrtc:2030

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

Cr-Commit-Position: refs/heads/master@{#11080}
2015-12-18 09:40:03 +00:00
88518a22c6 Use NV21 instead of YUV12 and clean up.
BUG=webrtc:5375

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

Cr-Commit-Position: refs/heads/master@{#11079}
2015-12-18 08:37:10 +00:00
48477c1c6a MediaCodecVideoEncoder, set timestamp on the encoder surface when drawing a texture.
BUG=webrtc:4993

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

Cr-Commit-Position: refs/heads/master@{#11078}
2015-12-18 08:34:44 +00:00
fc96bd1f8b Roll chromium_revision e78bc2f..1b6c421 (365856:365999)
Change log: e78bc2f..1b6c421
Full diff: e78bc2f..1b6c421

Changed dependencies:
* src/third_party/openmax_dl: 7a179b9..ff8766d
DEPS diff: e78bc2f..1b6c421/DEPS

No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11077}
2015-12-18 04:01:07 +00:00
77fa59d789 Fix build break in google3 import caused by https://codereview.webrtc.org/1532543003
TBR=pthatcher@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11076}
2015-12-18 02:02:35 +00:00
4638331fd8 DTLS-SRTP set up is bypassed when the channel has been writable.
This regression was introduced by CL 1505573002 to support remote fingerprint update. What happened is that during PrAnswer, we incorrectly do not apply bundle. However, the channel has become writable at that time. When Answer comes, we still reset the srtp_filter but since the channel has been writable, the new SRTP context has never been applied.

We're making sure that we could always apply SRTP context even when channel has been writable. We'll address the issue that bundle should apply even in PrAnswer in a different CL.

BUG=568734

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

Cr-Commit-Position: refs/heads/master@{#11075}
2015-12-18 00:46:04 +00:00
efb047d2dd Compilation failed with openssl.
Missing a cast.

BUG=webrtc:5365

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

Cr-Commit-Position: refs/heads/master@{#11074}
2015-12-17 21:45:03 +00:00
933f3ec924 Roll chromium_revision ddfc1fe..e78bc2f (365801:365856)
Change log: ddfc1fe..e78bc2f
Full diff: ddfc1fe..e78bc2f

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11073}
2015-12-17 20:04:03 +00:00
002f0d09c9 VP9: Set speed setting to 8 for ARM.
At speed 8, vp9 on ARM is currently ~2x times slower than vp8 on ARM (speed -12).

Update some parameters in videoprocessor_integrationtest.cc
to make tests pass on android (which uses the new speed setting).

TBR=stefan@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11072}
2015-12-17 17:49:39 +00:00
5a4ce2fd33 Deleted declaration of VideoCaptureInput::DeliverI420Frame
It appears unimplemented and unused.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11071}
2015-12-17 17:37:26 +00:00
a0b9549b88 Roll gtest-parallel.
BUG=
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11070}
2015-12-17 15:15:41 +00:00
369f828bfe Adding trace events for the APM render and capture stream processing functions.
BUG=webrtc:5099

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

Cr-Commit-Position: refs/heads/master@{#11069}
2015-12-17 14:42:42 +00:00
9390f84a4a Use std::nullptr_t instead of decltype(nullptr)
Review URL: https://codereview.webrtc.org/1531173003

Cr-Commit-Position: refs/heads/master@{#11068}
2015-12-17 14:20:32 +00:00
1e0cfd9a46 Add VP8 and H264 depacketizer fuzzers.
Also removes listing of targets in webrtc_fuzzers which is very prone to
not being up to date. They're not required for ClusterFuzz integration
or building locally. This also means that adding fuzzers won't require
approval outside the fuzzers directory.

BUG=webrtc:4771
R=kjellander@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11067}
2015-12-17 13:28:28 +00:00
9d98f217c3 Roll chromium_revision 68898fb..ddfc1fe (365698:365801)
Change log: 68898fb..ddfc1fe
Full diff: 68898fb..ddfc1fe

Changed dependencies:
* src/buildtools: 68e3c23..fee7f1e
DEPS diff: 68898fb..ddfc1fe/DEPS

No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11066}
2015-12-17 12:32:49 +00:00
a689b44c17 Add tracing to NetEqImpl::InsertPacket
BUG=webrtc:5167
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11065}
2015-12-17 11:50:11 +00:00
0eb15ed7b8 Don't call the Pass methods of rtc::Buffer, rtc::scoped_ptr, and rtc::ScopedVector
We can now use std::move instead!

This CL leaves the Pass methods in place; a follow-up CL will add deprecation annotations to them.

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

Cr-Commit-Position: refs/heads/master@{#11064}
2015-12-17 11:04:24 +00:00
e376f0f2df Add Windows Clang trybots to the default set.
BUG=chromium:568952
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11063}
2015-12-17 06:54:57 +00:00
e40dedb03f Roll chromium_revision 004c7b4..68898fb (365580:365698)
Change log: 004c7b4..68898fb
Full diff: 004c7b4..68898fb

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11062}
2015-12-17 04:14:46 +00:00
a08925791c Cleanup use of "do { ... } while (0)".
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11061}
2015-12-17 02:38:34 +00:00
a54a080112 Add ufrag to the ICE candidate signaling.
On the receiving side, if a candidate arrives with an old ufrag, it will be dropped. If it contains a new frag that has never seen before, it will hold the ufrag and create connections, although those connections are not pingable until the ICE credentials are received.
This could avoid a bunch of ICE generation issues.

BUG=webrtc:5138,webrt:5292

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

Cr-Commit-Position: refs/heads/master@{#11060}
2015-12-17 02:37:27 +00:00
3514cbe554 Add DrFuzz support to webrtc fuzzers.
BUG=webrtc:4771
R=kjellander@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11059}
2015-12-17 02:36:19 +00:00
7cae30cbe1 Disable warnings failing when using Clang on Windows.
This makes it possible to build WebRTC using Clang on Windows.
Depends on https://codereview.webrtc.org/1524703006/

BUG=webrtc:5360, webrtc:5366
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11058}
2015-12-16 22:05:36 +00:00
9f58795cec Roll chromium_revision 2c8eb1f..004c7b4 (365513:365580)
Change log: 2c8eb1f..004c7b4
Full diff: 2c8eb1f..004c7b4

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11057}
2015-12-16 20:02:51 +00:00
361888c324 OWNERS: Add * to .gyp{i,} everywhere.
Also convert DOS->Unix line endings in two of the OWNERS files.

NOTRY=True
NOPRESUBMIT=True
R=niklas.enbom@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11056}
2015-12-16 19:44:39 +00:00
2f29d70184 Roll gtest-parallel.
BUG=
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11055}
2015-12-16 18:39:10 +00:00
0bc176b99b Further refactored the echo suppressor code:
-Extended the InverseFft function to be more generally
 applicable.
-Included the previous external extra scaling into the
 preexisting InverseFft call.
-Moved the updating of aec->delayEstCtr to where it is
 actually used.
-Refactored the output production and comfort noise
 addition using the InverseFft function.
-Removed the if-statements checking the value of the
 constant flagHbandCn as any value different from 1 would
 crash the program. Also removed the constant

The changes have been tested for bitexactness.

BUG=webrtc:5201

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

Cr-Commit-Position: refs/heads/master@{#11054}
2015-12-16 16:11:24 +00:00
c482eb3c84 Don't account for audio in the pacer budget.
We should only account for audio packets in the pacer budget if we also
are allocating bandwidth for the audio streams.

BUG=chromium:567659,webrtc:5263
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11053}
2015-12-16 15:55:09 +00:00
5f026d03af Update NetEq network statistics in neteq_unittest.
NetEqNetworkStatistics has been updated some time ago. A bit exactness test in neteq unittests is still using the old NetEqNetworkStatistics.

New neteq4_network_stats.dat generated by running TestBitExactness with flag "genref"

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11052}
2015-12-16 15:36:10 +00:00
44307630d3 AudioCodingModuleImpl: Stop failing artificially for non-Opus encoders
All encoders already handle the "Opus-specific" requests sanely (by
failing nicely), so we don't need extra checks to protect them.

BUG=webrtc:5028

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

Cr-Commit-Position: refs/heads/master@{#11051}
2015-12-16 14:24:09 +00:00
99b1a32146 Retyped the frequency estimate of the comfort noise for the higher band to harmonize the AEC code.
-Changed the type for the frequency estimate of the comfort noise for the
 higher band to be a two dimensional float array instead of a complex_t array.
 This makes sense since all the other frequency estimate (apart from the
 coherence) use this format and doing this change allows bundling the
 IFFT operations into using the InverseFFT method.
-Moved the memset of the frequency estimate of the comfort noise to where it is used and made it conditional so that it is only performed when used.
-Harmonized the if-statements for when the frequency estimate of the comfort noise is computed in the different optimized ComfortNoise computation methods.

The changes have been tested for bitexactness.

BUG=webrtc:5201

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

Cr-Commit-Position: refs/heads/master@{#11050}
2015-12-16 14:07:33 +00:00
426ae9dc21 Roll chromium_revision 6e5b8cb..2c8eb1f (365419:365513)
Change log: 6e5b8cb..2c8eb1f
Full diff: 6e5b8cb..2c8eb1f

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11049}
2015-12-16 12:25:45 +00:00
a6db4958c9 Move Rent-A-Codec out of CodecManager
So that the two of them sit next to each other at the top level of
AudioCodingModuleImpl. CodecManager now manages the specifications for
Rent-A-Codec, rather than managing encoders directly.

BUG=webrtc:5028

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

Cr-Commit-Position: refs/heads/master@{#11048}
2015-12-16 12:19:14 +00:00
a29386c26d Make VoiceDetection not a ProcessingComponent (bit exact).
BUG=webrtc:5354

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

Cr-Commit-Position: refs/heads/master@{#11047}
2015-12-16 11:31:16 +00:00
672aba3f57 Fix error prone code in VideoCapturerAndroid
BUG=webrtc:5282

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

Cr-Commit-Position: refs/heads/master@{#11046}
2015-12-16 10:17:24 +00:00
66085beef8 Bugfix that fixes the error where the audio processing module is called
using the wrong sample rate for the render signal.

The CL is basically a partial revert of the related changes done on
output_mixer.cc in the CL https://codereview.webrtc.org/1234463003.

The CL also reverts the removal of the input_sample_rate_hz() method
that was removed as part of the CL
https://codereview.webrtc.org/1379123002 (as it was at that point
no longer used).

It should be noted that this CL turns off the effect of the
IntelligibilityEnhancer when the AudioFrame AudioProcessing APIs are
used. While it may be possible to solve that by adding upsampling after
the API call, that  approach was discarded due to that:
-That would add extra processing in the echo path, leading to possible
AEC performance reduction.
-That would add extra complexity for the mobile case.
-That would only patch the intelligibility enhancer operation as the
proper way to do such an operation is within APM.
-The intelligibility enhancer is not active by default anywhere.

BUG=webrtc:5237

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

Cr-Commit-Position: refs/heads/master@{#11045}
2015-12-16 10:02:26 +00:00
54999d411b rtcp::Dlrr block moved into own file and got Parse function
BUG=webrtc:5260

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

Cr-Commit-Position: refs/heads/master@{#11044}
2015-12-16 09:56:22 +00:00
29e2f9385b Fix NoiseSuppression initialization behavior. This was changed when removing the ProcessingComponent inheritance in https://codereview.webrtc.org/1507683006/.
BUG=webrtc:5298

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

Cr-Commit-Position: refs/heads/master@{#11043}
2015-12-16 09:18:23 +00:00
45fd9fe92c New macro: RTC_DEPRECATED (for annotating deprecated functions)
Review URL: https://codereview.webrtc.org/1494133003

Cr-Commit-Position: refs/heads/master@{#11042}
2015-12-16 09:09:25 +00:00
ed644d8c07 Roll chromium_revision bff4606..6e5b8cb (365226:365419)
Change log: bff4606..6e5b8cb
Full diff: bff4606..6e5b8cb

Changed dependencies:
* src/third_party/libvpx_new/source/libvpx: 2383154..ecb8dff
DEPS diff: bff4606..6e5b8cb/DEPS

No update to Clang.

TBR=marpan@webrtc.org, stefan@webrtc.org,

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

Cr-Commit-Position: refs/heads/master@{#11041}
2015-12-16 04:30:19 +00:00
eb45981165 Restoring behavior where PeerConnection tracks changes to MediaStreams.
If a MediaStream is added to a PeerConnection, and later a track
is added to the MediaStream, a new RtpSender will now be created for
that track, and it will appear in subsequent offers.
Similarly, removed tracks will remove RtpSenders.

BUG=webrtc:5265

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

Cr-Commit-Position: refs/heads/master@{#11040}
2015-12-16 03:24:50 +00:00
44f0819978 Fixing bug where "mid" wasn't preserved across re-offers.
Review URL: https://codereview.webrtc.org/1529673002

Cr-Commit-Position: refs/heads/master@{#11039}
2015-12-16 00:20:15 +00:00
c1316a1e51 Fix HPF initialization behavior. This was changed when removing the ProcessingComponent inheritance in https://codereview.webrtc.org/1490333004/.
BUG=webrtc:5298

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

Cr-Commit-Position: refs/heads/master@{#11038}
2015-12-16 00:07:32 +00:00
95d9851a6c Add speech encoder to the encoder stack specification struct
BUG=webrtc:5028

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

Cr-Commit-Position: refs/heads/master@{#11037}
2015-12-15 22:21:40 +00:00
7eb914debb Fix incorrect comment
Review URL: https://codereview.webrtc.org/1524663004

Cr-Commit-Position: refs/heads/master@{#11036}
2015-12-15 22:20:29 +00:00
78315b9813 Reland of Base webrtc fuzzers on a template. (patchset #1 id:1 of https://codereview.webrtc.org/1528043002/ )
Reason for revert:
Found missing public_configs that broke Chromium libfuzzer build.

Original issue's description:
> Revert of Base webrtc fuzzers on a template. (patchset #1 id:1 of https://codereview.webrtc.org/1524993002/ )
>
> Reason for revert:
> Suspect this is breaking the build:
> https://build.chromium.org/p/chromium.fyi/builders/Libfuzzer%20Upload%20Linux/builds/1576/steps/compile/logs/stdio
>
> Original issue's description:
> > Base webrtc fuzzers on a template.
> >
> > Removes noisy dependencies on webrtc_fuzzer_main and removal of
> > find_bad_constructs, removes 1-6 lines of gn per fuzzer target.
> >
> > BUG=webrtc:4771
> > R=kjellander@webrtc.org
> >
> > Committed: https://crrev.com/5ea3da2cbbb0710f9617fb0627c0c4258437b09f
> > Cr-Commit-Position: refs/heads/master@{#11022}
>
> TBR=kjellander@webrtc.org,pbos@webrtc.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:4771
>
> Committed: https://crrev.com/5e0218c66e0686dd00719f1e53f844efa94c9f42
> Cr-Commit-Position: refs/heads/master@{#11032}

TBR=kjellander@webrtc.org,tommi@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4771

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

Cr-Commit-Position: refs/heads/master@{#11035}
2015-12-15 20:58:00 +00:00