Commit Graph

27776 Commits

Author SHA1 Message Date
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
72055b11be Roll chromium_revision 8891f34d24..2d1120f0c1 (664289:664417)
Change log: 8891f34d24..2d1120f0c1
Full diff: 8891f34d24..2d1120f0c1

Changed dependencies
* src/base: bd4e7aa56a..6309110fa3
* src/build: 2ceef49377..b96656d2d3
* src/ios: 240b59dd66..f0996d4969
* src/testing: db6974709e..b7fa295fb2
* src/third_party: 1c0914a839..1c31b74add
* src/third_party/freetype/src: fbbcf50367..f37083edf0
* src/tools: 3ac62d3b34..ad77db01ec
DEPS diff: 8891f34d24..2d1120f0c1/DEPS

No update to Clang.

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

Change-Id: I846e291a227b330563b6887df42ed549c8360926
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139260
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@{#28110}
2019-05-29 20:38:03 +00:00
740cc35145 Roll chromium_revision d4906ebd49..8891f34d24 (664184:664289)
Change log: d4906ebd49..8891f34d24
Full diff: d4906ebd49..8891f34d24

Changed dependencies
* src/base: 1e923de1a5..bd4e7aa56a
* src/build: a4135553f3..2ceef49377
* src/ios: 2dbfb9b489..240b59dd66
* src/testing: fe44dbaae1..db6974709e
* src/third_party: 5e986f5469..1c0914a839
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/f5a5c539a5..903755a1f8
* src/third_party/googletest/src: f71fb4f9a9..f5edb4f542
* src/tools: f4a346a33f..3ac62d3b34
DEPS diff: d4906ebd49..8891f34d24/DEPS

No update to Clang.

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

Change-Id: I603f3df7a8eaf570e9e3165ecba4baa913a87d4f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139180
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@{#28109}
2019-05-29 16:44:04 +00:00
6806550d5d Fix build with recent linux kernel.
Recent kernel commit[1] moved a bit the define for this constant. This revealed
a missing include in WebRTC.

[1]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0768e17073dc5

Bug: webrtc:10677
Change-Id: I6ed69d307599d077760ae6ad74be10bfbdd1cac6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138270
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28108}
2019-05-29 15:04:55 +00:00
85a9d91cd4 Add ability to set min/start/max bitrate on peer's PC in PC quality tests
Bug: webrtc:10138, webrtc:10692
Change-Id: I4d7ae84dc2945fef6451a6671786b3b19cd9abd8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139108
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28107}
2019-05-29 13:25:26 +00:00
845c6aa140 Add support for early loss detection using transport feedback.
Bug: webrtc:10676
Change-Id: Ifdef133e123a0c54204397fb323f4c671c40a464
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/135881
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28106}
2019-05-29 13:21:10 +00:00
b3b3e3f632 Add acked bandwidth estimator config for sample uncertainty in ALR.
Change-Id: Ie01d66d459f704e7fa99b439dd6f917e4e41cead
Bug: webrtc:10698
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139106
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Christoffer Rodbro <crodbro@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28105}
2019-05-29 13:08:53 +00:00
7eb0a5e210 AudioDecoderOpus: Add support for 16 kHz output sample rate
In addition to the 48 kHz that we've always used.

Bug: webrtc:10631
Change-Id: If73bf7ff9c1c0d22e0d1caa245128612850f8e41
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138268
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28104}
2019-05-29 12:42:38 +00:00
ed69d41b62 Remove deprecated RtcEventLog Create functions
Bug: webrtc:10206
Change-Id: Iabf3eea20027ae42faadabba572dc68f9b678121
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139105
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28103}
2019-05-29 12:39:08 +00:00
2f5554dae5 Make KeyFrameRequestSender injectable in RtpVideoStreamReceiver
This is a partial revert of
https://webrtc-review.googlesource.com/c/src/+/130101.

The KeyFrameRequestSender argument is added back to the constructor of
RtpVideoStreamReceiver. It is optional; if a null pointer is passed,
key frame requests are sent via the internal RtpRtcp module, and this is
how the class is used by VideoReceiveStream. An injectable
KeyFrameRequestSender is useful for tests, for downstream applications
that want to route key frame requests elsewhere, and should also aid
later migration to RtcpTransciever.

Bug: None
Change-Id: Idf9baeed21570625ad74e9afbe38f7ea5bf79feb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139107
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28102}
2019-05-29 12:24:02 +00:00
e8e7d7b0bc Move Connection into it's own .h/.cc file.
This patch is a NOP and moves
- class Connection
- class ConnectionInfo
- class ProxyConnection

from port.{h/cc} to a new file called connection.{h/cc}

BUG=webrtc:10647

Change-Id: I89322d3421d272657e24a46b28ab6679fcdc9450
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/137509
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28101}
2019-05-29 11:27:47 +00:00
28f0eb2dde Move H.264 SPS VUI rewriting to FrameEncodeMetadataWriter.
Bug: webrtc:10559
Change-Id: I956287e71a47856cfb6dd807d9715d6ee2572f55
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138263
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirta Dvornicic <mirtad@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28100}
2019-05-29 10:37:22 +00:00
a1d1a1e976 WebRTC Opus C interface: Add support for non-48 kHz decode sample rate
Plus tests for 16 kHz.

Bug: webrtc:10631
Change-Id: I2d89bc6d0d9548f0ad7bb1e36d6dfde6b6b31f83
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138072
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28099}
2019-05-29 10:33:03 +00:00
232b6a16cc Propagate screenshare info into video track and it's source.
If screen share is set, then we need to tell video source, that it
is screen share source. Also video track should be aware, that it is
screen share track. It is required to choose proper video encoding
settings.

Bug: webrtc:10138
Change-Id: I5c82584ae0325a303a495554d87962a98b676694
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138278
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28098}
2019-05-29 10:14:22 +00:00
98266a4af1 Roll chromium_revision 99181c0bec..d4906ebd49 (664078:664184)
Change log: 99181c0bec..d4906ebd49
Full diff: 99181c0bec..d4906ebd49

Changed dependencies
* src/build: c93f946980..a4135553f3
* src/ios: 04d8895272..2dbfb9b489
* src/third_party: d3bc283331..5e986f5469
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/5db62d36c9..f5a5c539a5
* src/third_party/depot_tools: 4ce909c11c..2ee83757a1
* src/tools: 3b7980914d..f4a346a33f
DEPS diff: 99181c0bec..d4906ebd49/DEPS

No update to Clang.

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

Change-Id: I5b9a182e2a65cbcef0b49c7c94d3b6984d3f0178
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139120
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@{#28097}
2019-05-29 09:59:58 +00:00
6737841533 Add jitterBufferDelay and jitterBufferEmittedCount stats for video
Bug: webrtc:10450
Change-Id: I6f586a3c6781450b9bfdcc31dc3f49f6289d70e0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138265
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28096}
2019-05-29 06:23:57 +00:00
e4470cd8b4 Roll chromium_revision 9b60f86c15..99181c0bec (663961:664078)
Change log: 9b60f86c15..99181c0bec
Full diff: 9b60f86c15..99181c0bec

Changed dependencies
* src/base: 4156e5da2f..1e923de1a5
* src/ios: 25f8d26e51..04d8895272
* src/testing: b14a9a2b64..fe44dbaae1
* src/third_party: 374b68de06..d3bc283331
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/a7b3312467..5db62d36c9
* src/third_party/depot_tools: c5b8a73247..4ce909c11c
* src/tools: b4c34ff93d..3b7980914d
DEPS diff: 9b60f86c15..99181c0bec/DEPS

No update to Clang.

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

Change-Id: I006e3a3012e05b1d20a61b578f55f034c2007b58
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139040
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@{#28095}
2019-05-29 02:30:57 +00:00