Commit Graph

10212 Commits

Author SHA1 Message Date
7c73bdbd82 Renaming JsepPeerConnectionP2PTestClient back to P2PTestConductor.
Updating blacklists as well.

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

Cr-Commit-Position: refs/heads/master@{#10980}
2015-12-10 23:10:52 +00:00
ed83edc9e5 Roll chromium_revision 2e451bf..026b937 (364330:364421)
Change log: 2e451bf..026b937
Full diff: 2e451bf..026b937

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#10979}
2015-12-10 21:45:55 +00:00
6a6f0893dd in rtp_rtcp module:
fixed build/namespaces lint errors
  fixed readability/namespace lint errors

BUG=webrtc:5277
R=mflodman,stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10978}
2015-12-10 20:39:16 +00:00
a1f567ae90 Revert of Free SCTP data channels asynchronously in PeerConnection. (patchset #3 id:40001 of https://codereview.webrtc.org/1492383002/ )
Reason for revert:
Breaks WebrtcTransportTest.DataStream, due to different rtc::Thread implementation on Chromium.

Original issue's description:
> Free SCTP data channels asynchronously in PeerConnection.
>
> This is needed so that the data channel isn't deleted while one of its
> own methods is on the call stack.
>
> BUG=565048
>
> Committed: https://crrev.com/386869247f28e72a00307a1b5c92465eea343ad2
> Cr-Commit-Position: refs/heads/master@{#10923}

TBR=pthatcher@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=565048

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

Cr-Commit-Position: refs/heads/master@{#10977}
2015-12-10 19:17:47 +00:00
61a90f94b6 clang/win: Fix -Wextra warnings in webrtc.
Fixes one sign mismatch warning, and one "const has no effect and is
ignored" warning.

BUG=chromium:567877

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

Cr-Commit-Position: refs/heads/master@{#10976}
2015-12-10 18:50:36 +00:00
5c1def8892 modules/rtp_rtcp/include folder cleared of lint warnings
Functions that do not follow lint are marked deprecated, including function in the interface.

BUG=webrtc:5308
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10975}
2015-12-10 17:52:01 +00:00
796cfaf7f7 Add VideoCodec::PreferDecodeLate
The purpose is so that a decoder (Android) that only have a limited number of output buffers can make sure that decoding is done just before the frame is needed.

Removed unused iSupportsRenderTiming and the settings structs since it was not used.
Added VCMReceiver::FrameForDecoding unit test for the case when PreferDecodeLate is set.

Note that this does not change the current behaviour. We actually currently always decode frames late. This cl is to make sure the behaviour is kept for Android, if the default behaviour is changed.

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

Cr-Commit-Position: refs/heads/master@{#10974}
2015-12-10 17:27:45 +00:00
4d68208a20 Reduce the runtime of some ACM tests in modules_tests
By reducing the length of the audio input, the total runtime of
$ out/Debug/modules_tests --gtest_filter=AudioCodingModuleTest.*
is reduced by more than 10x, when run single-threaded.

The PCMFile helper class is extended with a FastForward method (to
skip initial silence in the test files) and a limiter on how much to
read.

BUG=webrtc:2463
R=ivoc@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10973}
2015-12-10 15:24:50 +00:00
c490e01bd1 Implement NativeToI420Buffer in C++, calling java SurfaceTextureHelper, new method .textureToYUV, to
do the conversion using an opengl fragment shader.

BUG=webrtc:4993

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

Cr-Commit-Position: refs/heads/master@{#10972}
2015-12-10 14:23:42 +00:00
b8b6fbb7a5 lint build/include errors fixed in rtp_rtcp module
BUG=webrtc:5277
R=mflodman

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

Cr-Commit-Position: refs/heads/master@{#10971}
2015-12-10 13:05:35 +00:00
90b9fc9214 Roll chromium_revision a02d286..2e451bf (364268:364330)
Change log: a02d286..2e451bf
Full diff: a02d286..2e451bf

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#10970}
2015-12-10 12:30:37 +00:00
866df6602c Typo fix: Enable a bunch of tests that were accidentally disabled
They were meant to be run if we have either iSAC float or fix, but the
typo made them run for just float.

BUG=webrtc:4198, webrtc:4199

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

Cr-Commit-Position: refs/heads/master@{#10969}
2015-12-10 12:20:06 +00:00
5811a39f14 Replace EventWrapper in video/, test/ and call/.
Makes use of rtc::Event which is simpler and can be used without
allocating additional objects on the heap.

Does not modify test/channel_transport/.

BUG=
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10968}
2015-12-10 12:03:00 +00:00
0f2e939a92 Enable cpplint for more webrtc subfolders and fix all uncovered cpplint errors.
This CL enableds cpplint for webrtc/common_video, webrtc/sound and webrtc/tools.

BUG=webrtc:5273

TESTED=Fixed issues reported by:
find webrtc/common_video webrtc/sound webrtc/tools -type f -name *.cc -o -name *.h | xargs cpplint.py
followed by 'git cl presubmit'.

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

Cr-Commit-Position: refs/heads/master@{#10967}
2015-12-10 11:11:48 +00:00
162abd3562 lint whitespace warning removed from most rtp_rtcp/source/ files
rtcp_utility, rtp_utility, tmmbr_help, rtcp_receiver, rtcp_receiver_help are explicetly excluded from the cleanup becaues there are short plans (or cls) to do a deeper cleaning there.

BUG=webrtc:5277
R=pbos@webrtc.org, mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10966}
2015-12-10 10:39:45 +00:00
84e78f9102 Rewrote the PRNG using an xorshift* algorithm and moved the files from test/ to base/.
Created a simple unit test for the new random number generator. (It mostly tests
that the generated numbers are consistent with the intended distribution, e.g. uniform.
It is not a comprehensive test of the quality of the random numbers.)

Several assertions in OveruseDetectorTest seem to depend on the exact sequence of random numbers. I updated those numbers to work with the new PRNG.

Compute the standard deviation of the expected result in TestReorderFilter instead of passing an uncertainty parameter.

BUG=webrtc:5177

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

Cr-Commit-Position: refs/heads/master@{#10965}
2015-12-10 09:51:02 +00:00
0b3d7eec07 Prevent RTCP SR to be sent with bogus timestamp.
This CL makes sure no RTCP SR is sent before there is a valid timestamp
to set in the SR, based on the first sent media packet.

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

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

Cr-Commit-Position: refs/heads/master@{#10964}
2015-12-10 09:10:54 +00:00
48bf2382d9 Some further minor bitexact APM echo suppressor refactoring
-Moved memsets to where their variables are used.
-Removed redundant.
-Changed a pointer scalar to be accessed in pointer notation rather than
 in array notation.

The change has been tested for bitexactness.

BUG=webrtc:5201

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

Cr-Commit-Position: refs/heads/master@{#10963}
2015-12-10 05:24:56 +00:00
5ba58c6735 Roll chromium_revision dad6346..a02d286 (363782:364268)
Change log: dad6346..a02d286
Full diff: dad6346..a02d286

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#10962}
2015-12-10 05:23:10 +00:00
a6e4328680 Remove unnecessary test code on Windows.
BUG=chromium:568266,chromium:567264
R=niklas.enbom@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10961}
2015-12-09 22:28:08 +00:00
70625e5bf3 Enable cpplint for webrtc/examples and fix all uncovered cpplint errors.
BUG=webrtc:5273
TESTED=Fixed issues reported by:
find webrtc/examples/ -type f -name *.cc -o -name *.h | grep -v objc | xargs cpplint.py
followed by 'git cl presubmit'.

NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#10960}
2015-12-09 22:18:20 +00:00
2e5fe31cf6 Remove myself from root_files watchlist.
TBR=kjellander@webrtc.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#10959}
2015-12-09 20:45:36 +00:00
1387149ad1 Adding reduced size RTCP configuration down to the video stream level.
Still waiting to turn on negotiation (in mediasession.cc)
until we verify it's working as expected.

BUG=webrtc:4868

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

Cr-Commit-Position: refs/heads/master@{#10958}
2015-12-09 20:37:59 +00:00
ee4082137b WebRTC: Update set of known root certificates
Also included the script which generates this file.

TBR=juberti@webrtc.org
BUG=526258

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

Cr-Commit-Position: refs/heads/master@{#10957}
2015-12-09 19:25:44 +00:00
b14f00113e Some minor (bitexact) AEC echo suppressor refactoring
-Moved filter reset from the echo suppression
 into the echo subtraction code where it belongs
 (the echo subtractor should own its filter reset).
-Moved the selection between using the microphone sinal and
 the echo subtractor output down to the lowest level in the
 EchoSuppression function. This makes sense as that selection
 was very hidden in an unrelated sub-sub-function call and
 as the selection is critical for what the AEC outputs.

The changes have been tested for bitexactness.

BUG=webrtc:5201

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

Cr-Commit-Position: refs/heads/master@{#10956}
2015-12-09 19:07:27 +00:00
434aca8d86 Add empty placeholder files for remote audio tracks.
This is needed for Chromium so that we can roll, update libjingle.gyp and then continue.

BUG=chromium:121673

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

Cr-Commit-Position: refs/heads/master@{#10955}
2015-12-09 17:42:03 +00:00
afeb43897a Moved code into the lowest level of EchoSuppression
to simplify future refactoring and development.

In more detail:
1) Moved the updating of eBuf from the EchoSubtraction method
   to the EchoSuppression method as it is only used in the latter.
2) Moved the computation of efw and dfw from the SubbandCoherence method
   as those are actually the analysis filterbank computation that is not
   directly related to the coherence.
3) As a consequence of 2) 3 functions needed to be replaced by the
   generic function pointer scheme used in WebRTCAec as they have
   optimized versions for SSE2 and NEON (which before were local to each
   of the aec_core*.c files.

Motivation:
Apart from making sense from a logical point of view, the changes will
a) Allow eBuf stored in half the size on the state.
b) Allow simpler switching between using the the microphone signal
   and echo subtractor output in the echo suppressor.
c) Allow further refactoring that move all the changes to eBuf to one method
   (currently those are happening in at least 4 different methods.

Drawbacks:
i) dfw is moved to EchoSuppression which increases the stack usage for that
 method. This will, however, be improved once further refactoring can be done.

The changes have been tested for bitexactness on Linux using a quite extensive dataset.

BUG=webrtc:5201

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

Cr-Commit-Position: refs/heads/master@{#10954}
2015-12-09 16:50:29 +00:00
d1590b2571 Lint clean video/ and add lint presubmit check.
BUG=webrtc:5316

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

Cr-Commit-Position: refs/heads/master@{#10953}
2015-12-09 15:08:05 +00:00
4cf61dd116 NetEq: Add codec name and RTP timestamp rate to DecoderInfo
The new fields are default-populated for built-in decoders, but for
external decoders, the name can now be given when registering the
decoder.

BUG=webrtc:3520

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

Cr-Commit-Position: refs/heads/master@{#10952}
2015-12-09 14:21:02 +00:00
3980d46960 RTCCertificate::Expires() and ::HasExpired() implemented using SSLCertificate::CertificateExpirationTime().
This is a re-upload of https://codereview.webrtc.org/1494103003 which was reverted and now re-landing.

BUG=chromium:544894

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

Cr-Commit-Position: refs/heads/master@{#10951}
2015-12-09 13:26:54 +00:00
af3b9cb4d3 Removing DrMemory suppresssion on PushResampler.
BUG=webrtc:2321
R=kjellander@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10950}
2015-12-09 12:52:09 +00:00
5eb4988c0a [rtp_rtcp] Lint build/header_guard errors fixed
BUG=webrtc:5277
R=mflodman

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

Cr-Commit-Position: refs/heads/master@{#10949}
2015-12-09 11:32:45 +00:00
7623ce4aeb Reland of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:300001 of https://codereview.webrtc.org/1507903005/ )
Reason for revert:
Bot breakage caused by TickTime::UseFakeClock has been removed.

Original issue's description:
> Revert of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:20001 of https://codereview.webrtc.org/1506773002/ )
>
> Reason for revert:
> Breaks Dr Memory Light https://build.chromium.org/p/client.webrtc/builders/Win%20DrMemory%20Light/builds/4643 and all the Android Tests bots.
>
> Original issue's description:
> > Merge webrtc/video_engine/ into webrtc/video/
> >
> > BUG=webrtc:1695
> > R=mflodman@webrtc.org
> >
> > Committed: https://crrev.com/03ef053202bc5d5ab43460eebf5403232f157646
> > Cr-Commit-Position: refs/heads/master@{#10926}
>
> TBR=mflodman@webrtc.org,pbos@webrtc.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:1695
>
> Committed: https://crrev.com/8237abf563bf4782ee104408b53cc8e55ce44518
> Cr-Commit-Position: refs/heads/master@{#10937}

BUG=webrtc:1695
TBR=mflodman@webrtc.org,kjellander@webrtc.org
NOPRESUBMIT=true

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

Cr-Commit-Position: refs/heads/master@{#10948}
2015-12-09 11:13:40 +00:00
d3c944755e Nuke TickTime::UseFakeClock.
Removes the global simulated time that affects (or breaks) following
tests in the same binary and replaces it with SimulatedClock.

BUG=webrtc:5318
R=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10947}
2015-12-09 10:21:09 +00:00
bda7e0b932 Fixing issue with default stream upon setting 2nd remote description.
If a description is set that requires making a default stream, and one
already exists, we'll now keep the existing default audio/video tracks,
rather than destroying them and recreating them. Destroying them caused
the blink MediaStream to go to an "ended" state, which is the root cause
of the bug.

BUG=webrtc:5250

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

Cr-Commit-Position: refs/heads/master@{#10946}
2015-12-09 01:13:53 +00:00
d02b0fab76 Add oldest rotation type option to RTCFileLogger
BUG=

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

Cr-Commit-Position: refs/heads/master@{#10945}
2015-12-08 21:59:11 +00:00
5e465c33ca Make NoiseSuppression not a processing component (bit exact).
BUG=webrtc:5298

patch from issue 1490333004 at patchset 1 (http://crrev.com/1490333004#ps1)

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

Cr-Commit-Position: refs/heads/master@{#10944}
2015-12-08 21:22:35 +00:00
1a9d615cbf Add tracing to public PeerConnection methods.
Adds tracing specifically to Close, for creating streams and also moves
tracing for SetLocal/RemoteDescription from WebRtcSession. Also adding
some tracing in ChannelManager to see what's taking time inside Close.

BUG=webrtc:5167
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10943}
2015-12-08 21:15:26 +00:00
2d63680d3e Roll chromium_revision 9dfb3a1..dad6346 (363718:363782)
Change log: 9dfb3a1..dad6346
Full diff: 9dfb3a1..dad6346

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#10942}
2015-12-08 21:06:46 +00:00
7b2f7627e4 Don't call SetPreviewFormat if capturing to textures.
This fix an issue seen on Huawei Y300 where the camera feed is black and white if we capture to textures and setpreviewformat is called.

BUG=webrtc:4993

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

Cr-Commit-Position: refs/heads/master@{#10941}
2015-12-08 20:03:07 +00:00
edd8fefa9b Add new view that renders local video using AVCaptureLayerPreview.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#10940}
2015-12-08 19:08:44 +00:00
70f9903e57 Make HighPassFilter not a ProcessingComponent anymore (bit exact).
BUG=webrtc:5298

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

Cr-Commit-Position: refs/heads/master@{#10939}
2015-12-08 19:07:38 +00:00
246b8171a6 Refactor handling of AudioOptions.
- Remove MediaEngineInterface::GetAudioOptions(), SetAudioOptions() and SetSoundDevices().
- Remove the WebRtcVoiceEngine infrastructure for those calls.

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

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

Cr-Commit-Position: refs/heads/master@{#10938}
2015-12-08 17:50:33 +00:00
8237abf563 Revert of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:20001 of https://codereview.webrtc.org/1506773002/ )
Reason for revert:
Breaks Dr Memory Light https://build.chromium.org/p/client.webrtc/builders/Win%20DrMemory%20Light/builds/4643 and all the Android Tests bots.

Original issue's description:
> Merge webrtc/video_engine/ into webrtc/video/
>
> BUG=webrtc:1695
> R=mflodman@webrtc.org
>
> Committed: https://crrev.com/03ef053202bc5d5ab43460eebf5403232f157646
> Cr-Commit-Position: refs/heads/master@{#10926}

TBR=mflodman@webrtc.org,pbos@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:1695

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

Cr-Commit-Position: refs/heads/master@{#10937}
2015-12-08 15:12:11 +00:00
e10c82dc12 Deletes temporary files that are generated in several ACM unittests.
This applies to AcmSwitchingOutputFrequencyOldApi.*,
AcmReceiverBitExactnessOldApi.* and AcmSenderBitExactnessOldApi.*.

BUG=webrtc:4647
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#10936}
2015-12-08 13:03:32 +00:00
d7b7ae8bda Add encode/decode time tracing to audio_coding.
Also removes virtual from VideoDecoder::Decode and updated mocks and
tests accordingly to use VideoDecoder::DecodeInternal instead.

BUG=webrtc:5167
R=henrik.lundin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10935}
2015-12-08 12:41:44 +00:00
9f45a45a62 Add tracing to upper-level WebRTC calls.
Adds tracing to WebRtcSession and corresponding BaseChannel calls to see
where time is spent better.

BUG=webrtc:5167
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10934}
2015-12-08 12:26:11 +00:00
cd6f539a08 Revert of RTCCertificate::Expires() and ::HasExpired() implemented (patchset #5 id:140001 of https://codereview.webrtc.org/1494103003/ )
Reason for revert:
RTCCertificate's expires_timestamp_ns was renamed to Expires but the old function is still used in one place in Chromium...
https://uberchromegw.corp.google.com/i/chromium.webrtc.fyi/builders/Mac%20Builder/builds/7405

Original issue's description:
> RTCCertificate::Expires() and ::HasExpired() implemented using SSLCertificate::CertificateExpirationTime().
>
> NOPRESUBMIT=true
> BUG=chromium:544894
>
> Committed: https://crrev.com/20ef654174e245b3a06c9e9045bb97be9acd90cf
> Cr-Commit-Position: refs/heads/master@{#10930}

TBR=torbjorng@webrtc.org,hta@webrtc.org,kjellander@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:544894

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

Cr-Commit-Position: refs/heads/master@{#10933}
2015-12-08 10:32:19 +00:00
fe32a76d60 Create fuzzer tests for audio decoders
This change adds fuzzer tests for iLBC, iSAC fix and float, and
Opus. The fuzzer function takes a random input vector and splits it
into a number of payloads. The lengths of the payloads is also
determined by the random vector. The payloads are decoded with the
decoders.

BUG=webrtc:5306
R=kjellander@webrtc.org, pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10932}
2015-12-08 10:27:34 +00:00
ffea13c42c PRESUBMIT: change native API check from warning to information.
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#10931}
2015-12-08 09:57:24 +00:00