Commit Graph

28761 Commits

Author SHA1 Message Date
e72a78e4b2 Roll chromium_revision 42b9d99dab..e76bf0b809 (700503:700610)
Change log: 42b9d99dab..e76bf0b809
Full diff: 42b9d99dab..e76bf0b809

Changed dependencies
* src/base: 85620fb3e5..c9cbf78733
* src/ios: eaabefdb4a..f1a036ffe0
* src/testing: 7fe65418f8..7e847b739d
* src/third_party: 87925dcbf7..be719c373a
* src/third_party/depot_tools: e656e98831..2b82936829
* src/tools: 0c38ca1e46..b4efeff828
DEPS diff: 42b9d99dab..e76bf0b809/DEPS

No update to Clang.

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

Change-Id: If7b2055753e9a42e1ec5aa8b18c57770d3a096d7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154662
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@{#29329}
2019-09-27 08:39:28 +00:00
1903a35e00 Roll chromium_revision ecfd30c363..42b9d99dab (700332:700503)
Change log: ecfd30c363..42b9d99dab
Full diff: ecfd30c363..42b9d99dab

Changed dependencies
* src/base: 3b9333f57d..85620fb3e5
* src/build: 9e3c924f6e..b321a92cd2
* src/ios: dba83b40e4..eaabefdb4a
* src/third_party: 1625de3e13..87925dcbf7
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/62960ae899..15152b52a7
* src/third_party/depot_tools: 1ab7b6816f..e656e98831
* src/third_party/freetype/src: db4083fd7f..432efa25b3
* src/tools: 8428209938..0c38ca1e46
DEPS diff: ecfd30c363..42b9d99dab/DEPS

No update to Clang.

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

Change-Id: Idbdc72842da589fdc1864d796a3212bd88a149f2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154620
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@{#29328}
2019-09-27 00:35:01 +00:00
7da4e563b7 Allow receive-only use of datagram transport for data channels.
Adds a field trial and configuration parameter to control whether
datagram transport may be used for data channels in a receive-only
manner.  By default, if use_datagram_transport_for_data_channels is
enabled, PeerConnection will create a datagram transport and offer its
use for outgoing calls as well as accept incoming offers with compatible
datagram transport parameters.

With this change, a receive_only mode is added for datagram transport
data channels.  When receive_only is set, the PeerConnection will not
create or offer datagram transports for outgoing calls, but will accept
incoming calls that offer compatible datagram transport parameters.

Bug: webrtc:9719
Change-Id: I35667bcc408ea4bbc61155898e6d2472dd262711
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154463
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29327}
2019-09-26 20:01:06 +00:00
63173d5bef pipewire: handle deleting the capturer while a D-Bus call is in progress
If a D-Bus call is in progress when a BaseCapturerPipeWire is deleted, then
the user_data is invalid when the callback function is called. This results
in memory corruption.

To fix this, use a GCancellable. If it is canceled, the callback will be
called with a corresponding error. Detect this error and abort before
accessing the user_data.

Note: The first argument is the 'source_object'. For g_dbus_proxy_call()
this is the proxy object not the connection. This was not a problem before,
because it was not used.

Bug: None
Change-Id: I8d5e3fb5c49fcc9afd61cdb8e8249f78b9434faf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/149817
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#29326}
2019-09-26 18:58:56 +00:00
c6d7d58c13 Roll chromium_revision 2d2f043b9a..ecfd30c363 (700199:700332)
Change log: 2d2f043b9a..ecfd30c363
Full diff: 2d2f043b9a..ecfd30c363

Changed dependencies
* src/base: 3331fdd31f..3b9333f57d
* src/build: c9a62d3819..9e3c924f6e
* src/ios: 427b9509a2..dba83b40e4
* src/testing: 72fb845d04..7fe65418f8
* src/third_party: e25d8007ac..1625de3e13
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/eecf29fbbc..62960ae899
* src/third_party/depot_tools: 07cec8f6cb..1ab7b6816f
* src/tools: 4a18e6e281..8428209938
DEPS diff: 2d2f043b9a..ecfd30c363/DEPS

No update to Clang.

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

Change-Id: Id73aee03fa27532774784ec733625bbfab6d77cf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154582
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@{#29325}
2019-09-26 18:43:36 +00:00
ee8ee2f103 Avoids update of WebRTC.Audio.SourceMatchesRecordingSession for Android < N
Before this change we always logged false in WebRTC.Audio.SourceMatchesRecordingSession
even when a test had not been executed (happens e.g. for Android < N).

This issue is now fixed and we only update WebRTC.Audio.SourceMatchesRecordingSession
if a valid test has been performed.

No-Try: True
TBR: glaznev
Bug: webrtc:10971
Change-Id: I907197476f00b812c67bb71e8fdcd6f297cfbdee
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154563
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29324}
2019-09-26 14:59:12 +00:00
a21d50c1f3 Prepares RtpSenderVideo for batch forwarding of generated packets
In order to reduce contention, this CL avoids taking locks per packet
and prepares for forwarding all packets for a frame in one call, rather
than one at a time. This will especially reduce contention in the paced
sender during very high packet rates.

Bug: webrtc:10809
Change-Id: Ifc5fe3759b76a2a45f418b69d29c329e876f96d0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154358
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29323}
2019-09-26 14:58:07 +00:00
d27a0c1a89 Report payload byte counts in PC-level quality tests
Bug: None
Change-Id: I3908a065dd0d66802c7f8de64cdc03687ac7f9e1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154521
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29322}
2019-09-26 14:56:47 +00:00
b4ffe881cd Roll chromium_revision fbc0a229ff..2d2f043b9a (700084:700199)
Change log: fbc0a229ff..2d2f043b9a
Full diff: fbc0a229ff..2d2f043b9a

Changed dependencies
* src/base: 84e2ae7c3e..3331fdd31f
* src/ios: eb9e0b7ab0..427b9509a2
* src/testing: 0245772498..72fb845d04
* src/third_party: a5b7cb4f3d..e25d8007ac
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e00ffeb79a..eecf29fbbc
* src/third_party/depot_tools: 9a5bb612e6..07cec8f6cb
* src/third_party/libjpeg_turbo: baa5dc2425..38c6935694
* src/tools: c363235f60..4a18e6e281
DEPS diff: fbc0a229ff..2d2f043b9a/DEPS

No update to Clang.

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

Change-Id: I53b8754cdd90fa8b35d6d22f87cd28bac00cd530
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154580
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@{#29321}
2019-09-26 12:36:49 +00:00
89e7fcb726 Revert "Enable capturing from camera in PC framework"
This reverts commit 482d26ce9d2b676ca277ca3f44a5d89105627cce.

Reason for revert: Reduced amount of captured frames on some devices. Will require deeper look on it.

Original change's description:
> Enable capturing from camera in PC framework
> 
> Bug: webrtc:10138
> Change-Id: I6b2eaddf4975ddc7237932511de06744ef962489
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154357
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Commit-Queue: Artem Titov <titovartem@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#29318}

TBR=ilnik@webrtc.org,kwiberg@webrtc.org,titovartem@webrtc.org

Change-Id: Ie9db3b1a13fa6ebfd8e277b68b5d808533a84620
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10138
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154560
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29320}
2019-09-26 12:00:01 +00:00
abd9e0f5c2 VideoStreamEncoder: Don't crop and scales frames for external encoders
Bug: none
Change-Id: I1edc0314450793c0ae3fb471aa8936a102773a96
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154424
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29319}
2019-09-26 11:49:09 +00:00
482d26ce9d Enable capturing from camera in PC framework
Bug: webrtc:10138
Change-Id: I6b2eaddf4975ddc7237932511de06744ef962489
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154357
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29318}
2019-09-26 11:42:29 +00:00
7acc4a4a3a Reset |reference_finder_| on codec switch.
In this CL:
 - Moved critical section out of RtpFrameReferenceFinder.
 - RtpFrameReferenceFinder can now assign picture ids with an offset.
 - RtpVideoStreamReceiver will now reset the |reference_finder_| in case
   of a codec switch.

Bug: webrtc:10795, webrtc:10828
Change-Id: I22631c121a465c434de24af5ce8be2a647fe3556
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154353
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29317}
2019-09-26 11:05:59 +00:00
5dacece70c Removed unused _rotation_set variable from EncodedFrame.
Bug: none
Change-Id: I398417541fb66e58b0ad90c4b17c5d36eb61a004
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154520
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29316}
2019-09-26 10:45:03 +00:00
741bab0f6c Add Slice method to CopyOnWriteBuffer and use it in FEC code.
This avoids unnecessary memcpy calls.

Bug: webrtc:10750
Change-Id: I73fe8f1c9659f2c5e59d7fb97b80349a3504a34a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/145320
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29315}
2019-09-26 09:48:07 +00:00
85d5c197a8 Added RtpFrameObject ctor with no PacketBuffer pointer.
Bug: webrtc:10979
Change-Id: Ie6a2b56e7374d60d1f74d8c315216b27df22a19b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154426
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29314}
2019-09-26 08:55:00 +00:00
2bc55585f6 Renaming variables in SendSideBandwidthEstimation.
This makes them better reflect their contents and usage. Also replacing
zero with infinity where it's used to reflect the lack of a limit.

Bug: webrtc:9883
Change-Id: Ibc498aa3a41d34c16d363e892a927e482949ab51
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154423
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29313}
2019-09-26 08:30:40 +00:00
ccfb3401ee Update balanced tests to use BalancedDegradationTest fixture.
Bug: none
Change-Id: If10f28ff1da40a379b4a5b26c7bdf638913b48c8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153351
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29312}
2019-09-26 06:59:54 +00:00
ace2a2bcce Roll chromium_revision 1fa0f66d36..fbc0a229ff (699974:700084)
Change log: 1fa0f66d36..fbc0a229ff
Full diff: 1fa0f66d36..fbc0a229ff

Changed dependencies
* src/base: ca8a07cbc8..84e2ae7c3e
* src/build: f13e1a6418..c9a62d3819
* src/ios: c700700078..eb9e0b7ab0
* src/testing: 6f93c5a94d..0245772498
* src/third_party: 6f06723da7..a5b7cb4f3d
* src/third_party/depot_tools: 6a5cb2517a..9a5bb612e6
* src/tools: 45c45c3822..c363235f60
DEPS diff: 1fa0f66d36..fbc0a229ff/DEPS

No update to Clang.

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

Change-Id: I7460f50890484dc58660c24e42fdd107d63297d1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154468
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@{#29311}
2019-09-26 04:27:19 +00:00
d6eab9edaf Roll chromium_revision 489dde9b43..1fa0f66d36 (699869:699974)
Change log: 489dde9b43..1fa0f66d36
Full diff: 489dde9b43..1fa0f66d36

Changed dependencies
* src/base: 74b875cec7..ca8a07cbc8
* src/build: 6d45b1db5f..f13e1a6418
* src/ios: 8babf22e8f..c700700078
* src/testing: 760f7ad36e..6f93c5a94d
* src/third_party: 6037ad3eee..6f06723da7
* src/third_party/depot_tools: 7211cf6444..6a5cb2517a
* src/tools: 1776195753..45c45c3822
DEPS diff: 489dde9b43..1fa0f66d36/DEPS

No update to Clang.

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

Change-Id: I45d15435a4e3fb4ad004b51a0bd73f3efa4bcc71
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154465
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@{#29310}
2019-09-25 22:43:40 +00:00
c5bc9d6da8 Treat wlan as a WiFi adapter name on all platforms.
wlan was previously classified as WiFi only on Android, while some
non-Android platforms may use the same name for a WiFi adapter. This
causes a WiFi interface to be assigned a higher network cost than
designed when we rely on the name matching to identify the network
type, which has further implication in the ICE candidate pair selection.

Bug: webrtc:10992
Change-Id: I8d2bb18cf9a0e3a06a104f359a85f802526a2ff9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154464
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Alex Drake <alexdrake@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29309}
2019-09-25 22:41:00 +00:00
30c2b66fba Roll chromium_revision edf70056b5..489dde9b43 (699748:699869)
Change log: edf70056b5..489dde9b43
Full diff: edf70056b5..489dde9b43

Changed dependencies
* src/base: a257cb1fd3..74b875cec7
* src/ios: 1a79ceb38f..8babf22e8f
* src/testing: 2b5afed311..760f7ad36e
* src/third_party: 6686b9dd9f..6037ad3eee
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/6730faf618..e00ffeb79a
* src/tools: 47c0cca130..1776195753
DEPS diff: edf70056b5..489dde9b43/DEPS

No update to Clang.

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

Change-Id: I68b968ee632bcfb2a9e6922c320e5fea159a8e37
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154462
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@{#29308}
2019-09-25 18:46:37 +00:00
71037a8e99 Implement TaskQueueBase interface by SingleThreadedTaskQueueForTesting
that allows to use SingleThreadedTaskQueueForTesting as regular TaskQueue.
which allows components that currently depend on SingleThreadedTaskQueueForTesting
to depend on TaskQueueBase interface instead.
Those updates can be done one-by-one and in the end would allow to stop
using SingleThreadedTaskQueueForTesting in favor of other TaskQueue implementations.

Bug: webrtc:10933
Change-Id: I3e642c88c968012588b9d9c09918340f37bbedbd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154352
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Yves Gerey <yvesg@google.com>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29307}
2019-09-25 15:58:17 +00:00
ad10222289 Cleanup of unused field trials and options in SendSideBandwidthEstimation
Bug: webrtc:9883
Change-Id: Icbf4d6cb84da51f800343675f181e41b7cc45a6a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154422
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29306}
2019-09-25 15:08:12 +00:00
d63f8f88a1 Roll chromium_revision b3fb292c9b..edf70056b5 (699622:699748)
Change log: b3fb292c9b..edf70056b5
Full diff: b3fb292c9b..edf70056b5

Changed dependencies
* src/base: 8231efdb1d..a257cb1fd3
* src/build: 0c886e99e3..6d45b1db5f
* src/ios: 6e88e80c50..1a79ceb38f
* src/testing: 528f5452ab..2b5afed311
* src/third_party: fd4e009771..6686b9dd9f
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/b079ab8601..6730faf618
* src/third_party/freetype/src: 4881f75b7c..db4083fd7f
* src/tools: 8b16e3003b..47c0cca130
DEPS diff: b3fb292c9b..edf70056b5/DEPS

No update to Clang.

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

Change-Id: If490c96dda654db4993d1367e99c861b83daef79
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154440
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@{#29305}
2019-09-25 14:32:44 +00:00
461ee8538a Cleanup of target rates in GoogCC/SendSideBandwidthEstimation.
Removing the redundant last_estimated_bitrate_bps_ and renaming some
members to better reflect the contents. Also replacing the CurrentEstimate
method of SendSideBandwidthEstimation with value specific access methods.

Bug: webrtc:9883
Change-Id: I73cb08e09374adddf5991cb3793fa4a4fee20c85
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154351
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29304}
2019-09-25 14:31:39 +00:00
7bdf073c1c First step of adding multi-channel support to the echo subtractor
This CL contains the first step of adding multi-channel support to the
echo subtractor.

The CL is bitexact for the mono case.

Bug: webrtc:10913
Change-Id: I10647b45c692bc001407afc6ff00e26a3e2cffaa
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154356
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29303}
2019-09-25 13:27:56 +00:00
538ca57b23 Converts const methods in BitrateAllocator to non-member functions.
Also cleaning up finished TransmissionMaxBitrateMultiplier trial.

Bug: webrtc:9883
Change-Id: I049f0e8e3051f91b57201e9ce750427018c74bfa
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153889
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Ying Wang <yinwa@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29302}
2019-09-25 11:55:13 +00:00
e32ae4f8fb Invalidate encoder rates on VideoStreamEncoder::ReconfigureEncoder
Without invalidation the codec configuration may not get updated. This
is prone to happen when the bandwidth is below the min or above the max
in which case the last_encoder_rate_settings_ may have not changed.

This led to a regression in b6a45dd, where last_encoder_rate_settings_
would not change the allocation or frame rate, but the frame rate would
have been set by the video adapter. Thus the frame rates were set
incorrectly, leading to lower values in the regression tests.

I have re-run this scenario against some of the metric drops and the
regression appears to be fixed.


Bug: webrtc:10126
Change-Id: I0fa6c9b71e7aff5dd80e53119db109d97eed98b6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154343
Commit-Queue: Evan Shrubsole <eshr@google.com>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29301}
2019-09-25 11:37:52 +00:00
0e3b1ff8c4 Moving e to comply to the rest of the stack/heap storage scheme
Bug: webrtc:10913
Change-Id: I7dada71fb86e1c7eea27d0aec01b870fd0a6a15e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154347
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29300}
2019-09-25 11:09:22 +00:00
90d6efbd4e Revert "VP9 encoder: handle disabled layers correctly"
This reverts commit 88fe84b7fbcb8dffe07b98d21d8a11572259c0d0.

Reason for revert: Downstream project isn't updated to the latest libvpx roll yet, thus some tests are broken.

Original change's description:
> VP9 encoder: handle disabled layers correctly
> 
> Now vp9 screenshare would enable new layers as soon as requested and will
> force all spatial layers present on the next frame, even if they should be
> dropped because of frame-rate limiting.
> 
> This might cause frame-rate liming to be exceeded if layer is toggling on
> and off very often, but this situation is bad itself. E.g. in realtime video
> it will cause too many key-frames.
> 
> Now SvcRateAllocator and VP9EncoderImpl are aware that there may be some skipped
> layers before the first enabled. Key-frames and ss_info triggering logic is also
> updated.
> 
> Bug: webrtc:10977
> Change-Id: Ie2555210c0368a1d3c51ddf6670d0052e6d679de
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153483
> Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#29296}

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

Change-Id: If33886a5f8a0c3b33168dcadfe45c11a6f4387c1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10977
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154354
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29299}
2019-09-25 09:06:59 +00:00
7911d3705c AEC3: Simplify use of SignalTransition
Simplifying the use of signal transition and removing unused code.

Bug: webrtc:8671
Change-Id: I0b845405727936b2fa7df7c92ad2e83bea3bc823
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154348
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29298}
2019-09-25 09:00:24 +00:00
01dd88505c Moves contents of bitrate_controller to goog_cc
This CL moves send_side_bandwidth_estimation.cc/h and
loss_based_bandwidth_estimation.cc/h from modules/bitrate_controller
to modules/congestion_controller/goog_cc.

Bug: webrtc:9883
Change-Id: Ibb2c2ba3762007e7e5114f39042ee96431b73776
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154346
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29297}
2019-09-25 08:43:24 +00:00
88fe84b7fb VP9 encoder: handle disabled layers correctly
Now vp9 screenshare would enable new layers as soon as requested and will
force all spatial layers present on the next frame, even if they should be
dropped because of frame-rate limiting.

This might cause frame-rate liming to be exceeded if layer is toggling on
and off very often, but this situation is bad itself. E.g. in realtime video
it will cause too many key-frames.

Now SvcRateAllocator and VP9EncoderImpl are aware that there may be some skipped
layers before the first enabled. Key-frames and ss_info triggering logic is also
updated.

Bug: webrtc:10977
Change-Id: Ie2555210c0368a1d3c51ddf6670d0052e6d679de
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153483
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29296}
2019-09-25 08:42:19 +00:00
b67c44c3f5 Add unit tests for balanced degradation settings.
Bug: none
Change-Id: I159965b931f0ab734b84cb68d5bfb7b5bd9a81a4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153348
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29295}
2019-09-25 08:41:14 +00:00
70bc753cc6 Add comments to MultiCodecReceiveTest.
Follow up to https://webrtc-review.googlesource.com/c/src/+/153880

Bug: none
Change-Id: If52e2ba638cc463f55330d5d5db1e1e566231562
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154349
Reviewed-by: Yves Gerey <yvesg@google.com>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29294}
2019-09-25 08:15:20 +00:00
84004c441c Roll chromium_revision f24b5ede72..b3fb292c9b (699513:699622)
Change log: f24b5ede72..b3fb292c9b
Full diff: f24b5ede72..b3fb292c9b

Changed dependencies
* src/base: 5ed61856b1..8231efdb1d
* src/build: 623e98b4a3..0c886e99e3
* src/ios: bb3f601e04..6e88e80c50
* src/testing: 9a7eb5d0bf..528f5452ab
* src/third_party: 40a9f24d9e..fd4e009771
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/a8bbe3b252..b079ab8601
* src/third_party/depot_tools: 8b95534d33..7211cf6444
* src/tools: 8579c210c6..8b16e3003b
DEPS diff: f24b5ede72..b3fb292c9b/DEPS

No update to Clang.

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

Change-Id: Ice890b7565e425c19cf93834e8cb7e396b1b7aa6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154402
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@{#29293}
2019-09-25 04:55:27 +00:00
fc604aa990 Unset sinks when deleting CompositeDataChannelTransport.
This fixes a DCHECK during teardown in the case when the primary
DataChannelTranspot (eg. DatagramTransport) is successfully negotiated.
DatagramTransport expects the DataSink to be unset before it's deleted.

This was not caught by existing tests because the fallback transport
(SctpDataChannelTransport) does not have the same DCHECK.

Also adds a regression test for the issue, in which SCTP is available
as a fallback but DataChannelTransport is negotiated successfully.

Bug: webrtc:9719
Change-Id: I414d964d3c85d3d01cdb5e34d6b248659a613c39
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154365
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29292}
2019-09-24 22:35:44 +00:00
9d91174d39 Roll chromium_revision ae812cd84f..f24b5ede72 (699366:699513)
Change log: ae812cd84f..f24b5ede72
Full diff: ae812cd84f..f24b5ede72

Changed dependencies
* src/base: 48123426be..5ed61856b1
* src/build: 2885ef8046..623e98b4a3
* src/ios: 0969b164cd..bb3f601e04
* src/testing: 817467ec61..9a7eb5d0bf
* src/third_party: d5c12817e0..40a9f24d9e
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4103707055..a8bbe3b252
* src/third_party/depot_tools: ba5bc99b6a..8b95534d33
* src/tools: 8144dc3f1d..8579c210c6
DEPS diff: ae812cd84f..f24b5ede72/DEPS

No update to Clang.

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

Change-Id: I1b439e5a53d9f6e1446e1c6f310b4c29f3cb4106
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154380
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@{#29291}
2019-09-24 22:33:34 +00:00
bc3eebc722 Reland "Reland "Refactor SCTP data channels to use DataChannelTransportInterface.""
This is a reland of 487f9a17e426fd14bb06b13e861071b3f15d119b

Original change's description:
> Reland "Refactor SCTP data channels to use DataChannelTransportInterface."
> 
> Also clears SctpTransport before deleting JsepTransport.
> 
> SctpTransport is ref-counted, but the underlying transport is deleted when
> JsepTransport clears the rtp_dtls_transport.  This results in crashes when
> usrsctp attempts to send outgoing packets through a dangling pointer to the
> underlying transport.
> 
> Clearing SctpTransport before DtlsTransport removes the pointer to the
> underlying transport before it becomes invalid.
> 
> This fixes a crash in chromium's web platform tests (see
> https://chromium-review.googlesource.com/c/chromium/src/+/1776711).
> 
> Original change's description:
> > Refactor SCTP data channels to use DataChannelTransportInterface.
> >
> > This change moves SctpTransport to be owned by JsepTransport, which now
> > holds a DataChannelTransport implementation for SCTP when it is used for
> > data channels.
> >
> > This simplifies negotiation and fallback to SCTP.  Negotiation can now
> > use a composite DataChannelTransport, just as negotiation for RTP uses a
> > composite RTP transport.
> >
> > PeerConnection also has one fewer way it needs to manage data channels.
> > It now handles SCTP and datagram- or media-transport-based data channels
> > the same way.
> >
> > There are a few leaky abstractions left.  For example, PeerConnection
> > calls Start() on the SctpTransport at a particular point in negotiation,
> > but does not need to call this for other transports.  Similarly, PC
> > exposes an interface to the SCTP transport directly to the user; there
> > is no equivalent for other transports.
> 
> Bug: webrtc:9719
> Change-Id: I64e94b88afb119fdbf5f22750f88c8a084d53937
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/151981
> Reviewed-by: Benjamin Wright <benwright@webrtc.org>
> Reviewed-by: Steve Anton <steveanton@webrtc.org>
> Commit-Queue: Benjamin Wright <benwright@webrtc.org>
> Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#29120}

Bug: webrtc:9719
Change-Id: I28481a3de64a3506bc57748106383eeba4ef205c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/152740
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Benjamin Wright <benwright@webrtc.org>
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29290}
2019-09-24 17:10:52 +00:00
2225c061f4 Roll chromium_revision 9f21b695c1..ae812cd84f (699240:699366)
Change log: 9f21b695c1..ae812cd84f
Full diff: 9f21b695c1..ae812cd84f

Changed dependencies
* src/base: f0ff2fdcdc..48123426be
* src/build: 8162badf95..2885ef8046
* src/ios: 29dff84a5e..0969b164cd
* src/testing: 808431ec17..817467ec61
* src/third_party: 2ace733e40..d5c12817e0
* src/tools: c5b43503fa..8144dc3f1d
DEPS diff: 9f21b695c1..ae812cd84f/DEPS

No update to Clang.

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

Change-Id: I535b470073518c952ae3001bfdc8c872cdd12be1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154362
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@{#29289}
2019-09-24 16:42:32 +00:00
f34116e356 Replacing bandwidth adaptation trial with stable target in Opus encoder.
This also means that the NetworkEstimate::bandwidth can be deprecated
as it's currently just a copy of the target_rate.

Bug: webrtc:10981
Change-Id: I1bc57b98480bd77ce052736b19d630c775428546
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153669
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29288}
2019-09-24 16:35:02 +00:00
c30bc169ea Adds abs-send-time and size field outputs to event log parser.
Bug: webrtc:10170
Change-Id: I7340bc2afa4fa29139a4358db73e002825153fe0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153888
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29287}
2019-09-24 16:31:22 +00:00
74344d2aa6 Support 2 byte payload size DTX packets in NetEq simulation.
Bug: none
Change-Id: I785f13555c650171e94e400cf15123e8cc17de22
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154350
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29286}
2019-09-24 15:18:05 +00:00
9d281028c7 Remove deprecated method
Bug: None
Change-Id: Ia390e05e3bb462e0e79bf3ff7fae6cba891e73ca
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154262
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29285}
2019-09-24 14:52:20 +00:00
af3fdc069d AEC3: Suppression filter handles multiple channels
Suppression filter is extended to support the synthesis
of multiple channels. This CL is also a major clean-up of ApplyGain.

The CL has been tested for bit-exactness for single channel output.

Bug: webrtc:10913
Change-Id: I1319f127981552e17dec66701a248d34dcf0e563
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154341
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29284}
2019-09-24 13:50:04 +00:00
67309ef93c Add release callback and reference count to java EncodedImage class
Callback set by HardwareVideoEncoder, and wired to the codec's
releaseOutputBuffer. Intention is to move call of this method to the
destructor of a corresponding C++ class in a followup cl, and
eliminate an allocation and memcpy in the process.

Bug: webrtc:9378
Change-Id: I578480b63b68e6ac7a96cdde36379b3c50f05c3f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/142160
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29283}
2019-09-24 12:26:09 +00:00
1b575417b3 Always pass arguments to INSTANTIATE_TEST_SUITE_P.
Passing an empty arg is working at the moment but it is not
guaranteed to continue to work in the future.

This CL has been generated with:
git grep -l "INSTANTIATE_TEST_SUITE_P(," | xargs sed -i \
    "s/INSTANTIATE_TEST_SUITE_P(,/INSTANTIATE_TEST_SUITE_P(All,/g"

Bug: None
Change-Id: Icd2fb9d9d29aed5d692a234124bd990d0f097db4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153890
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29282}
2019-09-24 08:56:24 +00:00
63df20a1be Roll chromium_revision 1d4ed9e21d..9f21b695c1 (699120:699240)
Change log: 1d4ed9e21d..9f21b695c1
Full diff: 1d4ed9e21d..9f21b695c1

Changed dependencies
* src/build: 04fbb767db..8162badf95
* src/ios: ffd424e16f..29dff84a5e
* src/testing: f8d9a10f35..808431ec17
* src/third_party: bb199fab1a..2ace733e40
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/28837bfd86..4103707055
* src/third_party/depot_tools: 6f18e68719..ba5bc99b6a
* src/third_party/freetype/src: 5327092bb2..4881f75b7c
* src/tools: 3b53e61b51..c5b43503fa
DEPS diff: 1d4ed9e21d..9f21b695c1/DEPS

No update to Clang.

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

Change-Id: Ife142735082f3672bca8796943a409df34f326d0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154320
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@{#29281}
2019-09-24 08:35:09 +00:00
4c93aab0ba Handle macro _M_ARM64 for MSVC build
MSVC only defines _M_ARM64 to identify Windows ARM64, so detect this macro is
necessary to building WebRTC with MSVC.

Bug: chromium:893460
Change-Id: Idd49dfb6dcf367d5efdec705b84db55087de37c1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/154281
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29280}
2019-09-24 08:34:04 +00:00