Commit graph

20098 commits

Author SHA1 Message Date
Patrik Höglund
c0e680463a Fix deps of audio:audio_tests.
Bug: webrtc:6828
Change-Id: Iae9020fda37fe40221d9a9def38c3afcc387d359
Reviewed-on: https://webrtc-review.googlesource.com/22683
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20666}
2017-11-14 08:20:47 +00:00
Edward Lemur
15586d29f6 iOS: Add Release configurations for real devices.
Also, copy ios_arm64 to ios_arm64_dbg, so we can rename the bot.

Bug: chromium:774381
No-Try: true
Change-Id: I38a447e229ded6874a661bb6f39ae8ebfdcb194d
Reviewed-on: https://webrtc-review.googlesource.com/22580
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20665}
2017-11-13 23:14:25 +00:00
Zhi Huang
942bc2e4b9 Reland: Replaced the SignalSelectedCandidatePairChanged with a new signal.
|packet_overhead| field is added to rtc::NetworkRoute structure.

In PackTransportInternal:
1. network_route() is added which returns the current network route.
2. debug_name() is removed.
3. transport_name() is moved from DtlsTransportInternal and
IceTransportInternal to PacketTransportInternal.

When the selected candidate pair is changed, the P2PTransportChannel
will fire the SignalNetworkRouteChanged instead of
SignalSelectedCandidatePairChanged to upper layers.

The Rtp/SrtpTransport takes the responsibility of calculating the
transport overhead from the BaseChannel so that the BaseChannel
doesn't need to depend on P2P layer transports.

TBR=pthatcher@webrtc.org

Bug: webrtc:7013
Change-Id: If9928b25a7259544c2d9c42048b53ab24292fc67
Reviewed-on: https://webrtc-review.googlesource.com/22767
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20664}
2017-11-13 22:50:11 +00:00
Magnus Jedvert
620d9c9195 Move InitClassLoader from JNI_OnLoad to LoadGlobalClassReferenceHolder
This fixes clients with custom JNI_OnLoad code. This is basically a
reland of https://webrtc-review.googlesource.com/21281, but called from
LoadGlobalClassReferenceHolder instead of InitGlobalJniVariables. The
problem it solves is that some clients call InitGlobalJniVariables
from a strange thread and without using the rest of our Java API.

TBR=lliuu@@webrtc.org,sakal@webrtc.org

Bug: webrtc:8278
Change-Id: I664e50920bcd7e087ec2d8bb5be13569e8ff3088
Reviewed-on: https://webrtc-review.googlesource.com/22801
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20663}
2017-11-13 22:18:51 +00:00
Zhi Huang
8c316c1a89 Revert "Replaced the SignalSelectedCandidatePairChanged with a new signal."
This reverts commit 71677452f9.

Reason for revert: Broke Chromium.

Original change's description:
> Replaced the SignalSelectedCandidatePairChanged with a new signal.
> 
> |transport overhead| field is added to rtc::NetworkRoute structure.
> 
> In PackTransportInternal:
> 1. network_route() is added which returns the current network route.
> 2. debug_name() is removed.
> 3. transport_name() is moved from DtlsTransportInternal and
>    IceTransportInternal to PacketTransportInternal.
> 
> When the selected candidate pair is changed, the P2PTransportChannel
> will fire the SignalNetworkRouteChanged instead of
> SignalSelectedCandidatePairChanged to upper layers.
> 
> The Rtp/SrtpTransport takes the responsibility of calculating the
> transport overhead from the BaseChannel so that the BaseChannel
> doesn't need to depend on P2P layer transports.
> 
> Bug: webrtc:7013
> Change-Id: I60d30d785666a50a95052d00bf08f829d8f57e9c
> Reviewed-on: https://webrtc-review.googlesource.com/13520
> Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
> Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20661}

TBR=steveanton@webrtc.org,zhihuang@webrtc.org,pthatcher@webrtc.org

Change-Id: Ie0c76786855b65bb8caba7065593c961e4bf9de7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7013
Reviewed-on: https://webrtc-review.googlesource.com/22764
Reviewed-by: Zhi Huang <zhihuang@webrtc.org>
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20662}
2017-11-13 21:13:55 +00:00
Zhi Huang
71677452f9 Replaced the SignalSelectedCandidatePairChanged with a new signal.
|transport overhead| field is added to rtc::NetworkRoute structure.

In PackTransportInternal:
1. network_route() is added which returns the current network route.
2. debug_name() is removed.
3. transport_name() is moved from DtlsTransportInternal and
   IceTransportInternal to PacketTransportInternal.

When the selected candidate pair is changed, the P2PTransportChannel
will fire the SignalNetworkRouteChanged instead of
SignalSelectedCandidatePairChanged to upper layers.

The Rtp/SrtpTransport takes the responsibility of calculating the
transport overhead from the BaseChannel so that the BaseChannel
doesn't need to depend on P2P layer transports.

Bug: webrtc:7013
Change-Id: I60d30d785666a50a95052d00bf08f829d8f57e9c
Reviewed-on: https://webrtc-review.googlesource.com/13520
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20661}
2017-11-13 20:57:31 +00:00
Lu Liu
edfa7d7131 Revert "Move InitClassLoader from JNI_OnLoad to InitGlobalJniVariables."
This reverts commit b3a8c980f7.

Reason for revert: Breaking internal projects

Original change's description:
> Move InitClassLoader from JNI_OnLoad to InitGlobalJniVariables.
> 
> This fixes clients with custom JNI_OnLoad code.
> 
> Bug: webrtc:8278
> Change-Id: I67b45c2ca07b13b0bf968c5ac17ec6f1bcc58a86
> Reviewed-on: https://webrtc-review.googlesource.com/21281
> Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20629}

TBR=magjed@webrtc.org,sakal@webrtc.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:8278
Change-Id: I6add8182172501cb93bed998f68ce848c7280a98
Reviewed-on: https://webrtc-review.googlesource.com/22780
Reviewed-by: Lu Liu <lliuu@webrtc.org>
Commit-Queue: Lu Liu <lliuu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20660}
2017-11-13 20:31:51 +00:00
Steve Anton
6e634bf4cf Add RtpTransceiverInterface and implementing class
Introduces the public API interface corresponding to the
standardized RtpTransceiver object in the WebRTC spec.
https://w3c.github.io/webrtc-pc/#dom-rtcrtptransceiver

The RtpTransceiver will be the internal representation for both
Plan B and Unified Plan SDP, but the public API interface will
only support Unified Plan (existing users should continue to use
GetSenders/GetReceivers, which will still be supported).

Bug: webrtc:7600
Change-Id: I417ffda683209ba9a9b4cbd274f91ca8295779a7
Reviewed-on: https://webrtc-review.googlesource.com/21460
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20659}
2017-11-13 19:55:21 +00:00
Mirko Bonadei
61a7b141eb Removing conditional visibility.
Conditional visibility is complex to maintain and it is not well
supported by other build systems.

This CL removes it and falls back on the more relaxed visibility value
("*" in this case).
It is not a problem because the targets that are using conditional
visibility are all marked as "testonly" and this is probably enough to
keep the build graph clean.

Bug: None
Change-Id: I2d2b5ac9a02d08c2863950116db455976ee1459c
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/14902
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20658}
2017-11-13 15:39:11 +00:00
Danil Chapovalov
d328229d38 Add sending REMB support to RtcpTransceiver
Bug: webrtc:8239
Change-Id: If22de91a69b5752baf616520a247f2fdedacc220
Reviewed-on: https://webrtc-review.googlesource.com/22080
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20657}
2017-11-13 14:50:11 +00:00
Patrik Höglund
b5b5bcee72 Separate i420 and i444 implementations to separate targets.
This means we can properly declare the dependency between
libjingle_peerconnection_api and video_frame_api. i420
pulls in system_wrappers, which can't be a dependency of
the public API.

Plan:
1) Land this CL + send out PSA
2) Make all direct users of i420_buffer depend on the
   new video_frame_api_i420 target
3) Move i420_buffer.cc to the new target
4) Make libjingle_peerconnection_api depend on
   video_frame_api, since it no longer contains i420 code

Bug: webrtc:7504
Change-Id: I30d90f2ac7af53748859bbde8aed92386d5501f9
Reviewed-on: https://webrtc-review.googlesource.com/9382
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20656}
2017-11-13 14:27:39 +00:00
Magnus Jedvert
46a2765c56 Reland "Update internal SW codecs to return unique_ptrs"
This reverts commit 34c8e6bce8.

Reason for revert: Fix Android compilation

Original change's description:
> Revert "Update internal SW codecs to return unique_ptrs"
>
> This reverts commit 4fe6adc06a.
>
> Reason for revert: Breaks android compile.
>
> Original change's description:
> > Update internal SW codecs to return unique_ptrs
> >
> > TBR=stefan@webrtc.org
> >
> > Bug: webrtc:7925
> > Change-Id: I84239b071a2608d928f09b06809090eec5eafb14
> > Reviewed-on: https://webrtc-review.googlesource.com/21165
> > Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> > Reviewed-by: Erik Språng <sprang@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20650}
>
> TBR=magjed@webrtc.org,sprang@webrtc.org,stefan@webrtc.org
>
> Change-Id: If33c3a0ee0dfce63d105558a2897a472f0633306
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:7925
> Reviewed-on: https://webrtc-review.googlesource.com/22540
> Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
> Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20652}

TBR=magjed@webrtc.org,sprang@webrtc.org,stefan@webrtc.org

Change-Id: Ic8551af4687e927c9b605060155abdd5bc6208b2
Bug: webrtc:7925
Reviewed-on: https://webrtc-review.googlesource.com/22541
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20655}
2017-11-13 14:23:58 +00:00
Henrik Boström
fdb92012fb Avoid use-after-move in PeerConnection::Set[Local/Remote]Description.
In Set[Local/Remote]Description we have a raw pointer |desc| whose
ownership is passed to a helper function. Before this CL we continue
to use |desc| after ownership is passed under the assumption that the
object is not deleted.

In this CL, we instead rely on [local/remote]_description() after the
helper function has been called. In practice, this is a pointer to
the same object, but it removes the assumption about |desc| being
valid after its ownership is passed.

Bug: None
Change-Id: I144a190ea00f303f4713b64c45aa3e811c0f4b2e
Reviewed-on: https://webrtc-review.googlesource.com/21320
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20654}
2017-11-13 13:53:38 +00:00
henrika
616e3138b8 Removes id parameter in ADM factory method (reland)
Second attempt to land https://webrtc-review.googlesource.com/c/src/+/21980

Bug: webrtc:7306
Change-Id: Idbbb6d5371b154247ea3db55c28e5c0618c4fae1
Reviewed-on: https://webrtc-review.googlesource.com/22480
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20653}
2017-11-13 13:28:18 +00:00
Magnus Jedvert
34c8e6bce8 Revert "Update internal SW codecs to return unique_ptrs"
This reverts commit 4fe6adc06a.

Reason for revert: Breaks android compile.

Original change's description:
> Update internal SW codecs to return unique_ptrs
> 
> TBR=stefan@webrtc.org
> 
> Bug: webrtc:7925
> Change-Id: I84239b071a2608d928f09b06809090eec5eafb14
> Reviewed-on: https://webrtc-review.googlesource.com/21165
> Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20650}

TBR=magjed@webrtc.org,sprang@webrtc.org,stefan@webrtc.org

Change-Id: If33c3a0ee0dfce63d105558a2897a472f0633306
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7925
Reviewed-on: https://webrtc-review.googlesource.com/22540
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20652}
2017-11-13 13:02:30 +00:00
Åsa Persson
eb4500701b Remove use of SetEncodingDataInternal in MediaOptimization.
Add method FilenameWithParams to TestConfig.

Bug: none
Change-Id: I9f683e661537148dc01bee25f7510938fa656dc5
Reviewed-on: https://webrtc-review.googlesource.com/21382
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20651}
2017-11-13 12:39:48 +00:00
Magnus Jedvert
4fe6adc06a Update internal SW codecs to return unique_ptrs
TBR=stefan@webrtc.org

Bug: webrtc:7925
Change-Id: I84239b071a2608d928f09b06809090eec5eafb14
Reviewed-on: https://webrtc-review.googlesource.com/21165
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20650}
2017-11-13 12:31:18 +00:00
Henrik Boström
8f91f1ee71 Make hbos@webrtc.org OWNER of peerconnection*.
hbos knows and makes changes to the webrtc-pc spec[1] and works on
making Chromium's RTCPeerConnection spec-compliant. This includes
knowing and interacting with WebRTC-layer PeerConnection/Interface and
sometimes making changes to it.

hbos would like to share the peerconnection* ownership responsibilty as
it is relevant and owning it will speed up some of the process.

[1] https://w3c.github.io/webrtc-pc/

Bug: None
NOTRY: True
Change-Id: I8f419b7fc6c7fcf19951aa3f304769c915300d1b
Reviewed-on: https://webrtc-review.googlesource.com/21327
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20649}
2017-11-13 12:27:29 +00:00
Mirko Bonadei
2a8231063c Avoiding unnecessary copies.
clang-tidy spotted out these unnecessary copies, this CL removes them.

Bug: None
Change-Id: I9035a5a5394e170e8193966b4790946fb22b3b76
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/22060
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20648}
2017-11-13 12:07:31 +00:00
Anders Carlsson
dc1b9f179a Injectable software codecs for Android.
This is similar to https://webrtc-review.googlesource.com/c/src/+/3620
for iOS.

Using the new WebRtcMediaEngineFactory::Create API, the built-in
software video codecs are no longer appended to the injected codecs.

To be able to use the software codecs, they are exposed as Java
classes through SoftwareVideoEncoderFactory etc.

There is also a new DefaultVideoEncoderFactory used by AppRTCMobile.
This factory tries to use hardware implementations where available,
but falls back to using the injected software codecs.

The HardwareVideoEncoderFactory is temporarily also falling back on
the software codecs in its default configuration in order to
maintain backwards compatibility.

Bug: webrtc:7925
Change-Id: I3e8c5ed492ccd160aca968986ad217d7978a951c
Reviewed-on: https://webrtc-review.googlesource.com/17480
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20647}
2017-11-13 11:59:28 +00:00
Åsa Persson
45bbc8ac19 Change forced software encoder fallback for VP8 to be only based on resolution and not bitrate.
Switches from VP8 HW to VP8 SW for resolutions <= max_pixels. 

|<- min_pixels  VP8 SW  max_pixels ->|  VP8 HW  |

Bug: webrtc:6634
Change-Id: Ib324df2b8418659c29d999259c0ed47448310696
Reviewed-on: https://webrtc-review.googlesource.com/7362
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20646}
2017-11-13 10:58:42 +00:00
Bjorn Terelius
b577d5e4c3 Visualize simulated BWE as a piecewise constant function.
To facilitate this change, I replaced the graph style with one style
config for lines/interpolation and one style config for points.
The output functions were updated to make use of the new styles.

Bug: None
Change-Id: I42404a8ce274d6e433bcdd6aee4b15b640e78b40
Reviewed-on: https://webrtc-review.googlesource.com/22000
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20645}
2017-11-13 10:39:38 +00:00
Sebastian Jansson
13f35ec3d7 Sets names of peerconnection worker and network thread
Bug: None
Change-Id: I7117964a013fff2203bf27dd826f0bc6b753f097
Reviewed-on: https://webrtc-review.googlesource.com/20861
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20644}
2017-11-13 10:34:58 +00:00
Patrik Höglund
ada394b9c0 Remove p2p/base/candidate.h
This file has moved to api/candidate.h.

Bug: webrtc:7504
Change-Id: Ic008f6277b2c2256776e0da69b903842103b1c29
Reviewed-on: https://webrtc-review.googlesource.com/22002
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20643}
2017-11-13 10:11:48 +00:00
Bjorn Terelius
b87c27ebc4 Don't visualize incoming packets in pacer delay graph.
The difference between capture time and the log time for incoming packets include the network delay, so it is misleading to show them in the pacer delay graph.

Bug: webrtc:8508
Change-Id: Ib2e727f7d2971c66ccf9693cb1a92e066e169bed
Reviewed-on: https://webrtc-review.googlesource.com/21326
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20642}
2017-11-13 09:34:58 +00:00
Karl Wiberg
3e9e5b39d1 OrtcFactoryInterface::Create(): Require caller to supply audio codec factories
So that we don't have to be capable of creating one ourselves, which
requires a dependency on the audio codecs.

BUG=webrtc:8396

Change-Id: I5600da5e17f613b0e61a9fb0fbdb373fe42f855c
Reviewed-on: https://webrtc-review.googlesource.com/20220
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20641}
2017-11-11 14:45:17 +00:00
Mirko Bonadei
1a87a8f871 Removing backward compatible LOG macros.
LOG macros without RTC_ prefix have been deprecated in
https://webrtc-review.googlesource.com/15442.

Bug: webrtc:8452
Change-Id: I75740cc3087343cf175a3391a4320a0a9cb1e6a4
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/16428
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20640}
2017-11-11 07:17:35 +00:00
Zhi Huang
c99b6c7936 Remove the SetEncryptedHeaderExtensionIds methods.
The existing methods SetEncrypedHeaderExtensionIds in SrtpTransport and SrtpSession
are removed because those methods could be confusing. When these methods are called
the head extension IDs are not actually updated and the user need to call SetRtpParams
again to make that happen. The existing setter just caches the new IDs.

To make it less confusing, the SetEncryptedHeaderExtensionIds is removed and the new
extension IDs will be set immediately when setting the crypto params.

For SDES, the crypto params and the header extension IDs will be set at the same time.

For DTLS, the new header extensions are cached in BaseChannel and will be set when
the DTLS handshake is completed.

Another major change is that when doing DTLS-SRTP, the encrypted header extension
IDs will be updated only when they are changed.

Bug: webrtc:7013
Change-Id: Ib70d4797456ae5ecb61b3dfff15c7e3e7ede89bd
Reviewed-on: https://webrtc-review.googlesource.com/15860
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20639}
2017-11-11 01:14:35 +00:00
Steve Anton
83119dd833 Fix and re-enable flaky PeerConnectionIntegrationTests
PeerConnectionIntegrationTest.AddMediaToConnectedBundleDoesNotRestartIce
--> Fixed by an earlier CL (https://webrtc-review.googlesource.com/c/src/+/16261)
    so re-enabled.

PeerConnectionIntegrationTest/PeerConnectionIntegrationIceStatesTest.VerifyIceStates
--> An existing bug causes this to by flaky when using a fake clock.
    Fake clock removed with a TODO to change it back when the bug is fixed.

PeerConnectionIntegrationTest.TrackStatsUpdatedCorrectlyWhenUnsignaledSsrcChanges
--> The heuristic that >25% concealed audio samples is abnormal is
    unfortunately not reliable enough on certain slow trybots. Bump the
    threshold to 50% in hopes that is enough.

Bug: webrtc:8496
Change-Id: I17cfdf956a8a72ac399212c3c7efcdd2236be00d
Reviewed-on: https://webrtc-review.googlesource.com/20963
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20638}
2017-11-11 00:50:35 +00:00
Lu Liu
cda2562b06 Revert "Removes id parameter in ADM factory method"
This reverts commit cba3d274da.

Reason for revert: Breaking internal projects

Original change's description:
> Removes id parameter in ADM factory method
> 
> Bug: webrtc:7306
> Change-Id: I1c9def8c9bcd30da245ecf1894670f4b492547fc
> Reviewed-on: https://webrtc-review.googlesource.com/21980
> Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
> Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20630}

TBR=solenberg@webrtc.org,henrika@webrtc.org

Change-Id: Ie60a44d64df28ec8779305f3c7e3b071100c643f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7306
Reviewed-on: https://webrtc-review.googlesource.com/22200
Reviewed-by: Lu Liu <lliuu@webrtc.org>
Commit-Queue: Lu Liu <lliuu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20637}
2017-11-10 19:32:20 +00:00
Karl Wiberg
cda2525633 Add pthatcher@ as OWNER of ortc/
BUG=none
NOTRY=true

Change-Id: Ib5b94b30f3b5773a3996de357cbba2362a4d20ad
Reviewed-on: https://webrtc-review.googlesource.com/20680
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Commit-Queue: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20636}
2017-11-10 18:18:55 +00:00
Emircan Uysaler
574eaa4cda Add alpha channel to VideoFrameBuffer containers
- Add alpha accessors to PlanarYuvBuffer interface, null by defualt.
- Add WrapI420ABuffer() that creates a container which implements these
accessors.
- Show the use via StereoDecoderAdapter.

This CL is the step 2 for adding alpha channel support over the wire in webrtc.
See https://webrtc-review.googlesource.com/c/src/+/7800 for the experimental
CL that gives an idea about how it will come together.
Design Doc: https://goo.gl/sFeSUT

Bug: webrtc:7671
Change-Id: Id5691cde00088ec811b63d89080d33ad2d6e3939
Reviewed-on: https://webrtc-review.googlesource.com/21130
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Emircan Uysaler <emircan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20635}
2017-11-10 17:13:25 +00:00
Danil Chapovalov
66cebbda35 Remove aggressive thread checker from WeakPtrReference
This allows to create WeakPtr and dereference it on different threads.
Fix test to validate it.

Bug: webrtc:8517
Change-Id: Idaf0bbdcf14bffbe43cb5fb6514041e8fa746004
Reviewed-on: https://webrtc-review.googlesource.com/21700
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20634}
2017-11-10 16:51:25 +00:00
Mirko Bonadei
0ec39e2d0f Switching to RTC_ prefixed LOG macros.
Unprefixed LOG macros will be removed on 10/11/2017, this CL just
switch some LOG macros to RTC_LOG.

TBR=ilnik@webrtc.org,sprang@webrtc.org

Bug: webrtc:8452
Change-Id: I3828c145897818ded56d342eba5f7496431715a4
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/22083
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20633}
2017-11-10 15:39:46 +00:00
Ilya Nikolaevskiy
e0da9eab5f Don't count frames passed to VP8 BWE disabled streams as being encoded
This excludes these frames from being counted as dropped by encoder.
Also fix bitrate projected distribution for vp9 svc for outliers
detection.

Bug: webrtc:8497
Change-Id: Id37487456170c61e2323a660668f0c319ea5831d
Reviewed-on: https://webrtc-review.googlesource.com/21223
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20632}
2017-11-10 15:11:25 +00:00
Mirko Bonadei
fb65b10fa1 Removing forward declarations that are never referenced.
Bug: None
Change-Id: I0f472f55671e92d824c672f3c3b1bc083b8440fc
Reviewed-on: https://webrtc-review.googlesource.com/22004
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20631}
2017-11-10 13:49:45 +00:00
henrika
cba3d274da Removes id parameter in ADM factory method
Bug: webrtc:7306
Change-Id: I1c9def8c9bcd30da245ecf1894670f4b492547fc
Reviewed-on: https://webrtc-review.googlesource.com/21980
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20630}
2017-11-10 13:11:05 +00:00
Sami Kalliomäki
b3a8c980f7 Move InitClassLoader from JNI_OnLoad to InitGlobalJniVariables.
This fixes clients with custom JNI_OnLoad code.

Bug: webrtc:8278
Change-Id: I67b45c2ca07b13b0bf968c5ac17ec6f1bcc58a86
Reviewed-on: https://webrtc-review.googlesource.com/21281
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20629}
2017-11-10 12:59:55 +00:00
Niels Möller
c241af9cca Add timing info to all encoded frames.
Even if we're not going to transmit any timing info over the wire.

Bug: webrtc:8504
Change-Id: Id54192a10e6b2a6a2cb57a2ff6b28fc0d16e471d
Reviewed-on: https://webrtc-review.googlesource.com/21160
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20628}
2017-11-10 12:15:35 +00:00
Mirko Bonadei
d4fcfb8ba1 Switching to RTC_ prefixed LOG macros.
Unprefixed LOG macros will be removed on 10/11/2017, this CL just
switch some LOG macros to RTC_LOG.

TBR=magjed@webrtc.org

Bug: webrtc:8452
Change-Id: I103ba7e8a58faaa65a1cf28bd0c72a879956cc16
Reviewed-on: https://webrtc-review.googlesource.com/21960
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20627}
2017-11-10 11:10:25 +00:00
Sami Kalliomäki
ec6cf2a94f Cleanup old suppressions from suppressions.xml.
Limits CpuMonitor to supported Android versions.

Bug: webrtc:6597
Change-Id: I15fb4f5dff2511f578069dd70521728e9909bd15
Reviewed-on: https://webrtc-review.googlesource.com/21225
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20626}
2017-11-10 10:38:05 +00:00
henrika
6d85252e9e Add SetAudioPlayout and SetAudioRecording methods to the PeerConnection AP (follow-up)
NOTRY=TRUE

Bug: webrtc:7313
Change-Id: I43efb612144aa24069abf4cbe8c753137fb899f8
Reviewed-on: https://webrtc-review.googlesource.com/21301
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20625}
2017-11-10 09:59:45 +00:00
Danil Chapovalov
d2f37d85bd Add Incoming packet handler to RtcpTransceiver
Bug: webrtc:8239
Change-Id: Iebe1b6a2649f01e4f6e3780ac96cb05611d8671c
Reviewed-on: https://webrtc-review.googlesource.com/17560
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20624}
2017-11-09 19:55:43 +00:00
Magnus Jedvert
7501b1c3d1 Reland "Update internal video decoder factory to new interface"
This reverts commit 267d84baf0.

Reason for reland: Fix the bug; decoder is not allowed to ever be null and we need to use a
NullVideoDecoder that ignores calls instead.

Original change's description:
> Revert "Update internal video decoder factory to new interface"
>
> This reverts commit b2fc9b1b10.
>
> Reason for revert: Suspected to cause failures on Android bots on webrtc.fyi, see https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28K%20Nexus5%29/builds/21051
>
> Original change's description:
> > Update internal video decoder factory to new interface
> >
> > We want to move away from cricket::WebRtcVideoDecoderFactory and this CL
> > updates the internal factory. Also, VideoDecoderSoftwareFallbackWrapper
> > is updated to take a VideoDecoder as argument instead of a factory so it
> > can be used with external SW decoders.
> >
> > Bug: webrtc:7925
> > Change-Id: Ie6dc6c24f8610a2129620c6e2b42e3cebb2ddef7
> > Reviewed-on: https://webrtc-review.googlesource.com/7301
> > Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20597}
>
> TBR=brandtr@webrtc.org,magjed@webrtc.org,andersc@webrtc.org
>
> Change-Id: I0a12c98fdc30f00d58c85ee7e088f50160d39724
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:7925
> Reviewed-on: https://webrtc-review.googlesource.com/21420
> Reviewed-by: Christian Fremerey <chfremer@webrtc.org>
> Commit-Queue: Christian Fremerey <chfremer@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20605}

TBR=brandtr@webrtc.org,magjed@webrtc.org,andersc@webrtc.org,chfremer@webrtc.org,chfremer@google.com

Change-Id: I6cf5794dc3fadfa86809a94da80b69dbb4c56f52
No-Try: true
Bug: webrtc:7925
Reviewed-on: https://webrtc-review.googlesource.com/21541
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20623}
2017-11-09 14:29:12 +00:00
Karl Wiberg
5478b47b5a WebRtcMediaEngineFactory: Require caller to supply an AudioDecoderFactory
So that we don't have to be capable of creating one ourselves, which
requires a dependency on the audio decoders.

BUG=webrtc:6000, webrtc:8396

Change-Id: Ibb6b3f36f14b956c55d4edc934d101cb855b272d
Reviewed-on: https://webrtc-review.googlesource.com/18420
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20622}
2017-11-09 14:18:12 +00:00
henrika
34029e209d Removes usage of AudioRecord.Builder on Android
NOTRY=TRUE

Bug: b/32742417
Change-Id: Ib56e3d9da45b3d3fbe8b1658aaf6d97a99ea1886
Reviewed-on: https://webrtc-review.googlesource.com/18461
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Alex Glaznev <glaznev@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20621}
2017-11-09 13:18:02 +00:00
Sami Kalliomäki
8ebac24511 Fix a crash in EglRenderer.removeFrameListener.
The crash occured if removeFrameListener was called after releasing
the EglRenderer.

Bug: b/69040588
Change-Id: I90acc3b280d2009e5f13bb8836a288eb20c7d1d0
Reviewed-on: https://webrtc-review.googlesource.com/21380
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20620}
2017-11-09 13:13:42 +00:00
Danil Chapovalov
d4fdc27b91 Introduce MicrosecondsToCompactNtp function
webrtc clocks use 10based fraction time to calculate intervals.
Rtcp require 16based fraction time to report intervals.

Bug: webrtc:8239
Change-Id: I25cab5ad7b7614c86c174813a195e7ba767ee43b
Reviewed-on: https://webrtc-review.googlesource.com/21383
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20619}
2017-11-09 12:44:22 +00:00
Bjorn Terelius
3d55ed6cd6 Fix bug that applies wrong size limit to RtcEventLog history.
Bug: webrtc:8111
Change-Id: I13dc8c5fcf7c7b897265710e3643666fa7563986
Reviewed-on: https://webrtc-review.googlesource.com/21381
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20618}
2017-11-09 12:30:52 +00:00
Mirko Bonadei
675513b96a Stop using LOG macros in favor of RTC_ prefixed macros.
This CL has been generated with the following script:

for m in PLOG \
  LOG_TAG \
  LOG_GLEM \
  LOG_GLE_EX \
  LOG_GLE \
  LAST_SYSTEM_ERROR \
  LOG_ERRNO_EX \
  LOG_ERRNO \
  LOG_ERR_EX \
  LOG_ERR \
  LOG_V \
  LOG_F \
  LOG_T_F \
  LOG_E \
  LOG_T \
  LOG_CHECK_LEVEL_V \
  LOG_CHECK_LEVEL \
  LOG
do
  git grep -l $m | xargs sed -i "s,\b$m\b,RTC_$m,g"
done
git checkout rtc_base/logging.h
git cl format

Bug: webrtc:8452
Change-Id: I1a53ef3e0a5ef6e244e62b2e012b864914784600
Reviewed-on: https://webrtc-review.googlesource.com/21325
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20617}
2017-11-09 11:56:32 +00:00