Commit Graph

25885 Commits

Author SHA1 Message Date
f3e9abf6b3 Add field trial for ExtraICEPing
This patch adds a field trial for sending an extra ice ping
when receiving a ice ping and we have not received an ice ping
response. The theory is that this will decrease time it takes
for a connection to become writable and improve behavior with
ice reroutes (choosing a new ice candidate pair).

Bug: webrtc:10273
Change-Id: I98d442649869e7c7655edbbb5ab42c596f5d3b9d
Reviewed-on: https://webrtc-review.googlesource.com/c/120722
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26503}
2019-01-31 22:40:16 +00:00
39ecb17572 Roll chromium_revision 71d81bd262..9963b4a7d5 (627987:628101)
Change log: 71d81bd262..9963b4a7d5
Full diff: 71d81bd262..9963b4a7d5

Changed dependencies
* src/base: eed1b927dc..1eebae8c27
* src/build: 036ce949f6..90e66bc2ad
* src/ios: 06dbb6d476..9a63603764
* src/testing: b216197e41..3cf865e559
* src/third_party: 08cb17e8b3..f09defc3ff
* src/tools: a922084473..42fe5bfbda
DEPS diff: 71d81bd262..9963b4a7d5/DEPS

No update to Clang.

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

Change-Id: I0a496a8fc2a59f6a3379fbfc798478b5918fcd57
Reviewed-on: https://webrtc-review.googlesource.com/c/120843
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@{#26502}
2019-01-31 22:36:16 +00:00
1e6e773d79 Add steveanton@ to media/ OWNERS
Bug: None
Change-Id: Ic1f9e72cb574002539f4fe84d483bb94afbfbb71
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/c/120747
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Commit-Queue: Seth Hampson <shampson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26501}
2019-01-31 22:10:21 +00:00
e92d6624e8 Modify pc/ WATCHLISTS definition
Bug: None
Change-Id: I187981ac0dd16c7da299208e8dc351a686e8eea9
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/c/120820
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Commit-Queue: Seth Hampson <shampson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26500}
2019-01-31 22:09:16 +00:00
a177f801e4 Roll chromium_revision a91ca6cb6f..71d81bd262 (627878:627987)
Change log: a91ca6cb6f..71d81bd262
Full diff: a91ca6cb6f..71d81bd262

Changed dependencies
* src/base: a6964ea54f..eed1b927dc
* src/build: b6c33ca929..036ce949f6
* src/ios: 27d4dd83f5..06dbb6d476
* src/testing: af8ccf68fb..b216197e41
* src/third_party: 64b1dd4a22..08cb17e8b3
* src/tools: a45805a008..a922084473
DEPS diff: a91ca6cb6f..71d81bd262/DEPS

No update to Clang.

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

Change-Id: Ie2fe5deb57cb93a9f12887e0e37a2239167c39ad
Reviewed-on: https://webrtc-review.googlesource.com/c/120746
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@{#26499}
2019-01-31 17:44:37 +00:00
7af962b38d Add field trial to configure averaging window for BitrateEstimator.
Bug: webrtc:10274
Change-Id: Ida699c8e0cdc91d55f91e7f685d0ab7e880703a0
Reviewed-on: https://webrtc-review.googlesource.com/c/120809
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26498}
2019-01-31 16:18:42 +00:00
01f64e0eb2 Add test to verify TaskQueue memory access order.
Bug: webrtc:10138
Change-Id: I53e8a3a612ad44feced8d63a4035d79b7e0f22a9
Reviewed-on: https://webrtc-review.googlesource.com/c/120601
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26497}
2019-01-31 14:45:45 +00:00
5054f54457 Partial frame capture API part 2
Implement test utility for extracting changed part of video frames.

Bug: webrtc:10152
Change-Id: Iead052d2a18384aaa828cd7821be961b8614568e
Reviewed-on: https://webrtc-review.googlesource.com/c/120407
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26496}
2019-01-31 14:44:40 +00:00
b6458e1af2 Switch test on audio stream instead of data channel.
Create audio stream instead of data channel to check compatibility of
network layer with PeerConnection. Replacement is done because there is
a data race inside data channel sctp transport. This CL will fix
bot behavior. Further data race investigation will be done in this
bug: https://bugs.chromium.org/p/webrtc/issues/detail?id=10268

Bug: webrtc:10268, webrtc:10138
Change-Id: I4f7a1116c65dbf4a3508b7d81d654ccd320795f0
Reviewed-on: https://webrtc-review.googlesource.com/c/120807
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26495}
2019-01-31 14:16:11 +00:00
c84f661b10 Stop using Googletest legacy APIs.
Googletest recently started replacing the term Test Case by Test Suite.
From now on, the preferred API is TestSuite*; the older TestCase* API
will be slowly deprecated.

This CL moves WebRTC to the new set of APIs.

More info in [1].

This CL has been generated with this script:

declare -A items
items[TYPED_TEST_CASE]=TYPED_TEST_SUITE
items[TYPED_TEST_CASE_P]=TYPED_TEST_SUITE_P
items[REGISTER_TYPED_TEST_CASE_P]=REGISTER_TYPED_TEST_SUITE_P
items[INSTANTIATE_TYPED_TEST_CASE_P]=INSTANTIATE_TYPED_TEST_SUITE_P
items[INSTANTIATE_TEST_CASE_P]=INSTANTIATE_TEST_SUITE_P
for i in "${!items[@]}"
do
  git ls-files | xargs sed -i "s/\b$i\b/${items[$i]}/g"
done
git cl format

[1] - https://github.com/google/googletest/blob/master/googletest/docs/primer.md#beware-of-the-nomenclature

Bug: None
Change-Id: I5ae191e3046caf347aeee01554d5743548ab0e3f
Reviewed-on: https://webrtc-review.googlesource.com/c/118701
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26494}
2019-01-31 13:23:33 +00:00
12e5d392cc Reland "Partial frame capture API part 1"
Reland with fixes to undefined behavior.

Define new optional struct in VideoFrame to signal that the frame is a
changed part of a whole picture and add a flag to signal that partial
update may be issued by the VideoFrame source.

Also, fix too strict assumptions in FrameBuffers PasteFrom methods.
Also, add ability to set a new buffer in video frame.

Original Reviewed-on: https://webrtc-review.googlesource.com/c/120405

Bug: webrtc:10152
Change-Id: I85790dfc7cec2f23abfe9d6cd18dc76a0c343bc0
Reviewed-on: https://webrtc-review.googlesource.com/c/120780
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26493}
2019-01-31 13:03:31 +00:00
3d22114f1c Revert "Make internal.*.webrtc iOS bots dimensions depend on bot_id and pool only"
This reverts commit 9a27c2fc7a2eb068eb06fad2e991039e2fceb960.

Reason for revert: device_type and os version is mandatory
for correct step naming

Original change's description:
> Make internal.*.webrtc iOS bots dimensions depend on bot_id and pool only
> 
> Bug: webrtc:10047
> Change-Id: I48bcc15721859062c73c7e5fbae7a2fd65713adc
> Reviewed-on: https://webrtc-review.googlesource.com/c/120615
> Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
> Commit-Queue: Artem Titarenko <artit@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#26485}

TBR=oprypin@webrtc.org,artit@webrtc.org

Change-Id: I511eec8e8c24e82881be06ca0ca7b7038971db94
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10047
Reviewed-on: https://webrtc-review.googlesource.com/c/120802
Reviewed-by: Artem Titarenko <artit@webrtc.org>
Commit-Queue: Artem Titarenko <artit@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26492}
2019-01-31 12:34:14 +00:00
eceea31cc2 Reduces locking in SimulatedNetwork class.
Bug: webrtc:9883
Change-Id: I07c78fd2dbba5e7481194b0d1aabfb56809ff6fc
Reviewed-on: https://webrtc-review.googlesource.com/c/120612
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26491}
2019-01-31 12:03:43 +00:00
8102a1a8ea Revert "Partial frame capture API part 1"
This reverts commit 8a21e1c9c95c9b9b570c84bdfeda0315ede9dc29.

Reason for revert: breaks buildbots

Original change's description:
> Partial frame capture API part 1
> 
> Define new optional struct in VideoFrame to signal that the frame is a
> changed part of a whole picture and add a flag to signal that partial
> update may be issued by the VideoFrame source.
> 
> Also, fix too strict assumptions in FrameBuffers PasteFrom methods.
> Also, add ability to set a new buffer in video frame.
> 
> 
> Bug: webrtc:10152
> Change-Id: Ie0da418fd60bc7a34334329292e0b860ec388788
> Reviewed-on: https://webrtc-review.googlesource.com/c/120405
> Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#26489}

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

Change-Id: Ibf61f28e529a444882962b984474d4849bb44e4b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10152
Reviewed-on: https://webrtc-review.googlesource.com/c/120760
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26490}
2019-01-31 11:57:37 +00:00
8a21e1c9c9 Partial frame capture API part 1
Define new optional struct in VideoFrame to signal that the frame is a
changed part of a whole picture and add a flag to signal that partial
update may be issued by the VideoFrame source.

Also, fix too strict assumptions in FrameBuffers PasteFrom methods.
Also, add ability to set a new buffer in video frame.


Bug: webrtc:10152
Change-Id: Ie0da418fd60bc7a34334329292e0b860ec388788
Reviewed-on: https://webrtc-review.googlesource.com/c/120405
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26489}
2019-01-31 11:34:15 +00:00
8fe7995045 Adds bytes per second to DataType class.
This is useful for internal calculations in bitrate control code as we
can skip conversion constants.

DataRate Example(TimeDelta time, DataSize size) {
 double time_seconds = time.seconds<double>();
 double size_bytes = size.bytes<double>();
 double rate_bytes_per_sec = size_bytes/time_seconds;
 return DataRate::bytes_per_sec(std::max(0.0,rate_bytes_per_sec));
}

Bug: webrtc:9709
Change-Id: I8eefed578b6e8eee67fc36af723216407e0d0323
Reviewed-on: https://webrtc-review.googlesource.com/c/120720
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26488}
2019-01-31 11:31:55 +00:00
813c79bff9 Fix network emulation behavior when changing bandwidth.
Calculate packet exit times "just in time" rather than at send time.
This allows changing bandwidth with packets in the queue being reflected
correctly.

Bug: webrtc:10265
Change-Id: I5a38663def4d2bfee64164f9ae62bc61277064bb
Reviewed-on: https://webrtc-review.googlesource.com/c/120403
Commit-Queue: Christoffer Rodbro <crodbro@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26487}
2019-01-31 10:42:03 +00:00
fdf5cd5928 Roll chromium_revision 6af465608b..a91ca6cb6f (627775:627878)
Change log: 6af465608b..a91ca6cb6f
Full diff: 6af465608b..a91ca6cb6f

Changed dependencies
* src/base: df9fd4db8d..a6964ea54f
* src/ios: 7672ca0777..27d4dd83f5
* src/third_party: 1e2c4f7ac7..64b1dd4a22
* src/third_party/depot_tools: 1131ccb694..50b187ca83
* src/tools: 7c7b04b043..a45805a008
DEPS diff: 6af465608b..a91ca6cb6f/DEPS

No update to Clang.

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

Change-Id: I48399e3e6e09c771e0b0ef11cc86e5cb5c9991d6
Reviewed-on: https://webrtc-review.googlesource.com/c/120690
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@{#26486}
2019-01-31 10:40:59 +00:00
9a27c2fc7a Make internal.*.webrtc iOS bots dimensions depend on bot_id and pool only
Bug: webrtc:10047
Change-Id: I48bcc15721859062c73c7e5fbae7a2fd65713adc
Reviewed-on: https://webrtc-review.googlesource.com/c/120615
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Artem Titarenko <artit@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26485}
2019-01-31 10:09:16 +00:00
6893f3c6f0 Move ownership of PlayoutDelayOracle
Moved from RtpSender to RtpSenderVideo, since currently the
PlayoutDelay extension is used for video only, and configured via
RTPVideoHeader.

Bug: webrtc:7135
Change-Id: Idfcc90cefea83e40a4e79164d7914cdcd50e41fe
Reviewed-on: https://webrtc-review.googlesource.com/c/120357
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26484}
2019-01-31 09:25:59 +00:00
82ac240040 mb: Generate gn args from mb_config rather than tools_webrtc/ios
Bug: webrtc:10253
Change-Id: I3ed7b7fd11d31c3697e637b477db7e9ec9677237
Reviewed-on: https://webrtc-review.googlesource.com/c/120404
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26483}
2019-01-31 08:48:44 +00:00
2a96ab20b2 Makes Clock interface fully mutable.
Calls to the time functions in Clock can have side effects in some
circumstances. It's also questionable if it's a good idea to allow
repeated calls to a const method return different values without
any changed to the class instance.

Bug: webrtc:10270
Change-Id: I316f9788adac954c52b0f9230881b872c54a7ac9
Reviewed-on: https://webrtc-review.googlesource.com/c/120348
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26482}
2019-01-31 08:12:05 +00:00
7e0ae16c73 Roll chromium_revision 97b87d124d..6af465608b (627608:627775)
Change log: 97b87d124d..6af465608b
Full diff: 97b87d124d..6af465608b

Changed dependencies
* src/base: 2ff6fbc750..df9fd4db8d
* src/build: 09245f11f1..b6c33ca929
* src/ios: 4bca6e09b3..7672ca0777
* src/testing: d861c00a05..af8ccf68fb
* src/third_party: 1bc79a4fa0..1e2c4f7ac7
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/36e00d45b4..2061050c4d
* src/tools: 01b10a3195..7c7b04b043
DEPS diff: 97b87d124d..6af465608b/DEPS

No update to Clang.

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

Change-Id: If653d006c257004ebf453f8b99cf372bb428fbc9
Reviewed-on: https://webrtc-review.googlesource.com/c/120685
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@{#26481}
2019-01-31 04:24:35 +00:00
042bb00838 Fix RTP transport accepting invalid RTCP headers.
Currently, the RtpTransport checks that the packet is either RTP or
RTCP. However, the RTCP check does not verify that the packet is a valid RTP,
and therefore invalid RTCP packets were allowed in the RtpTransport::OnReadPacket.

This change makes sure that the test for RTCP header (IsRtcpPacket) checks that it has the valid RTP version (2).

So far if the packet had the second byte that looked like
RTCP, it would ignore the first byte.


Bug: None
Change-Id: I5d07d497b9ef609c74b6e507c5f3e19e4bf10194
Reviewed-on: https://webrtc-review.googlesource.com/c/120646
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Commit-Queue: Peter Slatala <psla@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26480}
2019-01-31 03:00:58 +00:00
287298159f Roll chromium_revision 10156ea4fa..97b87d124d (627488:627608)
Change log: 10156ea4fa..97b87d124d
Full diff: 10156ea4fa..97b87d124d

Changed dependencies
* src/base: 3fc534991e..2ff6fbc750
* src/build: d7787756cb..09245f11f1
* src/ios: 6ff3c759a3..4bca6e09b3
* src/testing: 9c4deaccaa..d861c00a05
* src/third_party: 89af89b135..1bc79a4fa0
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4322547327..36e00d45b4
* src/tools: 2405a4c20d..01b10a3195
DEPS diff: 10156ea4fa..97b87d124d/DEPS

No update to Clang.

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

Change-Id: I079effe7f52b6b7957aa165605e6ab651d8bde23
Reviewed-on: https://webrtc-review.googlesource.com/c/120680
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@{#26479}
2019-01-30 22:42:43 +00:00
2d79dccfb1 Removes new delay based rate controller.
Will focus on delivering model based controller instead.

Bug: webrtc:9718
Change-Id: I5df82424469c577f3c170758e0db64e3e1aa7705
Reviewed-on: https://webrtc-review.googlesource.com/c/120607
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26478}
2019-01-30 19:33:57 +00:00
8b087f36d2 Roll chromium_revision 39a2376d54..10156ea4fa (627358:627488)
Change log: 39a2376d54..10156ea4fa
Full diff: 39a2376d54..10156ea4fa

Changed dependencies
* src/base: 57443a7742..3fc534991e
* src/build: 31ec511403..d7787756cb
* src/buildtools: 2f02e1f363..6fbda1b24c
* src/ios: bb637bf1f7..6ff3c759a3
* src/testing: ba5f8bf3a3..9c4deaccaa
* src/third_party: afd949ec5f..89af89b135
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1a9772ff05..4322547327
* src/tools: 2c1ade8746..2405a4c20d
DEPS diff: 39a2376d54..10156ea4fa/DEPS

No update to Clang.

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

Change-Id: I49906d33812185755140dc93f1354d0ac208374e
Reviewed-on: https://webrtc-review.googlesource.com/c/120641
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@{#26477}
2019-01-30 18:46:22 +00:00
e32b4fea49 Allow 1x1 images in libvpx_vp8_encoder.cc
Bug: webrtc:10099
Change-Id: I870e7262ef893b260f714b47c43f2465eed83006
Reviewed-on: https://webrtc-review.googlesource.com/c/120422
Commit-Queue: Dan Minor <dminor@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26476}
2019-01-30 17:40:35 +00:00
170a4b383f Trim unnecessary OpenSSL/BoringSSL ifdefs.
Now that WebRTC requires OpenSSL 1.1.0 as minimum, some bits can be
removed. The simpler versioning API is shared between BoringSSL and
OpenSSL 1.1.0, and there are some remnants of the threading callbacks
that can be removed.

Bug: none
Change-Id: I2078ca9c444b1f1efa9e4b235eb4e6037865d8fb
Reviewed-on: https://webrtc-review.googlesource.com/c/120261
Commit-Queue: David Benjamin <davidben@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Benjamin Wright <benwright@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26475}
2019-01-30 17:09:49 +00:00
71f94c93a6 Refactor PlayoutDelayOracle with separate update methods
There's now one const method PlayoutDelayToSend to produce the delay
values to insert into outgoing packets, and two update methods,
OnSentPacket, and OnReceivedAck, to observe outgoing packets and acks,
respectively.

Bug: webrtc:7135
Change-Id: I07498c30f0de87ae0113f7e2eb6357a091a1f0af
Reviewed-on: https://webrtc-review.googlesource.com/c/120603
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26474}
2019-01-30 16:50:24 +00:00
fa89d84698 Register callback for key frame request from media transport.
Bug: webrtc:9719
Change-Id: Ibeadadb8e477d6d712fd69427c95e1e4f1940854
Reviewed-on: https://webrtc-review.googlesource.com/c/120340
Commit-Queue: Niels Moller <nisse@webrtc.org>
Commit-Queue: Peter Slatala <psla@webrtc.org>
Reviewed-by: Peter Slatala <psla@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26473}
2019-01-30 16:26:31 +00:00
984626245a Add IceTransportInterface object
This creates the API for an ICE transport object, and lets it
be accessible from a DTLS transport object.

Bug: chromium:907849
Change-Id: Ieb24570217dec75ce0deca8420739c1f116fbba4
Reviewed-on: https://webrtc-review.googlesource.com/c/118703
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26472}
2019-01-30 16:16:51 +00:00
0873684401 Bump internal webrtc iOS bots to iOS 12.0
And remove custom expiration_time for release bots because currently
it equals to default value

Bug: webrtc:10047
Change-Id: Ife7fd154237575e3d43f7be814e1156624166dab
Reviewed-on: https://webrtc-review.googlesource.com/c/120604
Commit-Queue: Artem Titarenko <artit@webrtc.org>
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26471}
2019-01-30 16:14:38 +00:00
0774bd9583 Introduce network layer.
This CL contains network emulation layer and is a first part of landing
CL https://webrtc-review.googlesource.com/c/src/+/116663

Bug: webrtc:10138
Change-Id: If664b21e9df847aef8144d622d08fc7e9f6608da
Reviewed-on: https://webrtc-review.googlesource.com/c/120406
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26470}
2019-01-30 15:45:10 +00:00
338bfab0e6 Move sorting from TransportFeedbackAdapter to GoogCC.
BUG= none

Change-Id: Ibe1d058f6d5ed18a7cbdadaa3c053dd51533309d
Reviewed-on: https://webrtc-review.googlesource.com/c/120602
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26469}
2019-01-30 14:28:59 +00:00
9f3a44f515 Introcuce RTCError(const T&) constructor.
This CL is spawned from [1] and it introduces RTCError(const T&) in
order to remove an unneeded std::move.

[1] - https://webrtc-review.googlesource.com/c/src/+/120350

Bug: webrtc:10252
Change-Id: Ibd5aa1c901fd920549e9437908178c786019a328
Reviewed-on: https://webrtc-review.googlesource.com/c/120560
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26468}
2019-01-30 13:43:29 +00:00
aa01f27667 Removes all const Clock*.
This prepares for making the Clock interface fully mutable.

Calls to the time functions in Clock can have side effects in some
circumstances. It's also questionable if it's a good idea to allow
repeated calls to a const method return different values without
any changed to the class instance.

Bug: webrtc:9883
Change-Id: I96fb9230705f7c80a4c0702132fd9dc73899fc5e
Reviewed-on: https://webrtc-review.googlesource.com/c/120347
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26467}
2019-01-30 13:03:37 +00:00
15df2ef2c0 Fix typo in SafeClamp docs
Bug: none
Notry: true
Change-Id: Ib7c6a74207d1ba6f8300fdae2ec88d9493c1f310
Reviewed-on: https://webrtc-review.googlesource.com/c/120561
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26466}
2019-01-30 12:47:20 +00:00
358c99a66c Delete deprecated MediaTransport methods using VideoCodecType.
This is a followup, deleting the things marked as deprecated in
https://webrtc-review.googlesource.com/c/113180.

Bug: webrtc:9719
Change-Id: I64dc31c6918f575599fc6b0bbfa47c5b1f2f3019
Reviewed-on: https://webrtc-review.googlesource.com/c/113521
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Peter Slatala <psla@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26465}
2019-01-30 10:31:21 +00:00
840b05587f Introduce TestPeer.
TestPeer represent single participant in the call and will own most
required for call objects.

TestPeer::CreateTestPeer is responsible for full setup of TestPeer and
allow to correctly inject media analyzers into call.

Bug: webrtc:10138
Change-Id: Ide7062004b0dc113b9c05181d8144797a3cc27a8
Reviewed-on: https://webrtc-review.googlesource.com/c/119941
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Peter Slatala <psla@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Yves Gerey <yvesg@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26464}
2019-01-30 10:05:54 +00:00
2c2843d7b5 Remove infra/config directory because cq.cfg has been moved
https://webrtc-review.googlesource.com/119982 made it so that this cq.cfg has no effect.

TBR: phoglund@webrtc.org
Bug: chromium:916292
Change-Id: Ibe6bfa93b2099948c3bf7fee8ea551a595006def
Reviewed-on: https://webrtc-review.googlesource.com/c/120046
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Artem Titarenko <artit@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26463}
2019-01-30 09:47:58 +00:00
1339dddc2c Roll chromium_revision 5e5d0f9ef8..39a2376d54 (627255:627358)
Change log: 5e5d0f9ef8..39a2376d54
Full diff: 5e5d0f9ef8..39a2376d54

Changed dependencies
* src/base: 052ddc5f6e..57443a7742
* src/build: 078c5476d6..31ec511403
* src/ios: d8c1cb941c..bb637bf1f7
* src/testing: 45190ccdd0..ba5f8bf3a3
* src/third_party: 64fa4ace3a..afd949ec5f
* src/third_party/depot_tools: b69515579d..1131ccb694
* src/tools: d5d6050c4a..2c1ade8746
DEPS diff: 5e5d0f9ef8..39a2376d54/DEPS

No update to Clang.

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

Change-Id: Id76614e70db2ef0d533f60dec5b41b6936884afb
Reviewed-on: https://webrtc-review.googlesource.com/c/120544
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@{#26462}
2019-01-30 09:32:42 +00:00
fe055c197a [clang-tidy] Apply modernize-use-override fixes.
This CL applies clang-tidy's modernize-use-override [1] to the
WebRTC codebase.

All changes in this CL are automatically generated by both clang-tidy
and 'git cl format'.

[1] - https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-override.html

Bug: webrtc:10252
Change-Id: I2bb8bd90fa8adb90aa33861fe7c788132a819a20
Reviewed-on: https://webrtc-review.googlesource.com/c/120412
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26461}
2019-01-30 09:26:17 +00:00
6957abeff1 Reland "Always use real VideoStreamsFactory in full stack tests"
Reland with fixes. Previous iteration affected media bitrate in bunch of tests.

Always use real VideoStreamsFactory in full stack tests

Because quality scaling is enabled now in full stack test, correct
factory should be used to compute actual resolution.

Also, since analyzed stream may be disabled completely now, change how
analyzer considers the test finished --- count captured frames and
stop if required amount of frames is captured and no new comparison were made.

Original Reviewed-on: https://webrtc-review.googlesource.com/c/118687

Bug: webrtc:10204
Change-Id: Id1d9066add185d56fe3cb6856b700d350576c6b2
Reviewed-on: https://webrtc-review.googlesource.com/c/119950
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26460}
2019-01-30 09:22:57 +00:00
e706c0f0c3 iOS CI config: remove flags that match default values
Bug: webrtc:10253
Change-Id: I05ff3e3f8b2d4749578761632e5e148cf77fb85c
Reviewed-on: https://webrtc-review.googlesource.com/c/120411
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26459}
2019-01-30 09:06:35 +00:00
7ea5c1ff11 Roll chromium_revision 241ac98bfc..5e5d0f9ef8 (627089:627255)
Change log: 241ac98bfc..5e5d0f9ef8
Full diff: 241ac98bfc..5e5d0f9ef8

Changed dependencies
* src/base: b75c898994..052ddc5f6e
* src/build: 9dbdd5c2ae..078c5476d6
* src/ios: 035b561e5c..d8c1cb941c
* src/testing: ee6e9ab571..45190ccdd0
* src/third_party: f20a194062..64fa4ace3a
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/a08f0fce79..1a9772ff05
* src/tools: 723be0ba24..d5d6050c4a
DEPS diff: 241ac98bfc..5e5d0f9ef8/DEPS

No update to Clang.

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

Change-Id: Ia15feb7620beb63c7fbd9ac26c182a8602d1babd
Reviewed-on: https://webrtc-review.googlesource.com/c/120500
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@{#26458}
2019-01-30 01:54:01 +00:00
6fdb3f866b Fix post submit build
https://ci.chromium.org/p/webrtc/g/ci/console

Change that broke them: https://webrtc-review.googlesource.com/c/src/+/120445/

Bug: None
Change-Id: I0ca59366e25d65ecc2ba359250a2a98b377cbfc8
Reviewed-on: https://webrtc-review.googlesource.com/c/120480
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Commit-Queue: Peter Slatala <psla@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26457}
2019-01-30 00:42:01 +00:00
4de1783027 Create visible fake_ice_transport target
Enables downstream projects to use the existing fake ice transport implementation, without taking dependency on gunit

Bug: None
Change-Id: I78bac9d40aa6e12b55e86f0460bcd98d85c7f214
Reviewed-on: https://webrtc-review.googlesource.com/c/120445
Commit-Queue: Peter Slatala <psla@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26456}
2019-01-29 22:32:46 +00:00
ae226f65c8 Use Abseil container algorithms in p2p/
Bug: None
Change-Id: I02dd19efa201bd9d55d0f7c2e1496693017a6848
Reviewed-on: https://webrtc-review.googlesource.com/c/120001
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26455}
2019-01-29 21:52:18 +00:00
3e659b811a Remove deprecated OnKeyFrame method from video sink interface in media transport
Bug: webrtc:9719
Change-Id: I0d172e41bfe46ae4eec25de0e20f2ca4bfc64c19
Reviewed-on: https://webrtc-review.googlesource.com/c/120420
Reviewed-by: Anton Sukhanov <sukhanov@webrtc.org>
Commit-Queue: Peter Slatala <psla@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26454}
2019-01-29 21:27:52 +00:00