Commit Graph

28760 Commits

Author SHA1 Message Date
63c38e21da Fix for incorrect transport sequence number config for audio in scenario tests.
Bug: webrtc:9883
Change-Id: Iafe1db4b4dbfa81c7901640114057806821de760
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148280
Reviewed-by: Jonas Olsson <jonasolsson@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28778}
2019-08-06 16:26:22 +00:00
7cbee84610 Reland "Adds PeerConnection scenario test framework."
This is a reland of ad5c4accad00e04de08e2b62d366cc1f8e0320a5

It was flaky due to starting ICE signaling before SDP negotiation
finished. This was solved by adding an helper for adding ice candidates
which will wait until the peer connection is ready if needed.

Original change's description:
> Adds PeerConnection scenario test framework.
>
> Bug: webrtc:10839
> Change-Id: If67eeb680d016d66c69d8e761a88c240e4931a5d
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147276
> Commit-Queue: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28754}

Bug: webrtc:10839
Change-Id: I6eb8f482561c87e7b0f20d2431d21a41b26c91d5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147877
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28777}
2019-08-06 16:12:12 +00:00
c64881925f DegradedCall: fake network using TaskQueue instead of ProcessThread
Tested: Manually in Chrome webrtc calls.
Bug: webrtc:10851
Change-Id: I6bc6b7625101b39e4dd8b0efa5db213ab57980a8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148077
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28776}
2019-08-06 15:05:30 +00:00
bb1f2454cd Disable RunPythonTests on rtc_tools.
The only python test present in that folder has been removed by
https://webrtc-review.googlesource.com/c/src/+/146941.

TBR=tommi@webrtc.org

No-Try: True
Bug: None
Change-Id: Idb03c3b8acceae04ebbf5bb0d8db7cd3288b929d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148074
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28775}
2019-08-06 12:48:33 +00:00
61b15905b0 Roll chromium_revision 8776a3887d..9d357a520c (684182:684300)
Change log: 8776a3887d..9d357a520c
Full diff: 8776a3887d..9d357a520c

Changed dependencies
* src/base: 829a9fb70e..60deb682db
* src/build: c462f4b82d..1f2944270d
* src/ios: e2f722b278..51fc3e12da
* src/testing: aa61825872..4531161454
* src/third_party: e072174fb4..e97bb11690
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/698405a9f6..131b9f3245
* src/third_party/depot_tools: 921f6a1751..36756e4590
* src/tools: 544726b7aa..f6f1296e62
DEPS diff: 8776a3887d..9d357a520c/DEPS

No update to Clang.

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

Change-Id: Icc06b78f78fe64764ebada4d0c9e30efcb1d0cef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148260
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@{#28774}
2019-08-06 12:40:23 +00:00
2e6c294dba Refactor test_peer.cc to reduce amount of arguments passing around
Bug: webrtc:10138
Change-Id: Ie89ec496bb42b0c1072d30870ffe5987ce780362
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148075
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28773}
2019-08-06 12:07:53 +00:00
e6b7b6678c Fix CallClient so that it calls Call::GetStats() on the right thread.
Bug: webrtc:10847
Change-Id: Id23a389b4d5bad8f2211b5ec87b37aefc81a9292
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148065
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28772}
2019-08-06 11:16:41 +00:00
a22cab8a65 Calling DebugBreak() on Windows during fatal checks instead of relying on abort().
Bug: webrtc:10846
Change-Id: Ie701f47b9b7c9d88ea983540dce3f429903a18f7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147879
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28771}
2019-08-06 09:19:00 +00:00
7ba3b81ff5 Delete class PlatformFile.
Add seek methods to FileWrapper, and refactor WavReader to use that
class instead.

Bug: webrtc:6463
Change-Id: Ifbb1989a072da6280ea5fc04b4beff991614dd53
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147265
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28770}
2019-08-06 09:07:50 +00:00
10da4a0025 Fix RtpFrameReferenceFinderFuzzer to not generate invalid input
Make sure that the packets in the packet buffer belonging to the
first and last sequence numbers are marked as first and last,
respectively.

Bug: chromium:989856
Change-Id: I57bdd7d62d585be2d2083a6b5ce67fce89ab4389
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147875
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28769}
2019-08-06 09:03:10 +00:00
c89468a4b7 Fix CallStatsUnittests to update the RTT on the process thread (as in production).
Bug: webrtc:10848
Change-Id: Ib56ba887ef148188c902dee680b29809ae8cb8f6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148064
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28768}
2019-08-06 08:46:48 +00:00
4d7c405599 Split out RtcpCnameCallback from RtcpStatisticsCallback
Cname callback is used only on receive side, and statistics (soon)
only on the send side.

Bug: webrtc:10679
Change-Id: I122e9cafaea93cd0ba75dc955a652d9d4bddc379
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147867
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28767}
2019-08-06 08:29:57 +00:00
ed44f5464a In ChannelReceive, use AcmReceiver directly, not AudioCodingModule
Bug: webrtc:9801
Change-Id: I02d76bc89c363247c8dc782db316a9f87a2b93ec
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/111504
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28766}
2019-08-06 08:23:26 +00:00
e80885a89c Call Call::GetStats() from the correct thread in our bandwidth tests.
Bug: webrtc:10847
Change-Id: Ief8cdd72f9d5b600d5306c00c1d249c29fb20396
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148063
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28765}
2019-08-06 08:19:12 +00:00
5e005f4b2d Fix RampUp tests to call Call::GetStats() from the right thread - and remove the need for a dedicated polling thread.
Bug: webrtc:10847
Change-Id: I01492d2e385840e50d2d94f498063b5e4eea3665
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148067
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28764}
2019-08-06 08:18:07 +00:00
bdc909653e Roll chromium_revision 2c4c2e2ea6..8776a3887d (684065:684182)
Change log: 2c4c2e2ea6..8776a3887d
Full diff: 2c4c2e2ea6..8776a3887d

Changed dependencies
* src/base: 5957e8101a..829a9fb70e
* src/build: d2eb8b11ac..c462f4b82d
* src/ios: a2e9b860c7..e2f722b278
* src/testing: 82c3031d88..aa61825872
* src/third_party: 3eca64a63a..e072174fb4
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/a5468613fa..698405a9f6
* src/tools: d1819be25e..544726b7aa
DEPS diff: 2c4c2e2ea6..8776a3887d/DEPS

No update to Clang.

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

Change-Id: Ifc46a5e23e1ebcc0f2f25a9863c825304c816281
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148180
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@{#28763}
2019-08-06 00:32:17 +00:00
074f0d2d28 Roll chromium_revision 7c6275bdfa..2c4c2e2ea6 (683711:684065)
Change log: 7c6275bdfa..2c4c2e2ea6
Full diff: 7c6275bdfa..2c4c2e2ea6

Changed dependencies
* src/base: 4c6ed4708b..5957e8101a
* src/build: c441c0a09d..d2eb8b11ac
* src/ios: ec642043d5..a2e9b860c7
* src/testing: 12f69d1a5b..82c3031d88
* src/third_party: 7448965c2a..3eca64a63a
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4f68ff26e4..a5468613fa
* src/third_party/depot_tools: 59bb8cce84..921f6a1751
* src/third_party/freetype/src: 12af46b649..ad3443c931
* src/tools: 494a8a0b5a..d1819be25e
DEPS diff: 7c6275bdfa..2c4c2e2ea6/DEPS

No update to Clang.

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

Change-Id: I8f9014a0b42dfac47bb54c81752c2d30e760f8db
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148120
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@{#28762}
2019-08-05 19:54:04 +00:00
9b1700cfae Enable field trial LegacySimulcastLayerLimit by default
When using simulcast, if the source is too small, it might end up generating
layer sizes that are problematic for hardware encoders.

We can temporarily restore the old behavior that adapts the layer count to the source size until we fix the HW encoder behavior.
to fix HW encoder issues

Bug: webrtc:10849, chromium:990823
Change-Id: Ie1486c9209b408c797c92d1b319d4116fe77171b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/148069
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28761}
2019-08-05 16:11:11 +00:00
45231be79c AEC3: Removing unused code in the echo subtractor
Bug: webrtc:8671
Change-Id: I77e9c55fe2e1030e5b74c02d4bc9222de422f6f4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/137045
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28760}
2019-08-05 14:53:59 +00:00
cdbaeeb737 Aec3:Remove unused legacy code
Bug: webrtc:8671
Change-Id: I54f14cc304dbe1639fbb356dbdf9beeb1781ede4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/137801
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28759}
2019-08-05 14:13:54 +00:00
d7ee76cadd Wire up field trials for some experimental screenshare settings
Bug: b/132074409
Change-Id: I83d5334255bad4fcf585b9850506bbfe1914ba57
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147868
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28758}
2019-08-05 13:47:01 +00:00
8d4105850c Remove unused rtc_tools/video_analysis.py.
Bug: None
Change-Id: I5ad3744afc809ed468dd3eb509a36332f4c9449e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/146941
Reviewed-by: Christoffer Jansson <jansson@google.com>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28757}
2019-08-05 12:40:32 +00:00
b56cca3282 Remove the old ContributingSources class.
This change removes the old `ContributingSources` class. It has been replaced by the new `SourceTracker`.

Bug: webrtc:10793
Change-Id: Ibd481cf6584837c46b229b9fc2a071362f07d361
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147878
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Chen Xing <chxg@google.com>
Cr-Commit-Position: refs/heads/master@{#28756}
2019-08-05 12:30:22 +00:00
3d351c6885 Revert "Adds PeerConnection scenario test framework."
This reverts commit ad5c4accad00e04de08e2b62d366cc1f8e0320a5.

Reason for revert: Breaks downstream bots.

Original change's description:
> Adds PeerConnection scenario test framework.
> 
> Bug: webrtc:10839
> Change-Id: If67eeb680d016d66c69d8e761a88c240e4931a5d
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147276
> Commit-Queue: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28754}

TBR=steveanton@webrtc.org,sprang@webrtc.org,srte@webrtc.org

Change-Id: I35576b4afe100a3220c3c01a6a6d5fbdf48a258b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10839
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147876
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28755}
2019-08-05 10:46:25 +00:00
ad5c4accad Adds PeerConnection scenario test framework.
Bug: webrtc:10839
Change-Id: If67eeb680d016d66c69d8e761a88c240e4931a5d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147276
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28754}
2019-08-05 10:12:43 +00:00
139f4dc7ac QualityScaler: Add option to try fast adapt down at start up based on initial bw estimates.
optional<int> initial_bitrate_interval_ms: time interval since start of call
where fast adapt down is allowed.
optional<double> initial_bitrate_factor: try fast adapt down if bw estimate is
below initial bitrate * factor.

Bug: none
Change-Id: I63e1fdaac6556d8e9a961a42e11c925f9ecb9771
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147725
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28753}
2019-08-05 09:43:19 +00:00
fedd625e0c Change 2g network pc audio test to more realistic network
Bug: webrtc:10138
Change-Id: I6f4b23fe702d26dbbeed05d0d09b79a9a966e40c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147728
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28752}
2019-08-02 22:28:02 +00:00
d75b3c4fab Roll chromium_revision 2ab7c1917b..7c6275bdfa (683574:683711)
Change log: 2ab7c1917b..7c6275bdfa
Full diff: 2ab7c1917b..7c6275bdfa

Changed dependencies
* src/base: dae065e2ca..4c6ed4708b
* src/build: 63108fa2f2..c441c0a09d
* src/ios: 6bfc5e510b..ec642043d5
* src/testing: 2cedc7b79a..12f69d1a5b
* src/third_party: 57a4f29cc3..7448965c2a
* src/tools: 11238ddd61..494a8a0b5a
DEPS diff: 2ab7c1917b..7c6275bdfa/DEPS

No update to Clang.

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

Change-Id: I8b30deebc348c2c91eef2e5c967b2618cbb6c7b1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147945
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@{#28751}
2019-08-02 20:23:55 +00:00
a28590918c Revert "Adding new top-level directory crypto/"
This reverts commit 7f1c58938db72b1508e383d94a0e59dd70ff306e.

Reason for revert: this has been temporarily postponed.

Original change's description:
> Adding new top-level directory crypto/
> 
> Adding the crypto root directory to WebRTC. The goal with this change is to
> centralize the management of crypto code into a single location.
> 
> Currently we have cryptography code scattered across pc/ and rtc_base/
> which makes it difficult audit and maintain.
> 
> By having a crypto/ directory we gain:
> 1. A clear first point of contact for auditing the cryptography in WebRTC.
> 2. Fine grain ownership to cryptography maintainers, we can include BoringSSL
>    maintainers in this directory.
> 3. It improves maintanability of crypto code as we have improved modularization.
>    It will not be deeply nested in all different parts of WebRTC.
> 4. Improved testability. We can cleanly build crypto libraries which plug into
>    pc/ which we can more easily mock.
> 5. Enforce stricter rules. For example we may want to enforce ZeroOnFreeBuffer
>    for all sensitive material. This is easier to enforce in a single directory.
> 
> Bug: webrtc:9600
> Change-Id: I8e76332c7dcdac0a45a470ba2e930196e1ccf395
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/125142
> Commit-Queue: Benjamin Wright <benwright@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27028}

TBR=steveanton@webrtc.org,kwiberg@webrtc.org,nisse@webrtc.org,benwright@webrtc.org

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

Bug: webrtc:9600
Change-Id: I3c99e733d53d76071179f0ff9ffdec965d20829d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147871
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Benjamin Wright <benwright@webrtc.org>
Commit-Queue: Benjamin Wright <benwright@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28750}
2019-08-02 18:38:55 +00:00
df7c5f1950 Roll chromium_revision 01452febf2..2ab7c1917b (683465:683574)
Change log: 01452febf2..2ab7c1917b
Full diff: 01452febf2..2ab7c1917b

Changed dependencies
* src/base: 0f4054f507..dae065e2ca
* src/build: 23c3ca46d0..63108fa2f2
* src/ios: 5fa82bd7c9..6bfc5e510b
* src/testing: b9115fa8ae..2cedc7b79a
* src/third_party: 637c7f7b56..57a4f29cc3
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/ec6ed57a68..4f68ff26e4
* src/tools: 1890327adc..11238ddd61
DEPS diff: 01452febf2..2ab7c1917b/DEPS

No update to Clang.

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

Change-Id: Iddf519ac0009334712b7d23f3cf20cd20d17d030
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147941
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@{#28749}
2019-08-02 14:32:45 +00:00
8bbdb5b9bd Update VideoBitrateAllocator allocate to take a struct with more fields
We want to evaluate more data in order to make better choices in the
bitrate allocators.
In order to freely update the parameter list without
breaking the API many times for projects customizing them, we'll use a
struct instead.

Bug: webrtc:10126
Change-Id: I443f86781c5134950294cdd1e3197a47447cf973
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/141418
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28748}
2019-08-02 13:52:54 +00:00
9a9f18a736 Get WebRTC.Video.ReceivedPacketsLostInPercent from ReceiveStatistics
Old way to produce this histogram was based on RtcpStatisticsCallback
reporting sent RTCP messages, with some additional processing by the
ReportBlockStats class. After this cl, to grand average fraction loss
is computed by StreamStatistician, queried by VideoReceiveStream when
the stream is closed down, and passed to ReceiveStatisticsProxy which
produces histograms.

This is a preparation for deleting the RtcpStatisticsCallback from
ReceiveStatistics.

Bug: webrtc:10679
Change-Id: Ie37062c1ae590fd92d3bd0f94c510e135ab93e8d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147722
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28747}
2019-08-02 12:38:34 +00:00
054e3bbbe7 Reland "Replace the implementation of GetContributingSources() on the audio side."
This reverts commit 67008dfb366237469fe088a61b62c0cad852c024.

Reason for revert: Tests in the Chromium repo have been changed to accomodate this CL: https://chromium-review.googlesource.com/c/chromium/src/+/1728565

Original change's description:
> Revert "Replace the implementation of `GetContributingSources()` on the audio side."
> 
> This reverts commit 8fa7151e4bbad40fec1f964fe0c003b8787bb78a.
> 
> Reason for revert: Speculative revert to fix roll of webrtc into chrome. Right now tests related to RTCRtpReceiver failing and looks like it is main candidate, who can affect that behavior.
> 
> Original change's description:
> > Replace the implementation of `GetContributingSources()` on the audio side.
> > 
> > This change replaces the `ContributingSources`-implementation of `GetContributingSources()` and `GetSynchronizationSources()` on the audio side with the spec-compliant `SourceTracker`-implementation.
> > 
> > The most noticeable impact is that the per-frame dictionaries are now updated when frames are delivered to the RTCRtpReceiver's MediaStreamTrack rather than when RTP packets are received on the network.
> > 
> > This change is almost identical to the previous video side change at: https://webrtc-review.googlesource.com/c/src/+/143177
> > 
> > Bug: webrtc:10545
> > Change-Id: Ife7f08ee8ca1346099b7466837a3756947085fc5
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/144422
> > Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
> > Commit-Queue: Chen Xing <chxg@google.com>
> > Cr-Commit-Position: refs/heads/master@{#28459}
> 
> TBR=ossu@webrtc.org,chxg@google.com
> 
> Change-Id: I5c631d4dcfb39601055ffce9b104f45eea871fd3
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:10545
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/144562
> Reviewed-by: Artem Titov <titovartem@webrtc.org>
> Commit-Queue: Artem Titov <titovartem@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28478}

TBR=ossu@webrtc.org,titovartem@webrtc.org,chxg@google.com

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

Bug: webrtc:10545
Change-Id: I609cca4f0ca4e1d31a156ba9eb44407518409f57
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147865
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Chen Xing <chxg@google.com>
Commit-Queue: Chen Xing <chxg@google.com>
Cr-Commit-Position: refs/heads/master@{#28746}
2019-08-02 11:45:34 +00:00
59bbd65561 Add ToString method for AudioProcessing::Config
Bug: webrtc:10138
Change-Id: Icc0b40596867fd6fb8c1de5ca209dbafb504e50d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147726
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28745}
2019-08-02 10:01:56 +00:00
6563934be3 Revert "Sanitize the codec list before sending it to the media engine"
This reverts commit add7ef974ee2642a3b55a36ec80be50a615bc60a.

Reason for revert: Cause regression in pc_full_stack_tests.cc

Original change's description:
> Sanitize the codec list before sending it to the media engine
>
> The SDP can assign the same codec to two different payload types
> which gets represented as two separate codecs in the SDP structure.
> The media engine assumes that the client does not pass down
> duplicate codecs. This change adds logic to BaseChannel to filter
> out codecs of the same name with different payload types, picking
> the one which is listed first in the m= line.
>
> Bug: chromium:987598
> Change-Id: I6fa813db1769e572ff7c3f322dc9b1de39817ea2
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147602
> Reviewed-by: Amit Hilbuch <amithi@webrtc.org>
> Commit-Queue: Steve Anton <steveanton@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28726}

TBR=steveanton@webrtc.org,amithi@webrtc.org

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

Bug: chromium:987598
Change-Id: I4ffbfcd90c81c6c6c8ee8f872f7e217d8291c857
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147864
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28744}
2019-08-02 09:26:36 +00:00
5e155a63a3 ReportBlockStatsTest: Remove usage of RTCPReportBlock (no longer used).
Bug: none
Change-Id: I5625537dd63b999df28906786a5adf8f0e9f3166
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147724
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28743}
2019-08-02 08:58:36 +00:00
916fda588e Sync download_tools.py with changes in gclient_utils module.
Bug: none
Change-Id: I3eb0d995527742245639ea7f9bc59113184ea428
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147861
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28742}
2019-08-02 08:15:15 +00:00
9160b627d7 Improve thread safety of AndroidVideoTrackSource::SetState.
1. Prevents deadlocks from AsyncInvoker destructor
2. Makes future state() calls are guaranteed to return the new state after
   SetState() completes.

I am not sure if it is allowed to call FireOnChanged from non-signaling
threads so I will leave the post for now.

Bug: webrtc:10813
Change-Id: I5712a45f71431765898037867382397d537570a0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147727
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28741}
2019-08-02 07:45:45 +00:00
b3f78deb78 Reland "Don't use all_dependent_configs for sdk frameworks"
This is a reland of 63741c7fa1aa55a38af11ac8cc04498722f9407d

It's possible to reland after the downstream fix in
https://chromium-review.googlesource.com/1730415

Original change's description:
> Don't use all_dependent_configs for sdk frameworks
>
> libs should be propagated to the final binary even without that:
> https://gn.googlesource.com/gn/+/master/docs/reference.md#var_libs
>
> But add some missing SDK framework dependencies:
>
> * RTCNativeI420Buffer.mm uses CGBitmapContextGetBytesPerRow.
> * socketrocket uses SecCertificateCopyData.
>
> Bug: None
> Change-Id: Iba38a5dfaf470a5a790d494cbec8ade44b1d16ba
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/146082
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28605}

Bug: None
Change-Id: I6a1cd80c5177ef3a3b92ee55fc91e187b202d864
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147720
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28740}
2019-08-02 06:09:39 +00:00
28ee3dae9a Roll chromium_revision 2d438bebcd..01452febf2 (683346:683465)
Change log: 2d438bebcd..01452febf2
Full diff: 2d438bebcd..01452febf2

Changed dependencies
* src/base: 7ffc626ebb..0f4054f507
* src/build: c096825c07..23c3ca46d0
* src/ios: 6a1e706b5e..5fa82bd7c9
* src/testing: 3643e7704d..b9115fa8ae
* src/third_party: 2a2bc9e234..637c7f7b56
* src/third_party/depot_tools: 447b45d423..59bb8cce84
* src/tools: ba21fbbda8..1890327adc
DEPS diff: 2d438bebcd..01452febf2/DEPS

No update to Clang.

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

Change-Id: I1b34958c06cbe00a683f68d00bc6bf8ebf5a71e7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147901
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@{#28739}
2019-08-02 04:43:59 +00:00
402f6250cc Roll chromium_revision 9c759119a4..2d438bebcd (683187:683346)
Change log: 9c759119a4..2d438bebcd
Full diff: 9c759119a4..2d438bebcd

Changed dependencies
* src/base: 8190eb1f36..7ffc626ebb
* src/build: 190e1453d5..c096825c07
* src/ios: 7c64b82ed5..6a1e706b5e
* src/testing: 92ff5c16ab..3643e7704d
* src/third_party: db25b237ad..2a2bc9e234
* src/third_party/libjpeg_turbo: 14eba7addf..81aef9014e
* src/tools: 8d802a9214..ba21fbbda8
DEPS diff: 9c759119a4..2d438bebcd/DEPS

No update to Clang.

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

Change-Id: I22f7402cbe31d711b600c5b79fb4b557ccc8f68e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147880
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@{#28738}
2019-08-01 22:50:46 +00:00
0c67c80ac3 Guard video analyzer against race conditions.
This CL adds thread annotations and ensure that neither data races
nor deadlocks occur.
It prevents weird results and helps detecting other concurrency issues.

As a bonus, some dead code has been removed.

Bug: webrtc:10834
Change-Id: Ibd140db9e4dbf81b212044647e2d85bd18ef8d78
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147278
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Yves Gerey <yvesg@google.com>
Cr-Commit-Position: refs/heads/master@{#28737}
2019-08-01 16:50:31 +00:00
59a041db7e Roll chromium_revision 4b9d901264..9c759119a4 (683063:683187)
Change log: 4b9d901264..9c759119a4
Full diff: 4b9d901264..9c759119a4

Changed dependencies
* src/base: 2a3fb19568..8190eb1f36
* src/build: bc4a3ca3f6..190e1453d5
* src/ios: f3df7ed6b2..7c64b82ed5
* src/testing: 09665260fc..92ff5c16ab
* src/third_party: a7a8bb0c8c..db25b237ad
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/f3157c496d..ec6ed57a68
* src/tools: 76518253ba..8d802a9214
DEPS diff: 4b9d901264..9c759119a4/DEPS

No update to Clang.

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

Change-Id: Ia9dc7fb761689efb7efe9e5b05773b33384772ae
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147820
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@{#28736}
2019-08-01 16:32:21 +00:00
bd3f30535c Request a new key frame if packet buffer is cleared
Bug: webrtc:10843
Change-Id: I1eab0891f3e68b7d504dc637790604a25c243856
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147721
Commit-Queue: Johannes Kron <kron@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28735}
2019-08-01 14:35:54 +00:00
77d3efc509 Simplify ReportBlockStats
Bug: webrtc:10679
Change-Id: I946e805eb4edf3c3fc39b78235a5bd353db11598
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147644
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28734}
2019-08-01 14:09:23 +00:00
84de3d95cf Factor framework dependencies out of audio_device_impl
Bug: None
Change-Id: I7d8d737134bb1a9dcf376cd39e74e73a5a6a0e97
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147723
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28733}
2019-08-01 12:06:14 +00:00
32eaa7b5ba Roll chromium_revision d488661c95..4b9d901264 (682945:683063)
Change log: d488661c95..4b9d901264
Full diff: d488661c95..4b9d901264

Changed dependencies
* src/base: e658dada4b..2a3fb19568
* src/build: ecb38e41bd..bc4a3ca3f6
* src/ios: ecb9897dd1..f3df7ed6b2
* src/testing: af5dfd1750..09665260fc
* src/third_party: 97677c0717..a7a8bb0c8c
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/471a922d82..f3157c496d
* src/third_party/depot_tools: 364640e249..447b45d423
* src/tools: 3afb8d2b27..76518253ba
DEPS diff: d488661c95..4b9d901264/DEPS

No update to Clang.

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

Change-Id: I50b108a86847fae30086108e925211d5dff2df49
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147681
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@{#28732}
2019-08-01 04:45:39 +00:00
da4f09315f Reland "Only include payload in bytes sent/received."
This is a reland of 74a1b4b1321b426392d4c32e4a02361226ad5358

Original change's description:
> Only include payload in bytes sent/received.
>
> According to https://www.w3.org/TR/webrtc-stats/#sentrtpstats-dict* and
> https://tools.ietf.org/html/rfc3550#section-6.4.1, the bytes sent
> statistic should not include headers or padding.
>
> Similarly, according to
> https://www.w3.org/TR/webrtc-stats/#inboundrtpstats-dict*, bytes
> received are calculated the same way as bytes sent (eg. not including
> padding or headers).
>
> This change stops adding padding and headers to these statistics.
>
> Bug: webrtc:8516,webrtc:10525
> Change-Id: I891ad5a11a493cc3212afe93e13f62795bf4031f
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/146180
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Reviewed-by: Henrik Boström <hbos@webrtc.org>
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
> Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#28647}

Bug: webrtc:8516, webrtc:10525
Change-Id: Iaa1613e5becdfaa0af0f6b9f00e5b871937a719c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147520
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28731}
2019-08-01 01:08:24 +00:00
fd643a4782 Build core audio for older windows versions
Some of the constants and structure definitions used are only available with
specific and recent versions of the windows SDK. This change allows this
to build with a toolchain targeting WINVER 0x0601 (Windows 7)

Bug: None
Change-Id: I3339f7c44c375fb7d583b78aa137f748c9776a07
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147440
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Paul Roberts <pacaro@google.com>
Cr-Commit-Position: refs/heads/master@{#28730}
2019-07-31 22:58:00 +00:00
076bdba8cf Roll chromium_revision 1bdd79185b..d488661c95 (682806:682945)
Change log: 1bdd79185b..d488661c95
Full diff: 1bdd79185b..d488661c95

Changed dependencies
* src/base: aa0441184b..e658dada4b
* src/build: 4c9b2a4271..ecb38e41bd
* src/ios: 1aa33472f3..ecb9897dd1
* src/testing: cf8b5bf865..af5dfd1750
* src/third_party: 15720ec986..97677c0717
* src/tools: ddab2b582f..3afb8d2b27
DEPS diff: 1bdd79185b..d488661c95/DEPS

No update to Clang.

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

Change-Id: I4ac06dc0d1b40b60be3245975933a01c6b0ece02
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/147627
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@{#28729}
2019-07-31 22:35:10 +00:00