Commit Graph

27392 Commits

Author SHA1 Message Date
36690cd9e4 Fix inverted RTC_DCHECK in RtpVideoStreamReceiver::RtcpFeedbackBuffer
Bug: None
Change-Id: I4b81b1d6b935756598db7dd0e6bcbc4f970e0d44
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140106
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28160}
2019-06-05 08:28:51 +00:00
ba96e2f645 In FrameEncodeMetadataWriter don't clear known bitrate on Reset.
Reset() is called each time the encoder is reconfigured, but then it
happens the target bitrate isn't reset in encoder. So it might produce a
frame before next bitrate estimate is propagated to the metadata writer.
The incorrect zero bitrate would be treated as a paused encoder and would
cause metadata to be dropped.

Also, added unittest for that scenario at VideoStreamEncoder level.

Bug: webrtc:10460
Change-Id: I28024a527f1fb8474b172e2c5c2394fd38d69a07
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140101
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28159}
2019-06-05 07:53:14 +00:00
015ff80124 Roll chromium_revision abb1a36732..fd17362e28 (665960:666098)
Change log: abb1a36732..fd17362e28
Full diff: abb1a36732..fd17362e28

Changed dependencies
* src/base: 62e46ac81b..1305a736a8
* src/build: 25c64109ba..c9080b689b
* src/ios: 3379a572bd..410f69b01b
* src/testing: a57d9f85f1..d6dc95922b
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/f8aef9991b..dd7a2ceeb4
* src/third_party/depot_tools: 0f47678812..71c6bc07e6
DEPS diff: abb1a36732..fd17362e28/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: If7663c3aa214fc3ba7faebe4322df6b105215d7d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140200
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28158}
2019-06-05 01:52:45 +00:00
06a9926454 Roll chromium_revision f8c14c5353..abb1a36732 (665857:665960)
Change log: f8c14c5353..abb1a36732
Full diff: f8c14c5353..abb1a36732

Changed dependencies
* src/base: 5f5291493c..62e46ac81b
* src/build: 3f3db45858..25c64109ba
* src/ios: 6554ac15f4..3379a572bd
* src/testing: bc4bb72ae7..a57d9f85f1
* src/third_party: 87f6180831..d70f798c10
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e5eebb43fb..f8aef9991b
* src/third_party/harfbuzz-ng/src: c73d7ba75d..97b9268577
* src/tools: cfedf147a9..482721ef52
DEPS diff: f8c14c5353..abb1a36732/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I7ab5d03d09fc539385d97528451622b0b045e98f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140163
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28157}
2019-06-04 17:55:26 +00:00
835baf78a5 Add amithi@ as pc OWNERS
Bug: None
No-Try: True
Change-Id: If129f92a343cb61df85a0bab37f70af6dba6fb01
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139920
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Reviewed-by: Amit Hilbuch <amithi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28156}
2019-06-04 16:46:46 +00:00
e0f370471a Add cap to video jitter buffer size/latency in experiment branches only.
Bug: webrtc:10664
Change-Id: I03762c8b318f26f2689e89545aa8cc8e5b4a4329
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138081
Commit-Queue: Michael Horowitz <mhoro@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28155}
2019-06-04 15:50:27 +00:00
479a3c0f92 Add support for enabling and negotiating raw RTP packetization.
Raw RTP packetization is done using the existing RtpPacketizerGeneric
without adding the generic payload header. It is intended to be used
together with generic frame descriptor RTP header extension.

Bug: webrtc:10625
Change-Id: I2e3d0a766e4933ddc4ad4abc1449b9b91ba6cd35
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138061
Commit-Queue: Mirta Dvornicic <mirtad@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28154}
2019-06-04 14:35:54 +00:00
961407f5e8 Delete unused method RtpRtcp::GetRtpPacketLossStats
It was introduced, together with the PacketLossStats class, in cl
https://codereview.webrtc.org/1198853004 (#9568). It is unused in webrtc,
but there's downstream usage of the PacketLossStats class, which
should perhaps be moved or deleted in a later cl.

Bug: None
Change-Id: I17a3d5c8748f2cc9809c438630cbe8ab680466c4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140042
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28153}
2019-06-04 10:56:35 +00:00
65853dd6ef Roll chromium_revision 1070231d7d..f8c14c5353 (665750:665857)
Change log: 1070231d7d..f8c14c5353
Full diff: 1070231d7d..f8c14c5353

Changed dependencies
* src/base: 28e9773c21..5f5291493c
* src/build: c66b31df3e..3f3db45858
* src/ios: 0513dd4b3c..6554ac15f4
* src/testing: 04744a0185..bc4bb72ae7
* src/third_party: 5720b072ff..87f6180831
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/72240f63d2..e5eebb43fb
* src/third_party/depot_tools: 0183a1fe6c..0f47678812
* src/third_party/freetype/src: 7b275a5af1..e13c1f46dc
* src/tools: 6a12c9772a..cfedf147a9
DEPS diff: 1070231d7d..f8c14c5353/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Ie81df47fbadb3168528c91698e0b1e6abbec1fc0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140062
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28152}
2019-06-04 10:48:49 +00:00
31f18e164e Android SurfaceTextureHelper: Avoid crashing if size hasn't been set
SurfaceTextureHelper currently crashes if an OES texture is produced
before setTextureSize() has been called. This is annoying if the texture
size is not easily known beforehand. A real world example is MediaPlayer
that provides the video size with an asynchronous call to
setOnVideoSizeChangedListener(), but that might happen after the first
texture is produced on some devices.

This CL waits with delivering frames until the size has been sent,
rather than crashing.

Bug: webrtc:10709
Change-Id: I5d9ce542e0edaafe1153fd5fe7d64dba86d7e33c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140080
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28151}
2019-06-04 10:40:39 +00:00
f4c7ab1bb2 in test/scenario pass TaskQueueFactory explicitly
instead of relying on factories that use GlobalTaskQueueFactory

Bug: webrtc:10284
Change-Id: Iafece5e83ccfd33499e9a473ea7e2e99d5c824c3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139522
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28150}
2019-06-04 09:21:17 +00:00
c8501f7ae3 Fix bug in neteq_quality_test
Insert first packet before calling to decode.

Bug: webrtc:10690
Change-Id: I721b7af0506f0dbaf4fa2ed6a9ba6a87250d08f1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139103
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Pablo Barrera González <barrerap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28149}
2019-06-04 08:53:07 +00:00
90bc1e1bad Fix comment typo about degradation preference.
Switched comments for MAINTAIN_FRAMERATE and MAINTAIN_RESOLUTION.

Bug: none
Change-Id: Ibad00978c5096112a119e5e76d40b11752334594
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139109
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28148}
2019-06-04 06:49:32 +00:00
bd002715a8 Roll chromium_revision 584b49b1a7..1070231d7d (665633:665750)
Change log: 584b49b1a7..1070231d7d
Full diff: 584b49b1a7..1070231d7d

Changed dependencies
* src/base: 336208887f..28e9773c21
* src/build: e68a3aad04..c66b31df3e
* src/ios: fd10f5d87d..0513dd4b3c
* src/testing: 3c61269284..04744a0185
* src/third_party: 88c85fc7d8..5720b072ff
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1c7a411305..72240f63d2
* src/third_party/depot_tools: c38806be71..0183a1fe6c
* src/tools: d2ad8979e6..6a12c9772a
DEPS diff: 584b49b1a7..1070231d7d/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Ie0da4944add72fd4db3e352dc0f3a21c237003e9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139940
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28147}
2019-06-04 01:44:10 +00:00
292ce4ef25 Move datagram transport to JsepTransport
- This makes it consistent with ICE and MediaTransport ownership.
- Removes unnecessary datagram_transport() getter in DtlsTransportInternal

As a side effect this fixes bug in JsepTransportController, which moved datagram_transport to Dtls after creating it, then checked if (datagram_transport) to decide which RTP transport to create. As a result of this bug we were creating Sded instead of Unencrypted RTP with datagram transport.

Bug: webrtc:9719
Change-Id: Ic5b13a450ce6ac5b2a20d388657e3949aabef079
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139620
Commit-Queue: Anton Sukhanov <sukhanov@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28146}
2019-06-03 22:24:12 +00:00
9005e23a26 Roll chromium_revision a3e71ebfa3..584b49b1a7 (665525:665633)
Change log: a3e71ebfa3..584b49b1a7
Full diff: a3e71ebfa3..584b49b1a7

Changed dependencies
* src/base: b59893fb24..336208887f
* src/build: 15ec1d14c4..e68a3aad04
* src/ios: d3ac7abaeb..fd10f5d87d
* src/testing: 675d1b908d..3c61269284
* src/third_party: 94eb827465..88c85fc7d8
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/58f6c4682e..1c7a411305
* src/tools: 1dff7afc98..d2ad8979e6
DEPS diff: a3e71ebfa3..584b49b1a7/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Ie5eb0ab7389890895f846e3538f1c9640054cde2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139855
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28145}
2019-06-03 20:56:26 +00:00
1716d39714 Let SessionDescription take ownership of MediaDescription
This documents in the API what is already true in the
implementation - that SessionDescription will eventually
delete MediaDescription objects passed to it.

The old API is preserved for backwards compatibility, but
marked as RTC_DEPRECATED.

Bug: webrtc:10701
Change-Id: I9a822b20cf3e58c5945fa51dbf6082960a332de8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139880
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28144}
2019-06-03 20:07:37 +00:00
1fe119f12f Change the gating of surfacing candidates on ICE transport type change
from a field trial to RTCConfiguration.

The test coverage is also expanded for the underlying feature.

Bug: None
Change-Id: Ic9c1362867e4a956c5453be7a9355083b6a442f5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138980
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Alex Glaznev <glaznev@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Amit Hilbuch <amithi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28143}
2019-06-03 18:41:13 +00:00
e86af2c75f Allowing buffering a LNTF (loss notification) feedback message in RTCPSender
Loss notifications may either be sent immediately, or wait until another
RTCP feedback message is sent.

Bug: webrtc:10336
Change-Id: I40601d9fa1dec6c17b2ce905cb0c8cd2dcff7893
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139242
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28142}
2019-06-03 16:28:34 +00:00
4e34c18c4b Check input file extension is not wav
This is an usual error while using neteq_quality_test. This tool
does not support wav files as input. Adding a validation.

Bug: webrtc:10690
Change-Id: I18ed308d2f688106728df5df25e0a58c7170f411
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139104
Commit-Queue: Pablo Barrera González <barrerap@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28141}
2019-06-03 15:43:10 +00:00
102b7289a9 Prevent howling in RunPlayoutAndRecordingInFullDuplex
The test RunPlayoutAndRecordingInFullDuplex makes the speakers play the
signal it simultaneously records from the microphone, which can cause
full howling.

The test itself measures buffer usage and does not depend on what signal
is played through the speakers. This change mutes the speakers to prevent
howling when running modules_unittests.

Bug: webrtc:10704
Change-Id: I6176adb2fb5ce0e4d86f6f447476be8a88c2f2cf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139889
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28140}
2019-06-03 15:06:12 +00:00
15f2200266 Roll chromium_revision aaa0f87a5c..a3e71ebfa3 (665423:665525)
Change log: aaa0f87a5c..a3e71ebfa3
Full diff: aaa0f87a5c..a3e71ebfa3

Changed dependencies
* src/base: d9f5acac87..b59893fb24
* src/build: 45a80db577..15ec1d14c4
* src/ios: db1453294a..d3ac7abaeb
* src/testing: 8954e1e7f7..675d1b908d
* src/third_party: b510beb5b1..94eb827465
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/5b31e690a4..58f6c4682e
* src/tools: e1111817c5..1dff7afc98
DEPS diff: aaa0f87a5c..a3e71ebfa3/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: If28271b4767ed362f82796749180fdc71f947387
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139849
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28139}
2019-06-03 14:43:51 +00:00
d2a6686a10 Add RtpPacketInfo to hold information about a received RtpPacket.
This change adds classes so that we later can plumb information about received packets to each audio and video frame. It's not wired up to do anything yet.

Bug: webrtc:10668
Change-Id: I962df493a76692f668314f78d6792d7636c5a31b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138203
Commit-Queue: Chen Xing <chxg@google.com>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28138}
2019-06-03 14:37:01 +00:00
1df841d446 Target SDK level 29 in AppRTCMobile.
Removes CAPTURE_VIDEO_OUTPUT permission since it is not needed
when using MediaProjection API and not allowed in Android Q.

This is a reland of af4f1b41277ebdf0d7386cbd2903abc709cbc183

Original change's description:
> Target SDK level 27 in AppRTCMobile.
>
> Implements the dynamic permission model required by the newer SDK and
> changes the theme.
>
> Bug: webrtc:8803
> Change-Id: I3ea23a25b27f196fcffd018c7cdd2ff6255b62d9
> Reviewed-on: https://webrtc-review.googlesource.com/44400
> Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#21788}

Bug: webrtc:8803
Change-Id: Ie79d7f7b9e8fea255581d3b56772b5bb6fffff4c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139881
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28137}
2019-06-03 12:40:42 +00:00
ef09c5b734 Buffer RTCP feedback messages in RtpVideoStreamReceiver
Currently, if LNTF and NACK messages are both created, they will
be sent out in separate RTCP messages. This is wasteful.
This CL is the first of in a series of CLs that will ensure that
these feedback messages can be buffered together, without introducing
more of a delay than the CPU time required to process both messages.

Bug: webrtc:10336
Change-Id: I950324112ee346695a12a17d025483ea5e99c732
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139112
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28136}
2019-06-03 12:19:36 +00:00
4cd1c6a3db Lockless SwapQueue
This change makes SwapQueue lockless in order to reduce lock contention
in the Audio Processing Module.

Bug: webrtc:10205
Change-Id: Idc3b2a85e959b467bc1653492e48eee42e236fa5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138901
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28135}
2019-06-03 11:49:49 +00:00
89bbf379ce Allow neteq_quality_test to read a complete file
Instead of setting a runtime, allow neteq_quality_test to
consume a complete file using --runtime_ms -1

Bug: webrtc:10690
Change-Id: I90d35cf31996d9336fef817b9332a2cd1d04e77e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139101
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Pablo Barrera González <barrerap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28134}
2019-06-03 10:25:29 +00:00
7537838be4 Add fhernqvist to watchlist.
No-Try: true
Bug: None
Change-Id: Ic7fea3c9ff52c16106db5383d3d1502075b215b5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139251
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Reviewed-by: Fredrik Hernqvist <fhernqvist@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28133}
2019-06-03 10:13:40 +00:00
62838fe300 Expose audio decoder factory in neteq_quality_test
Bug: webrtc:10690
Change-Id: Ic9073fad82963d4a953a80d1eff043bf9430deff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139102
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Pablo Barrera González <barrerap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28132}
2019-06-03 09:14:33 +00:00
695cf6ac42 Delete deprecated StartRtcEventLog override with PlatformFile
Bug: webrtc:6463
Change-Id: I57c2372a232d72b054d8e3e4f423e11b3fb22430
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/134460
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28131}
2019-06-03 09:00:56 +00:00
f330183727 A threading explanation
Bug: None
Change-Id: I11a7ae5d1b0157b1d7b537fa7c071f0f48efe307
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/113147
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28130}
2019-06-03 08:15:09 +00:00
8db36de92e Roll chromium_revision 97b44755d9..aaa0f87a5c (665322:665423)
Change log: 97b44755d9..aaa0f87a5c
Full diff: 97b44755d9..aaa0f87a5c

Changed dependencies
* src/base: 5158ea2176..d9f5acac87
* src/build: ff7a641a07..45a80db577
* src/ios: 8eaea604cf..db1453294a
* src/testing: 039c56bbfa..8954e1e7f7
* src/third_party: d1687a1f5b..b510beb5b1
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/3d4e56f8f4..5b31e690a4
* src/third_party/depot_tools: cd28c22b7b..c38806be71
* src/tools: 4b139415e7..e1111817c5
DEPS diff: 97b44755d9..aaa0f87a5c/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I9656ad51be4ec5b483263d877197db32019f383c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139800
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28129}
2019-06-02 12:34:37 +00:00
114e8bb7a6 Roll chromium_revision ebd9263281..97b44755d9 (665197:665322)
Change log: ebd9263281..97b44755d9
Full diff: ebd9263281..97b44755d9

Changed dependencies
* src/base: a9d6996d93..5158ea2176
* src/build: b90f9b2971..ff7a641a07
* src/ios: b40a471770..8eaea604cf
* src/testing: 34bf3f044e..039c56bbfa
* src/third_party: 82ba612976..d1687a1f5b
* src/third_party/icu: 64e5d7d43a..9f0f47b1e4
* src/tools: 978e439b3c..4b139415e7
DEPS diff: ebd9263281..97b44755d9/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I08815cdd83f07385e34e150e500eceef500fe243
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139583
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28128}
2019-05-31 23:41:26 +00:00
36e3147b21 Surface the standardized ICE connection state to mobile clients.
This CL adds the callback on changes of the ICE connection state
following the standardized transitions
(https://www.w3.org/TR/webrtc/#dom-rtciceconnectionstate) to the
Android and the iOS SDKs.

Bug: None
Change-Id: I6133391fa54dd4e09016f29dddb85e4a0e270878
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138181
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Amit Hilbuch <amithi@webrtc.org>
Reviewed-by: Alex Glaznev <glaznev@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28127}
2019-05-31 22:40:33 +00:00
2dbc627aa0 Check H264 packetization mode when using IsSameCodec
H264 requires that the packetization modes are the same in order to
consider the code the same. This logic was added to VideoCodec::Matches
but was not reflected in IsSameCodec. This could manifest itself when a
remote description with an unsupported packetization mode is set.

Bug: webrtc:10693
Change-Id: Icda07f7d56a464895d2267a41cc0f2fd9d5f42ff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138983
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Amit Hilbuch <amithi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28126}
2019-05-31 21:18:21 +00:00
2229cf7915 Roll chromium_revision c1296cf1c0..ebd9263281 (665078:665197)
Change log: c1296cf1c0..ebd9263281
Full diff: c1296cf1c0..ebd9263281

Changed dependencies
* src/base: 0f4d61e0ee..a9d6996d93
* src/build: 355210a48f..b90f9b2971
* src/ios: 4552c595c0..b40a471770
* src/testing: 0734c202c4..34bf3f044e
* src/third_party: b260072908..82ba612976
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/0aa9d59e4e..3d4e56f8f4
* src/tools: 7eaa5f5269..978e439b3c
DEPS diff: c1296cf1c0..ebd9263281/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: Ie4ea8aa168f069e7d6c8f193bd03edd2fc1de437
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139560
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28125}
2019-05-31 19:27:10 +00:00
85b8ce2ab9 In media engine replace forward declaration with proper includes
Add missing includes and dependency.

Forward declaring VideoDecoderFactory started causing compilation errors
when user doesn't explicitly specify one.

Bug: None
Change-Id: Id7d1634d5dc409a1c3f9e4778deee21f345e7cdf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139250
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28124}
2019-05-31 14:49:12 +00:00
d7e2fb3309 mb: Implement 'quiet' flag in mb lookup
This is a partial port of https://chromium-review.googlesource.com/1576022
Needed because recipes assume the flag exists.

Example error (unnoticed until now because it's silently ignored):
https://logs.chromium.org/logs/webrtc/buildbucket/cr-buildbucket.appspot.com/8911948550157608800/+/steps/lookup_GN_args/0/stdout

Bug: chromium:955062
Change-Id: Id3707903dd5747c13bba05df76f799fb523a6faa
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139248
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28123}
2019-05-31 11:51:15 +00:00
cecf87ff29 Reland "Change default secure SCTP protocol to UDP/DTLS/SCTP"
This reverts commit 4436887ed2d3324279e0f2e091c9e9355392721a.

Reason for revert: The original revert was intended to be temporary.

Original change's description:
> Revert "Change default secure SCTP protocol to UDP/DTLS/SCTP"
> 
> This reverts commit c3f4820e129d44471b366b8885a67b5392918d5a.
> 
> Reason for revert: Will temporarily revert to fix an issue and reland afterwards.
> 
> Original change's description:
> > Change default secure SCTP protocol to UDP/DTLS/SCTP
> > 
> > The old value - DTLS/SCTP - is not standards conformant,
> > and the new value should be parsable since Chrome M61.
> > 
> > Bug: webrtc:7706
> > Change-Id: I7468cc9597dec4ef4b102fccddc4e981fed7e8d8
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/136804
> > Reviewed-by: Steve Anton <steveanton@webrtc.org>
> > Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#27940}
> 
> TBR=steveanton@webrtc.org,mbonadei@webrtc.org,hbos@webrtc.org,hta@webrtc.org
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: webrtc:7706
> Change-Id: Ida8ae20767485c75edc44dff8a3fa1af2006f207
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139244
> Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
> Reviewed-by: Henrik Boström <hbos@webrtc.org>
> Commit-Queue: Guido Urdaneta <guidou@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28121}

TBR=steveanton@webrtc.org,mbonadei@webrtc.org,hbos@webrtc.org,hta@webrtc.org,guidou@webrtc.org

Change-Id: I381fa18b644874c20ddaa4cd13fec79a5fd9555a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7706
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139246
Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Guido Urdaneta <guidou@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28122}
2019-05-31 11:08:03 +00:00
4436887ed2 Revert "Change default secure SCTP protocol to UDP/DTLS/SCTP"
This reverts commit c3f4820e129d44471b366b8885a67b5392918d5a.

Reason for revert: Will temporarily revert to fix an issue and reland afterwards.

Original change's description:
> Change default secure SCTP protocol to UDP/DTLS/SCTP
> 
> The old value - DTLS/SCTP - is not standards conformant,
> and the new value should be parsable since Chrome M61.
> 
> Bug: webrtc:7706
> Change-Id: I7468cc9597dec4ef4b102fccddc4e981fed7e8d8
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/136804
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27940}

TBR=steveanton@webrtc.org,mbonadei@webrtc.org,hbos@webrtc.org,hta@webrtc.org

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

Bug: webrtc:7706
Change-Id: Ida8ae20767485c75edc44dff8a3fa1af2006f207
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139244
Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Guido Urdaneta <guidou@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28121}
2019-05-31 10:16:10 +00:00
a937c6ea21 Remove Win32 ASan from mb config.
Bug: webrtc:10696
Change-Id: I97b9d0944d7343d83e1397f58959499e1a0b26b8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139243
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28120}
2019-05-31 09:02:13 +00:00
ad4a3c8d66 Roll chromium_revision 81e506385d..c1296cf1c0 (664522:665078)
Change log: 81e506385d..c1296cf1c0
Full diff: 81e506385d..c1296cf1c0

Changed dependencies
* src/base: 586a25c28d..0f4d61e0ee
* src/build: 444ba36288..355210a48f
* src/ios: d10cddfaf8..4552c595c0
* src/testing: 8d29c9ddf9..0734c202c4
* src/third_party: 39da171c1e..b260072908
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/903755a1f8..0aa9d59e4e
* src/third_party/depot_tools: 96104d42da..cd28c22b7b
* src/third_party/freetype/src: f37083edf0..7b275a5af1
* src/tools: b800d29944..7eaa5f5269
DEPS diff: 81e506385d..c1296cf1c0/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,
BUG=None

Change-Id: I9cf6dcab039c47ea49e8e8f7a0e333b142315a36
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139462
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28119}
2019-05-31 08:56:29 +00:00
e93d109188 Add "Win asan 64-bit" in order to migrate away from the 2-bit version.
Chromium is thinking to remove the toolchain [1] and WebRTC can
probably switch to run it on x64 without any problem.

[1] - https://groups.google.com/a/chromium.org/d/msg/chromium-dev/IO5v9yx545M/H93qyx3UAgAJ

Bug: webrtc:10696
Change-Id: Ic5c6e795b662319a2338e4c3ff9e190874356296
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139100
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Artem Titarenko <artit@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28118}
2019-05-31 07:57:13 +00:00
eb22227c5b Add OnDatgramLost and default value for receive_timestamp.
The datagram sink needs to know when datagrams are lost in addition to
when they are acked.

DatagramAck::receive_timestamp needs a default value so that
DatagramAck's default ctor is not implicitly deleted.  Without a default
ctor, it's not possible to make this struct without specifying all its
fields, so users will still be broken when the interface adds a new
field.

Bug: webrtc:9719
Change-Id: I6688a938d68eea133f12b13a1228d4df4771d1b8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139480
Reviewed-by: Anton Sukhanov <sukhanov@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28117}
2019-05-30 23:06:24 +00:00
d91969ed79 Explicitly close PeerConnections when using ScopedFieldTrials
Since ScopedFieldTrials is not thread safe, if it goes out of
scope while other threads are still running and possibly querying
the field trials then it's possible to hit an MSAN failure.

Bug: webrtc:10694
Change-Id: I93c94f1008e4478d98ec1545bbc0a7536739e479
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139460
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28116}
2019-05-30 20:32:05 +00:00
220f4bec16 Remove some media/ --> pc/ test dependencies
pc/ depends on media/, so the media/ tests should not have circular
dependencies on pc/.

Bug: None
Change-Id: I849cefecd91e9cd11415bbd93465a98dead735d9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139361
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28115}
2019-05-30 18:52:28 +00:00
57dc02a5c2 Add receive_timestamp to DatagramAcks.
Whenever a datagram is acked, the datagram transport will provide the
remote peer's receive timestamp in this field.

Bug: webrtc:9719
Change-Id: I516b9d602e62179a3deda001e0ee9b484aa20d37
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139440
Reviewed-by: Anton Sukhanov <sukhanov@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28114}
2019-05-30 18:35:07 +00:00
0c1c1b4014 Move ownership of ICE from DtlsTransport to JsepTransport.
It does not make sense for DtlsTransport to own ICE, and this arrangement will
not work when negotiating datagram or DTLS transport.  During negotiation, both
a DTLS transport and a datagram transport need to be ready to receive from the
same ICE transport, depending on which protocol is chosen by the answerer.  Once
the answerer chooses a protocol, the transport that is not chosen must be
deleted, but ICE must be left intact for use by the remaining transport.

Bug: webrtc:9719
Change-Id: Ibab969b574c981e3834ced71f8ff88008cb26a6c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139340
Reviewed-by: Anton Sukhanov <sukhanov@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28113}
2019-05-30 01:27:50 +00:00
a913c12462 Roll chromium_revision 2d1120f0c1..81e506385d (664417:664522)
Change log: 2d1120f0c1..81e506385d
Full diff: 2d1120f0c1..81e506385d

Changed dependencies
* src/base: 6309110fa3..586a25c28d
* src/build: b96656d2d3..444ba36288
* src/ios: f0996d4969..d10cddfaf8
* src/testing: b7fa295fb2..8d29c9ddf9
* src/third_party: 1c31b74add..39da171c1e
* src/third_party/depot_tools: 2ee83757a1..96104d42da
* src/third_party/libvpx/source/libvpx: 197827edb8..0308a9a132
* src/tools: ad77db01ec..b800d29944
DEPS diff: 2d1120f0c1..81e506385d/DEPS

No update to Clang.

TBR=chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com,marpan@webrtc.org, jianj@chromium.org,
BUG=None

Change-Id: I517182784a9b17dbb787b3d0720e3c89027b49f4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139320
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#28112}
2019-05-30 00:25:45 +00:00
74bebc597e Add OnDatagramAcked interface
Bug: webrtc:9719
Change-Id: Ib394e02a4f0dcb36da64b9f005f068a53a50854c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139280
Commit-Queue: Anton Sukhanov <sukhanov@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28111}
2019-05-29 22:08:26 +00:00