Commit Graph

11877 Commits

Author SHA1 Message Date
74451a5ea9 Prevent zero division in VCMJitterEstimator.
BUG=webrtc:5124
R=sprang@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11445}
2016-02-01 15:31:17 +00:00
b46c333139 Roll chromium_revision 126e210..65f9b34 (372588:372637)
Change log: 126e210..65f9b34
Full diff: 126e210..65f9b34

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11444}
2016-02-01 12:54:09 +00:00
bba9dec4d5 Use separate rtp module lists for send and receive in PacketRouter.
This makes it possible to handle send and receive streams with the same SSRC, which is currently the case in some peer connection tests.

Also moves sending transport feedback to the pacer thread.

BUG=webrtc:5263

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

Cr-Commit-Position: refs/heads/master@{#11443}
2016-02-01 12:40:04 +00:00
1f611fa58b Fixed minor issue: added missing semicolons to metric_recorder.cc
Review URL: https://codereview.webrtc.org/1649353002

Cr-Commit-Position: refs/heads/master@{#11442}
2016-02-01 11:09:19 +00:00
d06d4d8dee Add linux_ubsan_vptr to default trybots.
BUG=webrtc:5124
NOTRY=True

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

Cr-Commit-Position: refs/heads/master@{#11441}
2016-02-01 10:54:54 +00:00
e1f2f1fbb8 Unwrap timestamps in VideoAnalyzer
We have seen an instance of flakiness of the perf tests where it looked
like timestamp wraparound could be an issue. Better safe...

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11440}
2016-02-01 10:05:00 +00:00
44efbece68 Converting picture_id to bitstring pushed from WithPictureId to Create function.
Added Parse and accessor functions.

BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11439}
2016-02-01 09:36:44 +00:00
6b231e0719 Roll chromium_revision d785e7c..126e210 (372580:372588)
Change log: d785e7c..126e210
Full diff: d785e7c..126e210

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11438}
2016-02-01 04:36:02 +00:00
25f17d762a Roll chromium_revision 2084e1d..d785e7c (372575:372580)
Change log: 2084e1d..d785e7c
Full diff: 2084e1d..d785e7c

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11437}
2016-01-31 21:08:05 +00:00
ac53c883a5 Roll chromium_revision 750447f..2084e1d (372566:372575)
Change log: 750447f..2084e1d
Full diff: 750447f..2084e1d

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11436}
2016-01-31 12:12:53 +00:00
430e40084d Roll chromium_revision f5d1a9c..750447f (372546:372566)
Change log: f5d1a9c..750447f
Full diff: f5d1a9c..750447f

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11435}
2016-01-31 04:36:13 +00:00
3f70562bbb Fix WebRtc ninja x86 build using Visual Studio 2015 (set GYP_MSVS_VERSION=2015).
Visual Studio 2015 balks at the implicit truncation of values. Easily fixed with an explicit cast.

Fixed redefinition of CLOCKS_PER_SEC when using Visual Studio 2015 and the Windows 10 SDK. CLOCKS_PER_SEC is also defined in "<WIN10 SDK DIR>\include\10.0.10240.0\ucrt\time.h" and also has the value of 1000

Hiding snprintf definition if building with Visual Studio 2015

Fixed C4573 compiler complaint in audio_processing_impl_locking_unittest.cc.

BUG=webrtc:5183

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

Cr-Commit-Position: refs/heads/master@{#11434}
2016-01-30 22:40:52 +00:00
c97c886e3a Roll chromium_revision f07b6b8..f5d1a9c (372524:372546)
Change log: f07b6b8..f5d1a9c
Full diff: f07b6b8..f5d1a9c

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11433}
2016-01-30 12:06:33 +00:00
f0269a6a15 Roll chromium_revision e9e4e90..f07b6b8 (372389:372524)
Change log: e9e4e90..f07b6b8
Full diff: e9e4e90..f07b6b8

Changed dependencies:
* src/buildtools: be55b9a..389b714
DEPS diff: e9e4e90..f07b6b8/DEPS

No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11432}
2016-01-30 04:19:16 +00:00
eee86a6aa3 Add option to disable particular HW video codec from app.
Plus minor clean up / adding comments.

BUG=b/26695339
R=jiayl@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11431}
2016-01-29 22:17:16 +00:00
9dfed79f3f Stop processing any incoming packets when turn port is disconnected.
If it still handle packets, when a ping arrives, it will pass the packet to p2ptransportchannel, eventually causing an ASSERT error there (when p2ptransportchannel tries to create a connection from the ping request from unknown address).

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11430}
2016-01-29 21:22:36 +00:00
083b8e91a9 Roll chromium_revision 3784ca9..e9e4e90 (372326:372389)
Change log: 3784ca9..e9e4e90
Full diff: 3784ca9..e9e4e90

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11429}
2016-01-29 20:35:15 +00:00
de13882d94 rtcp::ExtenededReports packet class got Parse function
BUG=webrtc:5260
R=åsapersson

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

Cr-Commit-Position: refs/heads/master@{#11428}
2016-01-29 19:26:20 +00:00
ff63ed2888 Format changes achieved by running
clang-format -i -style=Chromium

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11427}
2016-01-29 15:46:18 +00:00
f5b804bb9c Fix implicit bool casts in producer_fec_fuzzer.cc.
Fixes DrFuzz breakage on Windows.

BUG=webrtc:5473
TBR=zhaoqin@google.com

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

Cr-Commit-Position: refs/heads/master@{#11426}
2016-01-29 15:26:52 +00:00
3a8cac8410 Roll chromium_revision 105cb5f..3784ca9 (372268:372326)
Change log: 105cb5f..3784ca9
Full diff: 105cb5f..3784ca9

No dependencies changed.
No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11425}
2016-01-29 12:06:52 +00:00
b163c3f1ba Delete unused members from VideoOptions
including options related to experimental constraints which are
recognized but never applied.

BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11424}
2016-01-29 09:14:45 +00:00
a37babebfa Roll chromium_revision ffa6c99..105cb5f (372122:372268)
Change log: ffa6c99..105cb5f
Full diff: ffa6c99..105cb5f

Changed dependencies:
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/6c22f54..2cdf398
* src/third_party/ffmpeg: 2ab5351..2f698ed
DEPS diff: ffa6c99..105cb5f/DEPS

No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11423}
2016-01-29 04:07:06 +00:00
378dc770a6 Consolidate setters into SetRecvParameters.
Merges SetRecvCodec/SetRecvExtensions and an extra call for changing
RTCP mode, resulting in recreating the stream at most once instead of up
to three times.

BUG=webrtc:5296
R=deadbeef@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11422}
2016-01-28 23:58:48 +00:00
5e8351b325 Prevent division-by-zero in VCMFecMethod.
Clamps frameRate to at least 1.0 to prevent a zero division.

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

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

Cr-Commit-Position: refs/heads/master@{#11421}
2016-01-28 22:55:45 +00:00
46eed76207 Removing "candidates" attribute from TransportDescription.
It's never used anywhere, so it only causes confusion between
itself and SessionDescriptionInterface::candidates.

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

Cr-Commit-Position: refs/heads/master@{#11420}
2016-01-28 21:24:45 +00:00
e8f0836c58 Roll chromium_revision ea1b30c..ffa6c99 (371978:372122)
Change log: ea1b30c..ffa6c99
Full diff: ea1b30c..ffa6c99

Changed dependencies:
* src/buildtools: 11961c2..be55b9a
DEPS diff: ea1b30c..ffa6c99/DEPS

No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11419}
2016-01-28 20:07:08 +00:00
fb152707ed Replace const-reference with pointer in SendData.
This argument is never used as a reference and the pointer that's bound
to the const reference may be nullptr. This is undefined behavior and
barks under UBSan.

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

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

Cr-Commit-Position: refs/heads/master@{#11418}
2016-01-28 18:12:09 +00:00
f4b9c77512 Changed test to validate rtp timstamps not just in RTP packets but also in RTCP Sender Reports.
Altered it to accept negative value since it is normal for RTCP packet coming before RTP packet to have slightly later time.

BUG=webrtc:5433

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

Cr-Commit-Position: refs/heads/master@{#11417}
2016-01-28 14:14:33 +00:00
55b97fe388 clang-format -i -style=file webrtc/voice_engine/channel.*
This CL changes literally nothing else.

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

Cr-Commit-Position: refs/heads/master@{#11416}
2016-01-28 13:22:52 +00:00
6043f2e5d6 Revert of Adding "first packet received" notification to PeerConnectionObserver. (patchset #5 id:80001 of https://codereview.webrtc.org/1581693006/ )
Reason for revert:
onFirstMediaPacketReceived() breaks bot.

Original issue's description:
> Adding "first packet received" notification to PeerConnectionObserver.
>
> R=glaznev@webrtc.org, pthatcher@webrtc.org, tkchin@webrtc.org
>
> Committed: https://crrev.com/42265a8cc3b3f3db4aa2c29005aed2fb4393adef
> Cr-Commit-Position: refs/heads/master@{#11401}
>
> Committed: https://crrev.com/08a6eab75e13613183509d91d3892c1db57f6fc5
> Cr-Commit-Position: refs/heads/master@{#11404}

TBR=pthatcher@webrtc.org,tkchin@webrtc.org,glaznev@webrtc.org,deadbeef@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/1647483004

Cr-Commit-Position: refs/heads/master@{#11415}
2016-01-28 13:06:16 +00:00
e73afbaf17 New rtc::VideoSinkInterface.
The plan is that this interface should be used by all classes which receive a stream of video frames, and replace the two generic classes webrtc::VideoRendererInterface and cricket::VideoRenderer.

And the list goes on, there's a dozen of different classes which act as video frame sinks.

At some point, we will likely add some method to handle sink properties like, e.g, maximum useful width and height. But hopefully this can be done while keeping the interface very simple.

BUG=webrtc:5426
R=perkj@webrtc.org, pthatcher@webrtc.org

Committed: https://crrev.com/a862d4563fbc26e52bed442de784094ae1dfe5ee
Cr-Commit-Position: refs/heads/master@{#11396}

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

Cr-Commit-Position: refs/heads/master@{#11414}
2016-01-28 12:47:13 +00:00
533a4e4882 Switch critical section locks out for atomic operations
BUG=chromium:581029

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

Cr-Commit-Position: refs/heads/master@{#11413}
2016-01-28 10:44:16 +00:00
bec70ab0fd https://github.com/w3c/webrtc-stats/pull/10/files added mediaType to the tracks. The closest in the current stats is the ssrc type.
This is somewhat easier than looking up the media type by iterating pc.getLocalStreams / pc.getRemoteStreams and all tracks. Temporary until stats get revamped to conform to the spec obviously.

BUG=webrtc:4117

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

Cr-Commit-Position: refs/heads/master@{#11412}
2016-01-28 09:27:20 +00:00
6a062bd7af Deleted method AudioTrackInterface::GetRenderer.
Unused in chromium since #370957.

BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11411}
2016-01-28 08:38:15 +00:00
edc978dcd9 Roll chromium_revision da1acd5..ea1b30c (371832:371978)
Change log: da1acd5..ea1b30c
Full diff: da1acd5..ea1b30c

Changed dependencies:
* src/third_party/libvpx_new/source/libvpx: c0307e6..d699684
DEPS diff: da1acd5..ea1b30c/DEPS

No update to Clang.

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

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

Cr-Commit-Position: refs/heads/master@{#11410}
2016-01-28 04:10:50 +00:00
ab8f82ffe0 Make ECDSA default for RTCPeerConnection
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11409}
2016-01-28 01:50:15 +00:00
691b8369ff Using buffered signal to calculate the level of echo cancellation.
The level of the error signal after linear echo cancellation was based on non-buffered signal while that of the near-end and far-end signal based on buffered signal. This discrepancy made the comparison of them unfair.

This CL is to make calculating the error level rely on the same buffering.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11408}
2016-01-27 23:44:59 +00:00
d162a5e379 Add shouldDisableBuffering to RTCFileLogger.
Expose disableBuffering method on underlying log sink.
This will make every write to the stream immediately write to the disk.
Useful in crash situations so that buffered output is not lost.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#11407}
2016-01-27 23:11:53 +00:00
919ff75376 Use high QP threshold for HW VP8 encoder frame downscaling.
Before HW VP8 downscaling was triggered by frame drops only.
Also reset the encoder when it drops large amount of frames in a row.

BUG=b/26504665

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

Cr-Commit-Position: refs/heads/master@{#11406}
2016-01-27 23:01:08 +00:00
da2183c86f Update API for Objective-C RTCDataChannelConfiguration.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#11405}
2016-01-27 21:42:35 +00:00
08a6eab75e Adding "first packet received" notification to PeerConnectionObserver.
R=glaznev@webrtc.org, pthatcher@webrtc.org, tkchin@webrtc.org

Committed: https://crrev.com/42265a8cc3b3f3db4aa2c29005aed2fb4393adef
Cr-Commit-Position: refs/heads/master@{#11401}

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

Cr-Commit-Position: refs/heads/master@{#11404}
2016-01-27 21:38:57 +00:00
d7a75d798b Roll chromium_revision c6ec25c..da1acd5 (371549:371832)
Change log: c6ec25c..da1acd5
Full diff: c6ec25c..da1acd5

Changed dependencies:
* src/buildtools: 222bd42..11961c2
DEPS diff: c6ec25c..da1acd5/DEPS

No update to Clang.

TBR=

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

Cr-Commit-Position: refs/heads/master@{#11403}
2016-01-27 21:33:31 +00:00
7b3c72ffa9 Revert of Adding "first packet received" notification to PeerConnectionObserver. (patchset #4 id:60001 of https://codereview.webrtc.org/1581693006/ )
Reason for revert:
Seems that the end-to-end unit tests are now flaky: https://build.chromium.org/p/client.webrtc/builders/Win64%20Debug/builds/6283

Will reland after fixing the test flakiness.

Original issue's description:
> Adding "first packet received" notification to PeerConnectionObserver.
>
> R=glaznev@webrtc.org, pthatcher@webrtc.org, tkchin@webrtc.org
>
> Committed: https://crrev.com/42265a8cc3b3f3db4aa2c29005aed2fb4393adef
> Cr-Commit-Position: refs/heads/master@{#11401}

TBR=pthatcher@webrtc.org,tkchin@webrtc.org,glaznev@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/1640173004

Cr-Commit-Position: refs/heads/master@{#11402}
2016-01-27 21:03:47 +00:00
42265a8cc3 Adding "first packet received" notification to PeerConnectionObserver.
R=glaznev@webrtc.org, pthatcher@webrtc.org, tkchin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11401}
2016-01-27 20:10:44 +00:00
80f1db971d Include relay protocol type when computing the turn candidate foundation.
BUG=576353
R=deadbeef@webrtc.org, pthatcher@google.com, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11400}
2016-01-27 19:54:44 +00:00
3afc8c40be Consolidate SetSendParameters into one setter.
Removes unnecessary creation/removal of intermediate VideoSendStreams
due to only being partially configured before creation.

BUG=webrtc:5296, webrtc:5410
R=deadbeef@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11399}
2016-01-27 15:45:31 +00:00
Per
ec2922f864 Change PeerConnectionFactory.setVideoHwAccelerationOptions to create shared Egl context for harware encoders and decoders.
Before this fix, it was required that the EGL context used as an argument was kept open until all PeerConnections using the context had been closed. With this fix, that is no longer required.
Also, if a released EGLContext (EGL_NO_CONTEXT) is used, harware codecs will fallback to use byte buffers for encoding and decoding.
BUG=b/26583522
R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11398}
2016-01-27 14:25:56 +00:00
2098fca39a Revert of New rtc::VideoSinkInterface. (patchset #7 id:120001 of https://codereview.webrtc.org/1594973006/ )
Reason for revert:
Broke chrome build. Investigating.

First error relating to AddSink method in mock_peer_connection_dependency_factory.h

Original issue's description:
> New rtc::VideoSinkInterface.
>
> The plan is that this interface should be used by all classes which receive a stream of video frames, and replace the two generic classes webrtc::VideoRendererInterface and cricket::VideoRenderer.
>
> And the list goes on, there's a dozen of different classes which act as video frame sinks.
>
> At some point, we will likely add some method to handle sink properties like, e.g, maximum useful width and height. But hopefully this can be done while keeping the interface very simple.
>
> BUG=webrtc:5426
> R=perkj@webrtc.org, pthatcher@webrtc.org
>
> Committed: https://crrev.com/a862d4563fbc26e52bed442de784094ae1dfe5ee
> Cr-Commit-Position: refs/heads/master@{#11396}

TBR=pthatcher@webrtc.org,pbos@webrtc.org,perkj@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5426

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

Cr-Commit-Position: refs/heads/master@{#11397}
2016-01-27 14:12:57 +00:00
a862d4563f New rtc::VideoSinkInterface.
The plan is that this interface should be used by all classes which receive a stream of video frames, and replace the two generic classes webrtc::VideoRendererInterface and cricket::VideoRenderer.

And the list goes on, there's a dozen of different classes which act as video frame sinks.

At some point, we will likely add some method to handle sink properties like, e.g, maximum useful width and height. But hopefully this can be done while keeping the interface very simple.

BUG=webrtc:5426
R=perkj@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#11396}
2016-01-27 13:41:04 +00:00