Commit Graph

32753 Commits

Author SHA1 Message Date
b6d87ddd55 Update WebRTC code version (2021-02-05T04:04:12).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: Ied96d66fca07187898064a59e64d9b4f4ae3fb26
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205921
Reviewed-by: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#33171}
2021-02-05 05:57:54 +00:00
8db9534909 Support event log visualization in python3
Bug: webrtc:12431
Change-Id: I54910e862ab8de013879af632efc2f3834d80552
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205526
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33170}
2021-02-04 19:01:58 +00:00
65b901bbb1 Clean up previously deleted RTCP VOIP metrics block.
Bug: None
Change-Id: I6f9ddb09927200444dbccd24ed522c9b8f936b0f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205623
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33169}
2021-02-04 18:34:28 +00:00
7f354f8606 Use bandwidth allocation in DropDueToSize when incoming resolution increases.
Use bandwidth allocation instead of encoder target bitrate in DropDueToSize when incoming resolution increases to avoid downgrades due to target bitrate being limited by the max bitrate at low resolutions.

Bug: none
Change-Id: Ic41b31c1a86911d4e97b61b0cbc41ce0da739bd4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205622
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33168}
2021-02-04 17:26:21 +00:00
3ba7beba29 Use callback_list for port destroy operation.
- During the process had to change port_interface sigslot usage and
  async_packet_socket sigslot usage.
- Left the old code until down stream projects are modified.

Change-Id: I59149b0bb982bacd4b57fdda51df656a54fe9e68
Bug: webrtc:11943
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191520
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Lahiru Ginnaliya Gamathige <glahiru@webrtc.org>
Commit-Queue: Lahiru Ginnaliya Gamathige <glahiru@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33167}
2021-02-04 16:34:02 +00:00
db821652f6 Add missing compile-time thread annotations for BaseChannel methods.
Bug: chromium:1172815
Change-Id: I6aa3e1b11fe23eeda2476bfaabaab15afd0d2715
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205320
Reviewed-by: Taylor <deadbeef@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33166}
2021-02-04 13:40:46 +00:00
c5d4810fbe Const-declare some JsepTransport members, and delete always-null members.
Also delete the CompositeRtpTransport class, since it is never
instantiated.

Locking intentionally left unchanged in this cl, except for removal of
RTC_GUARDED_BY annotations on the now const members.

Bug: None
Change-Id: I99c22ff528ce7a46f71081b98ca83745b8146afc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205000
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33165}
2021-02-04 13:16:26 +00:00
653d534473 Roll chromium_revision 343080f0c8..4231e93dbb (850400:850549)
Change log: 343080f0c8..4231e93dbb
Full diff: 343080f0c8..4231e93dbb

Changed dependencies
* src/base: 05c36bf5d5..459d6e0ed6
* src/build: 10e5511c9e..923bed7ac7
* src/ios: bfeca89d3e..fe5fb848f5
* src/third_party: 2c2047c852..381d9c2c68
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/73a0597ed6..5c5a2976d5
* src/third_party/depot_tools: 6dc9cc301f..680a6c37a0
* src/third_party/icu: df304fa570..70dd9a65bf
* src/third_party/libvpx/source/libvpx: 576e0801f9..61edec1efb
* src/tools: be3d315c96..e1bc2e94ff
DEPS diff: 343080f0c8..4231e93dbb/DEPS

No update to Clang.

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

Change-Id: Icf4508abd418e5ea46cf3a0ca1f3a60d14697c50
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205800
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@{#33164}
2021-02-04 13:15:21 +00:00
ad99c81da4 Just adding my message in whitespace.
Change-Id: I30556ce2cde868d55edbaa16a61b8c7cfaaacf53
Bug: None
TBR: mbonadei@webrtc.org
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205624
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33163}
2021-02-04 12:40:16 +00:00
a208861401 Reland "Fix data race for config_ in AudioSendStream"
This is a reland of 51e5c4b0f47926e2586d809e47dc60fe4812b782

It may happen that user will pass config with min bitrate > max bitrate.
In such case we can't generate cached_constraints and will crash before.
The reland will handle this situation gracefully.

Original change's description:
> Fix data race for config_ in AudioSendStream
>
> config_ was written and read on different threads without sync. This CL
> moves config access on worker_thread_ with all other required fields.
> It keeps only bitrate allocator accessed from worker_queue_, because
> it is used from it in other classes and supposed to be single threaded.
>
> Bug: None
> Change-Id: I23ece4dc8b09b41a8c589412bedd36d63b76cbc5
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203267
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Per Åhgren <peah@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Artem Titov <titovartem@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33125}

Bug: None
Change-Id: I274ff15208d69c25fb25a0f1dd0a0e37b72480b0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205523
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33162}
2021-02-04 12:33:56 +00:00
4ef5638871 Parse and plot RTCP BYE in RTC event log.
Bug: webrtc:12432
Change-Id: I9a98876044e0e75ee4f3ef975ae75237606d108d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204380
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Lahiru Ginnaliya Gamathige <glahiru@webrtc.org>
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33161}
2021-02-04 11:28:46 +00:00
14b036d436 Make PipeWire 0.3 default version
PipeWire 0.2 is quite old and the new version of PipeWire should be now
available everywhere where needed, including sysroot images.

Bug: chromium:1146942
Change-Id: I04c8b3747f3535eb1b22294c96119f1c9c7e68d2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204300
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33160}
2021-02-04 11:17:55 +00:00
20f7456da9 Fix unsynchronized access to jsep_transports_by_name_.
Also removing need for lock for ice restart flag, fix call paths and
add information about how JsepTransportController's events could live
fully on the network thread and complexity around signaling thread
should be handled by PeerConnection (more details in webrtc:12427).

Bug: webrtc:12426, webrtc:12427
Change-Id: I9b1fae8acf16d90d9716054fc3c390700877a82a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205221
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33159}
2021-02-04 10:59:16 +00:00
426b6e49de changed src\modules\audio_device\win\audio_device_core_win.cc , and it is working
Bug: webrtc:12384
Change-Id: Ie9fddc3fa8016eb6a0bcc4c6757f30c4b087c10a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203821
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33158}
2021-02-04 09:31:33 +00:00
c1e7878c76 Remove deprecated ExpectationToString in SequenceChecker
Bug: webrtc:12419
Change-Id: I501b96865f69f15e49a813c5dcd6ccf44d67c2e7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205621
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33157}
2021-02-04 09:13:51 +00:00
8ddbc0410c Roll chromium_revision d32cb9c63c..343080f0c8 (850300:850400)
Change log: d32cb9c63c..343080f0c8
Full diff: d32cb9c63c..343080f0c8

Changed dependencies
* src/base: a76f5a4529..05c36bf5d5
* src/build: 51e243d510..10e5511c9e
* src/ios: 8f01dc90a6..bfeca89d3e
* src/testing: 8c4792efb7..967a8819da
* src/third_party: 2d07e1e01e..2c2047c852
* src/third_party/depot_tools: 0e2aee7e97..6dc9cc301f
* src/third_party/freetype/src: 0636dc8af1..fd7f92b6f0
* src/third_party/perfetto: 52852a8ec9..7cb370fb0a
* src/tools: 76168ec684..be3d315c96
DEPS diff: d32cb9c63c..343080f0c8/DEPS

No update to Clang.

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

Change-Id: I8c1bd21b45b6326192bf655e44a584fb7a472bf7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205700
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@{#33156}
2021-02-04 02:51:36 +00:00
1d71fd9c61 Roll chromium_revision e4e9ee4776..d32cb9c63c (850184:850300)
Change log: e4e9ee4776..d32cb9c63c
Full diff: e4e9ee4776..d32cb9c63c

Changed dependencies
* src/base: 3c8771091c..a76f5a4529
* src/build: e1afaaed5c..51e243d510
* src/ios: 1f7f65c3f9..8f01dc90a6
* src/testing: 58f0122fd7..8c4792efb7
* src/third_party: 1f487962b8..2d07e1e01e
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/5b022f3c5e..73a0597ed6
* src/third_party/depot_tools: 4783d04710..0e2aee7e97
* src/third_party/freetype/src: d3befe1c72..0636dc8af1
* src/third_party/perfetto: b998b78079..52852a8ec9
* src/tools: 8defd8df52..76168ec684
DEPS diff: e4e9ee4776..d32cb9c63c/DEPS

No update to Clang.

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

Change-Id: Ib727a086520dd7ebbc3f8711876b38cc119c3cd2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205641
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@{#33155}
2021-02-03 23:09:20 +00:00
1651c6c40c Roll chromium_revision 415eaa7c56..e4e9ee4776 (850009:850184)
Change log: 415eaa7c56..e4e9ee4776
Full diff: 415eaa7c56..e4e9ee4776

Changed dependencies
* src/base: e37031b5d4..3c8771091c
* src/build: 46a0056a44..e1afaaed5c
* src/ios: 4919159f1f..1f7f65c3f9
* src/testing: d2dcdd0691..58f0122fd7
* src/third_party: c24f85f18e..1f487962b8
* src/third_party/freetype/src: 5635d5edc4..d3befe1c72
* src/third_party/perfetto: acc731df2f..b998b78079
* src/third_party/usrsctp/usrsctplib: 07f871bda2..37a9dc3e18
* src/tools: fc438b19d0..8defd8df52
DEPS diff: 415eaa7c56..e4e9ee4776/DEPS

No update to Clang.

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

Change-Id: I2326914666b0eedb4c26c7d25924b6c5014bafd5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205601
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@{#33154}
2021-02-03 18:58:23 +00:00
ad3258647e Reland "Prepare to avoid hops to worker for network events."
This is a reland of d48a2b14e7545d0a0778df753e062075c044e2a1

The diff of the reland (what caused the tsan error) can be seen
by diffing patch sets 2 and 3. Essentially I missed keeping the calls
to the transport controller on the worker thread. Note to self to add
thread/sequence checks to that code so that we won't have to rely on
tsan :)

Original change's description:
> Prepare to avoid hops to worker for network events.
>
> This moves the thread hop for network events, from BaseChannel and
> into Call. The reason for this is to move the control over those hops
> (including DeliverPacket[Async]) into the same class where the state
> is held that is affected by those hops. Once that's done, we can start
> moving the relevant network state over to the network thread and
> eventually remove the hops.
>
> I'm also adding several TODOs for tracking future steps and give
> developers a heads up.
>
> Bug: webrtc:11993
> Change-Id: Ice7ee3b5b6893532df52039324293979196d341d
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204800
> Commit-Queue: Tommi <tommi@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33138}

Bug: webrtc:11993, webrtc:12430
Change-Id: I4fccaa418d22c2087a55bbb3ddbb25fac3b4dfcc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205580
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33153}
2021-02-03 17:44:47 +00:00
3f7990d38b Split sequence checker on two headers before moving to API
Bug: webrtc:12419
Change-Id: I8d5acfec0c0654efc70ca089dc6a862503939220
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205524
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33152}
2021-02-03 17:19:59 +00:00
7301253491 Add IncludeBlocks to clang-format.
This should make "git cl format" compliant with [1].

[1] - https://google.github.io/styleguide/cppguide.html#Names_and_Order_of_Includes

Bug: None
Change-Id: Iaccae6c37965e390de8f8a3fe8e3866f51690b5a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204485
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33151}
2021-02-03 16:29:07 +00:00
14cad9fa35 Fix clang-tidy: performance-inefficient-vector-operation.
Bug: None
Change-Id: Ieb3b49436c075047e1d9e0293dd94f754c652b01
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205520
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33150}
2021-02-03 15:18:51 +00:00
d5827024a0 Add hta@ to WebRTC's root OWNERS.
No-Try: True
Bug: None
Change-Id: I09fb0b8a7f8e9bf9dd70846d8af25c549f28550e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205220
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33149}
2021-02-03 15:09:31 +00:00
b5823055be In VP9 encoder avoid crashing when encoder produce an unexpected frame
Since for such frame SvcController haven't setup how buffer should be
referenced and updated, the frame would likely have unexpected configuration.
Log an error to note resource have been wasted produce it and drop such frame.

Bug: webrtc:11999
Change-Id: I1784403e67b7207092d46016510460738994404e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205140
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33148}
2021-02-03 14:56:09 +00:00
53610223a8 Delete unused function webrtc::AudioProcessing::MutateConfig
Bug: None
Change-Id: Ibc70e5246a3f7b89775c65a19c808c1f030b8ac6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205522
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33147}
2021-02-03 12:55:23 +00:00
6f75f6b3bd APM: add AGC2 SIMD kill switches in AudioProcessing::Config::ToString()
Bug: webrtc:7494
Change-Id: Icba5f6be689a57ef4748ae816565349fd1ad2108
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205322
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33146}
2021-02-03 12:31:56 +00:00
47ec157fbf Revert "Prepare to avoid hops to worker for network events."
This reverts commit d48a2b14e7545d0a0778df753e062075c044e2a1.

Reason for revert: TSan tests started to fail constantly after this CL (it looks like it is flaky and the CQ was lucky to get green). See https://ci.chromium.org/ui/p/webrtc/builders/ci/Linux%20Tsan%20v2/25042/overview.

Original change's description:
> Prepare to avoid hops to worker for network events.
>
> This moves the thread hop for network events, from BaseChannel and
> into Call. The reason for this is to move the control over those hops
> (including DeliverPacket[Async]) into the same class where the state
> is held that is affected by those hops. Once that's done, we can start
> moving the relevant network state over to the network thread and
> eventually remove the hops.
>
> I'm also adding several TODOs for tracking future steps and give
> developers a heads up.
>
> Bug: webrtc:11993
> Change-Id: Ice7ee3b5b6893532df52039324293979196d341d
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204800
> Commit-Queue: Tommi <tommi@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33138}

TBR=nisse@webrtc.org,tommi@webrtc.org

Change-Id: Id87cf9cbcc8ed58e74d755a110f0ef9dd980e298
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:11993
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205525
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33145}
2021-02-03 12:08:37 +00:00
9111bd18b1 LibvpxVp8Encoder: add option to configure resolution_bitrate_limits.
Bug: none
Change-Id: Ia01d630fc95e19a4a08cd7a004238c22d823b4dc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205521
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33144}
2021-02-03 11:25:32 +00:00
22e37d8857 Don't log a message that a field is missing if the field trial key starts with "_"
Bug: None
Change-Id: I6967e8a43ce762e2c272ca9c25e359f23eaf2157
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205003
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33143}
2021-02-03 11:23:42 +00:00
76a1041f0f Revert "Fix data race for config_ in AudioSendStream"
This reverts commit 51e5c4b0f47926e2586d809e47dc60fe4812b782.

Reason for revert: Speculatively reverting because WebRTC fails to
roll due to a DCHECK in audio_send_stream.cc in a web platform test
and this is the only CL on the blamelist that touches that file.

Original change's description:
> Fix data race for config_ in AudioSendStream
>
> config_ was written and read on different threads without sync. This CL
> moves config access on worker_thread_ with all other required fields.
> It keeps only bitrate allocator accessed from worker_queue_, because
> it is used from it in other classes and supposed to be single threaded.
>
> Bug: None
> Change-Id: I23ece4dc8b09b41a8c589412bedd36d63b76cbc5
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203267
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Per Åhgren <peah@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Artem Titov <titovartem@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33125}

TBR=danilchap@webrtc.org,peah@webrtc.org,nisse@webrtc.org,hta@webrtc.org,titovartem@webrtc.org

# Initially not skipping CQ checks because original CL landed > 1 day
# ago. Adding NOTRY now because of ios_sim_x64_dbg_ios12 issues.
NOTRY=True

Bug: None
Change-Id: I33355198fca96faad7ac77538c7bd31425f46ebe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205340
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33142}
2021-02-03 10:01:02 +00:00
0e3cb9fb20 Create and initialize encoders only for active streams
Bug: webrtc:12407
Change-Id: Id30fcb84dcbfffa30c7a34b15564ab5049cec96c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204066
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33141}
2021-02-03 09:25:30 +00:00
312ea0e144 Roll chromium_revision a0e7a1a1f9..415eaa7c56 (849895:850009)
Change log: a0e7a1a1f9..415eaa7c56
Full diff: a0e7a1a1f9..415eaa7c56

Changed dependencies
* src/build: 58ba695bae..46a0056a44
* src/ios: 30ed468e6f..4919159f1f
* src/testing: 25038e2c9e..d2dcdd0691
* src/third_party: 0a70ef40cc..c24f85f18e
* src/third_party/depot_tools: 69902d0941..4783d04710
* src/tools: c01cfe4607..fc438b19d0
DEPS diff: a0e7a1a1f9..415eaa7c56/DEPS

No update to Clang.

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

Change-Id: I77c2bcc8c35f81cc4345a34d21121d0bf9a64c31
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205500
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@{#33140}
2021-02-03 08:44:30 +00:00
6862818c56 Roll chromium_revision e753f3f38e..a0e7a1a1f9 (849529:849895)
Change log: e753f3f38e..a0e7a1a1f9
Full diff: e753f3f38e..a0e7a1a1f9

Changed dependencies
* src/base: 42e48f5265..e37031b5d4
* src/build: 43a97d34a6..58ba695bae
* src/ios: 7bccac8993..30ed468e6f
* src/testing: 1be79fc37c..25038e2c9e
* src/third_party: c6d4796954..0a70ef40cc
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4920147e90..5b022f3c5e
* src/third_party/depot_tools: 8bb3513349..69902d0941
* src/third_party/freetype/src: 4554c6da42..5635d5edc4
* src/third_party/perfetto: 71a92399dc..acc731df2f
* src/tools: 1dee60d4c3..c01cfe4607
DEPS diff: e753f3f38e..a0e7a1a1f9/DEPS

No update to Clang.

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

Change-Id: I68fff49c3f4e6b17e5267d7436061fbb7eac5745
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205441
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@{#33139}
2021-02-03 03:23:59 +00:00
d48a2b14e7 Prepare to avoid hops to worker for network events.
This moves the thread hop for network events, from BaseChannel and
into Call. The reason for this is to move the control over those hops
(including DeliverPacket[Async]) into the same class where the state
is held that is affected by those hops. Once that's done, we can start
moving the relevant network state over to the network thread and
eventually remove the hops.

I'm also adding several TODOs for tracking future steps and give
developers a heads up.

Bug: webrtc:11993
Change-Id: Ice7ee3b5b6893532df52039324293979196d341d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204800
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33138}
2021-02-02 20:13:00 +00:00
16ab60c4c6 Use CallbackList in DtlsHandshakeError in dtls_transport.
- Signal is transferred from jsep_transport_controller to dtls_transport,
  jsep_transport_controller is already using Callbacklist and this
  modified the dtls_transport to use callback_list.

Bug: webrtc:11943
Change-Id: I4a7ed08e6dab21b8eb515d4d8971f9b084fb8c86
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203722
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Lahiru Ginnaliya Gamathige <glahiru@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33137}
2021-02-02 17:17:22 +00:00
c8421c4c3e Replace rtc::ThreadChecker with webrtc::SequenceChecker
Bug: webrtc:12419
Change-Id: I825c014cc1c4b1dcba5ef300409d44859e971144
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205002
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33136}
2021-02-02 14:56:27 +00:00
7358b40f44 Remove usage of AsyncInvoker in test class FakeNetworkSocket
in favor of simpler TaskQueue protection mechanic.

Bug: webrtc:12339
Change-Id: I1636139fe0d3f79bdc28132da9268dab003f3506
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204700
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33135}
2021-02-02 12:32:17 +00:00
eee0e9e9d4 Remove passing rtp packet metadata through webrtc as array of bytes
Instead metadata is now passed via refcounted class.

Bug: b/178094662
Change-Id: I9591fb12990282b60310ca01aea2a7b73d92487a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204060
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33134}
2021-02-02 12:22:57 +00:00
a1ca64c5ed Roll chromium_revision 24c8af75a9..e753f3f38e (849426:849529)
Change log: 24c8af75a9..e753f3f38e
Full diff: 24c8af75a9..e753f3f38e

Changed dependencies
* src/ios: f793fb384b..7bccac8993
* src/testing: 6b292120da..1be79fc37c
* src/third_party: 2af0e460ec..c6d4796954
* src/third_party/depot_tools: 8c95595001..8bb3513349
* src/third_party/icu: f4147b227f..df304fa570
* src/third_party/perfetto: 55f3b57f8d..71a92399dc
* src/tools: 73f1ba6c0b..1dee60d4c3
DEPS diff: 24c8af75a9..e753f3f38e/DEPS

No update to Clang.

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

Change-Id: I9ebd80935287557cc7fc704b8f7deb5808a13eef
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205240
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@{#33133}
2021-02-02 11:15:25 +00:00
3f412945f0 Update WebRTC code version (2021-02-02T04:02:53).
TBR=webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com,mbonadei@webrtc.org

Bug: None
Change-Id: Ic7d33188cbc3f50dffa1274e220292edf03f504d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205161
Reviewed-by: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com <webrtc-version-updater@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#33132}
2021-02-02 06:03:11 +00:00
84635021c6 Roll chromium_revision 23e1598eba..24c8af75a9 (849278:849426)
Change log: 23e1598eba..24c8af75a9
Full diff: 23e1598eba..24c8af75a9

Changed dependencies
* src/base: 345f0a111d..42e48f5265
* src/build: 12dc8aa166..43a97d34a6
* src/buildtools: 990491572d..fc5af1ac75
* src/ios: caeaecdec5..f793fb384b
* src/testing: 976b00d2a9..6b292120da
* src/third_party: 9a24869383..2af0e460ec
* src/third_party/depot_tools: 0f790421b2..8c95595001
* src/third_party/perfetto: 0c8af4a753..55f3b57f8d
* src/tools: 7b587b529f..73f1ba6c0b
DEPS diff: 23e1598eba..24c8af75a9/DEPS

No update to Clang.

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

Change-Id: If39c7e1891429ca01cb592674abd8e7de1db7739
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205160
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@{#33131}
2021-02-02 04:37:38 +00:00
2ab9b28c52 Get rid of unnecessary network thread Invoke in BaseChannel.
By changing was_ever_writable_ to be guarded by the worker thread
instead of the network thread.

Gets rid of one network thread invoke per audio/video m= section per
round of negotiation.

NOTRY=True

Bug: webrtc:12266
Change-Id: Ie913a9f96db3fd8351559e916922c82d2d0337f0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203881
Commit-Queue: Taylor <deadbeef@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33130}
2021-02-02 02:48:08 +00:00
d1d2dc7c05 Roll chromium_revision 6aa02eda73..23e1598eba (849160:849278)
Change log: 6aa02eda73..23e1598eba
Full diff: 6aa02eda73..23e1598eba

Changed dependencies
* src/base: 9fa6f2d069..345f0a111d
* src/build: 309a37dbcf..12dc8aa166
* src/ios: e5f880adf4..caeaecdec5
* src/testing: 45bfa5f33f..976b00d2a9
* src/third_party: 4d4ae98d43..9a24869383
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e549290ec8..4920147e90
* src/third_party/depot_tools: cb07c525c0..0f790421b2
* src/third_party/perfetto: 7551137d36..0c8af4a753
* src/tools: 6c322627c6..7b587b529f
DEPS diff: 6aa02eda73..23e1598eba/DEPS

No update to Clang.

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

Change-Id: Ie28d3ee84225cae77fa68ebf5dfbd2b8451ccf0e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205121
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@{#33129}
2021-02-01 23:54:27 +00:00
0f009dc13d Roll chromium_revision 402f104a74..6aa02eda73 (849004:849160)
Change log: 402f104a74..6aa02eda73
Full diff: 402f104a74..6aa02eda73

Changed dependencies
* src/base: 32e8a13e0a..9fa6f2d069
* src/build: dce1147a27..309a37dbcf
* src/ios: 015499c867..e5f880adf4
* src/testing: 0b33acd751..45bfa5f33f
* src/third_party: 3a9cd4f415..4d4ae98d43
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/91735e2e67..e549290ec8
* src/third_party/freetype/src: 939e844468..4554c6da42
* src/third_party/perfetto: 788d246c91..7551137d36
* src/tools: 786d79ae54..6c322627c6
DEPS diff: 402f104a74..6aa02eda73/DEPS

No update to Clang.

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

Change-Id: Ie64760f75d5cffefc078211add40a4451d52fe4a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205080
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@{#33128}
2021-02-01 18:46:39 +00:00
e7ded686d5 Fix integer overflow.
Bug: chromium:1172583
Change-Id: I72c6c07f6f5702311c1a73eb4551e92a34c87e47
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205007
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33127}
2021-02-01 17:37:19 +00:00
78f87ab106 Delete use of RecursiveCriticalSection in JsepTransport
Mark corresponding webrtc::Mutex as mutable, to allow use in const methods.

Bug: webrtc:11567
Change-Id: Ia8c731a91c719a531799abf24fd30a15b54428af
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204801
Reviewed-by: Markus Handell <handellm@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33126}
2021-02-01 15:02:50 +00:00
51e5c4b0f4 Fix data race for config_ in AudioSendStream
config_ was written and read on different threads without sync. This CL
moves config access on worker_thread_ with all other required fields.
It keeps only bitrate allocator accessed from worker_queue_, because
it is used from it in other classes and supposed to be single threaded.

Bug: None
Change-Id: I23ece4dc8b09b41a8c589412bedd36d63b76cbc5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203267
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33125}
2021-02-01 14:46:20 +00:00
e7c79fd3d6 Remove from chromium build targets that are not compatible with it.
We need to be able build chromium with rtc_include_tests = true. It
reveals a lot of targets that are not compatible with chromium but
aren't marked so.

`rtc_include_tests=true` has been considered a way to disable targets for the Chromium build, causing an overload on rtc_include_tests while the meaning of the two GN args (rtc_include_tests and build_with_chromium) should be kept separated.

Bug: webrtc:12404
Change-Id: I2f72825445916eae7c20ef9338672d6a07a9b9ff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203890
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33124}
2021-02-01 13:46:19 +00:00
d6604df27f Revert "Enable Video-QualityScaling experiment by default"
This reverts commit 066b5b6ed7069d78e17b8ad6fb8c82546b31acea.

Reason for revert: Regressions on iOS testbots.

Original change's description:
> Enable Video-QualityScaling experiment by default
>
> Bug: webrtc:12401
> Change-Id: Iebf3130e785892bb9fddf1012bc46027a21085a4
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204000
> Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Åsa Persson <asapersson@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33091}

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

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

Bug: webrtc:12401
Change-Id: I489b805c7741b63c22c16cfce03347179a3e2602
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/205001
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33123}
2021-02-01 13:20:49 +00:00
3faea70d1a allow empty scalability mode in AV1 encoder
Bug: chromium:1170699
Change-Id: I74c633e74c85c3b940d6302cdc8fa319e187b1e5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204221
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33122}
2021-02-01 13:00:09 +00:00