Commit Graph

31555 Commits

Author SHA1 Message Date
e537e9ca13 aec3: Support AVX2/FMA intrinsics in AEC3
Bug: webrtc:11663
Change-Id: Ib75eb616ef0cb62698b0d96af7ebe42e93825222
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179006
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32023}
2020-09-01 11:58:16 +00:00
090049c546 Remove usage of webrtc::RTPFragmentationHeader from objc wrappers
Bug: webrtc:6471
Change-Id: Ibe4ce280a9f1aea53016f131d1d235337fe71a4f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182502
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32022}
2020-09-01 11:17:36 +00:00
c2302e8e2e Fix compile error when rtc_enable_protobuf is false
When configuring without protobuf this test fails to compile with the error:
perf_test_histogram_writer_no_protobuf.cc:20:1: error: non-void function does not return a value

Bug: None
Change-Id: I8e2676ee4b5284eac08e648fc43bdfc585fc5d64
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182740
Reviewed-by: Taylor <deadbeef@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Taylor <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32021}
2020-08-31 23:07:13 +00:00
9e02f4716a Fix destruction order of PortAllocator and PacketSocketFactory.
PortAllocator depends on PacketSocketFactory, so it should be deleted
afterwords in case its created sockets depend on the resources owned
by the factory.

Bug: None
Change-Id: I7716c552d371b78360db656cc2f4fd03415d0e00
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182881
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Taylor <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32020}
2020-08-31 21:52:27 +00:00
7b69a44c8b Fix ABA problem when iterating epoll events.
Original patch contributed by andrey.semashev@gmail.com.

In PhysicalSocketServer::WaitEpoll(), the loop verifies that the
signalled dispatcher is in dispatchers_ set. It does so by looking up
the dispatcher pointer in the set. This is vulnerable to the ABA
problem because one dispatcher may be removed and destroyed and another
created and added with the same address before epoll reports an event
for the old dispatcher. The same issue exists for other Wait
implementations, if a dispatcher is removed and a new one added with
the same socket handle is the old.

This is avoided by using a 64-bit key for looking up the dispatcher
in the set. The key is set from a running counter which gets incremented
when a dispatcher is added to the set, so even if the same dispatcher
pointer is added, removed and added again, the key value will be
different.

This changes the storage of dispatchers_ from a set to a flat_hash_map,
which uses a bit more memory but has faster lookup (O(1) as opposed to
O(log n)).

Bug: webrtc:11124
Change-Id: I6d206e1a367b58ba971edca9b48af7664384b797
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181027
Commit-Queue: Taylor <deadbeef@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32019}
2020-08-31 20:26:37 +00:00
81de439281 Fix missing isolated output directory.
This change aims at fixing swarming errors like the below:
https://chrome-swarming.appspot.com/task?d=true&id=4e548270683c1610
Adding directory in the output path is used by Pinpoint:
https://source.chromium.org/chromium/chromium/src/+/master:third_party/catapult/dashboard/dashboard/pinpoint/models/quest/read_value.py;l=77

Bug: webrtc:11084
Change-Id: If725fd9f87961a86d91f04f25fe283c0be4e0e33
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182920
Commit-Queue: Jeremy Leconte <jleconte@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32018}
2020-08-31 11:40:10 +00:00
c2cc4d305a [adaptation] Expose target pixels and max framerate in VideoAdapter
This will enable wiring up these signals to the platform specific capturers

Bug: chromium:1116430
Change-Id: I6cdab61eab202a24fa56167da57c389a5b1880c2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182683
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32017}
2020-08-31 09:46:21 +00:00
08b63641bd Move ABSL_MUST_USE_RESULT at the beginning of the method decl.
Bug: chromium:1122891
Change-Id: Ieb1763bc659e93c38fab14ee90823e3b57872478
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182921
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32016}
2020-08-31 08:19:29 +00:00
205b1f4237 Roll chromium_revision 4bf6d39883..a50ca66bb1 (802598:802712)
Change log: 4bf6d39883..a50ca66bb1
Full diff: 4bf6d39883..a50ca66bb1

Changed dependencies
* src/base: c0c7bd3b88..5e9f24fcdf
* src/build: f9767b5784..3ca2fde9fe
* src/ios: 33f906ed18..eff05958eb
* src/testing: 29e981694d..3e8f86746d
* src/third_party: 806b312ce3..e8ec7d0bf2
* src/third_party/breakpad/breakpad: 9c38ab7c67..e3a62dc550
* src/third_party/ffmpeg: a1f3db690c..d96f468ef0
* src/third_party/perfetto: 33a6332a92..d7c4e9418e
* src/tools: 8a337e371d..5441d82c5d
DEPS diff: 4bf6d39883..a50ca66bb1/DEPS

No update to Clang.

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

Change-Id: Iaa73c66b4a66407b92465735d6bc8703323f571a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182860
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@{#32015}
2020-08-28 18:42:54 +00:00
e3e2618b1b Roll chromium_revision 186593cd62..4bf6d39883 (802477:802598)
Change log: 186593cd62..4bf6d39883
Full diff: 186593cd62..4bf6d39883

Changed dependencies
* src/base: c38e80073a..c0c7bd3b88
* src/build: 2841b25344..f9767b5784
* src/ios: d26ad3a960..33f906ed18
* src/testing: f1af09e240..29e981694d
* src/third_party: 341e7a5449..806b312ce3
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/f9ede33dee..77fb6d1812
* src/third_party/depot_tools: 7d98e228f8..ffb12276aa
* src/tools: 1dc526e7fb..8a337e371d
DEPS diff: 186593cd62..4bf6d39883/DEPS

No update to Clang.

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

Change-Id: I357de43b1408eaae4da1965b5f2c98fc88a7d263
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182829
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@{#32014}
2020-08-28 10:40:32 +00:00
7ab9c51e80 Update gradle wrapper & gradle plugin.
Enables JDK 11 support.

Bug: None
Change-Id: I12ad7ea6ebc1e7453d59b825b39d2fc55046e5b7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182841
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32013}
2020-08-28 08:58:57 +00:00
89760badbd Roll chromium_revision e887fc7ffd..186593cd62 (802375:802477)
Change log: e887fc7ffd..186593cd62
Full diff: e887fc7ffd..186593cd62

Changed dependencies
* src/base: 78cdec74a5..c38e80073a
* src/build: c846c9f467..2841b25344
* src/ios: 8fa238ed24..d26ad3a960
* src/testing: f2d1665a12..f1af09e240
* src/third_party: 32d9325790..341e7a5449
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/788aa6fd2c..f9ede33dee
* src/third_party/perfetto: ed2e473928..33a6332a92
* src/tools: 63c0e2a7e5..1dc526e7fb
DEPS diff: e887fc7ffd..186593cd62/DEPS

No update to Clang.

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

Change-Id: I1d56aa11c188e730675bf2eaa09b83069b3e44ea
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182825
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@{#32012}
2020-08-28 02:44:36 +00:00
20619223c0 Roll chromium_revision 55f2a783e1..e887fc7ffd (802244:802375)
Change log: 55f2a783e1..e887fc7ffd
Full diff: 55f2a783e1..e887fc7ffd

Changed dependencies
* src/base: 9ee1044092..78cdec74a5
* src/build: 1b1e3755f4..c846c9f467
* src/ios: e344dfb1cf..8fa238ed24
* src/testing: 0d4b3aa9cf..f2d1665a12
* src/third_party: d5a319fb76..32d9325790
* src/third_party/breakpad/breakpad: e3a62dc550..9c38ab7c67
* src/third_party/depot_tools: c08c71bedf..7d98e228f8
* src/third_party/perfetto: 8e6246dafe..ed2e473928
* src/tools: 061b2a2959..63c0e2a7e5
DEPS diff: 55f2a783e1..e887fc7ffd/DEPS

Clang version changed llvmorg-12-init-3492-ga1caa302:llvmorg-12-init-4187-g33ce275f
Details: 55f2a783e1..e887fc7ffd/tools/clang/scripts/update.py

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

Change-Id: If80a24993a8670fdb66b77db05ca56da0a43f837
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182823
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@{#32011}
2020-08-27 22:45:30 +00:00
6b381c7456 Call SetVideoCodecSwitchingEnabled on every video media channel.
It was only being called for the first video media channel; with
unified plan SDP mode, it's possible to have multiple video media
channels, one for each video m= section.

Bug: webrtc:10795
Change-Id: I57fda9383d0f8803df1937ac5103d9ae354c0748
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182404
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Taylor <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32010}
2020-08-27 21:08:28 +00:00
3cdde9771d Roll chromium_revision 824b4e6489..55f2a783e1 (802144:802244)
Change log: 824b4e6489..55f2a783e1
Full diff: 824b4e6489..55f2a783e1

Changed dependencies
* src/base: 73ce06bb9d..9ee1044092
* src/build: e39860ebb0..1b1e3755f4
* src/ios: 86d2315a17..e344dfb1cf
* src/testing: f41c54d282..0d4b3aa9cf
* src/third_party: a2b5484316..d5a319fb76
* src/third_party/perfetto: ced41e1f39..8e6246dafe
* src/tools: 2a1a00c14c..061b2a2959
DEPS diff: 824b4e6489..55f2a783e1/DEPS

No update to Clang.

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

Change-Id: I2501e8b9a30e1729880481ad310eed4e986d5631
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182820
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@{#32009}
2020-08-27 16:46:55 +00:00
1f580a97e5 Revert "Make cricket::SctpTransportInternalFactory injectable through PeerConnectionFactory Deps"
This reverts commit 4c0a381137c04fd80830af8a041e25e3428dd33f.

Reason for revert: Breaks downstream test

Original change's description:
> Make cricket::SctpTransportInternalFactory injectable through PeerConnectionFactory Deps
> 
> This is to allow testing without using the singleton sctp library. 
> cricket::SctpTransportInternalFactory is renamed to webrtc::SctpTransportFactoryInterface and moved to the API folder to follow the API structure.
> Tests can use test/pc/sctp/fake_sctp_transport.h to inject a faked data channel implementation.
> 
> Bug: none
> Change-Id: I482241269463595062548870750d33f31238c6b1
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182082
> Commit-Queue: Per Kjellander <perkj@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Reviewed-by: Taylor <deadbeef@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32007}

TBR=deadbeef@webrtc.org,mbonadei@webrtc.org,kwiberg@webrtc.org,perkj@webrtc.org

Change-Id: I46d5ba89fe723caccd065b0ac41d77ed45373838
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: none
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182802
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32008}
2020-08-27 13:59:57 +00:00
4c0a381137 Make cricket::SctpTransportInternalFactory injectable through PeerConnectionFactory Deps
This is to allow testing without using the singleton sctp library. 
cricket::SctpTransportInternalFactory is renamed to webrtc::SctpTransportFactoryInterface and moved to the API folder to follow the API structure.
Tests can use test/pc/sctp/fake_sctp_transport.h to inject a faked data channel implementation.

Bug: none
Change-Id: I482241269463595062548870750d33f31238c6b1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182082
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Taylor <deadbeef@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32007}
2020-08-27 13:19:14 +00:00
3d3b531b64 Add WebRTC-IceFieldTrial send_ping_on_selected_ice_controlling
This patch adds send_ping_on_selected_ice_controlling that is
the same like send_ping_on_switch_ice_controlling except that it
also sends the ping on initial selection (i.e not a switch(?)).
I.e it sends "extra" pings when selecting a connection.

This lets the peer know that this candidate pair has been selected,
which causes some peers to unblock sending on the candidate pair.

TODO deprecate send_ping_on_switch_ice_controlling in favor of this,
i.e I should have done it like this on first attempt :(

Bug: webrtc:10273
Change-Id: I0e02cd5fd6d677720c1fa863af5d7c2334d02d4f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182780
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32006}
2020-08-27 12:07:04 +00:00
a8327d4415 Move FrameCounts and FrameCountObserver to common_video/frame_counts.h
Bug: webrtc:7660
Change-Id: Ic42227508e0e26b5443de0ef0e0722126cbbb8fd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182501
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32005}
2020-08-27 09:53:18 +00:00
6e0eae9b05 Roll chromium_revision 208807d63b..824b4e6489 (802034:802144)
Change log: 208807d63b..824b4e6489
Full diff: 208807d63b..824b4e6489

Changed dependencies
* src/base: 670ddd46a0..73ce06bb9d
* src/build: faca8bf7c0..e39860ebb0
* src/ios: 9a3138bc3a..86d2315a17
* src/testing: 8561aaf4ba..f41c54d282
* src/third_party: 9f981b18e3..a2b5484316
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/8178c8db63..788aa6fd2c
* src/third_party/depot_tools: e7f2169b36..c08c71bedf
* src/third_party/ffmpeg: 48b037ba0d..a1f3db690c
* src/tools: 6cda46509f..2a1a00c14c
DEPS diff: 208807d63b..824b4e6489/DEPS

No update to Clang.

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

Change-Id: Ica4a82cc08030b83e008ac5c8f64dece23770510
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182760
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@{#32004}
2020-08-27 09:20:28 +00:00
cf41c6070d Roll chromium_revision d397ec535d..208807d63b (801809:802034)
Change log: d397ec535d..208807d63b
Full diff: d397ec535d..208807d63b

Changed dependencies
* src/base: de31d8fdec..670ddd46a0
* src/build: 2c5943e28c..faca8bf7c0
* src/ios: 4b01418cc5..9a3138bc3a
* src/testing: 599b179748..8561aaf4ba
* src/third_party: faae26cb77..9f981b18e3
* src/third_party/android_deps/libs/com_google_protobuf_protobuf_javalite: version:3.12.2-cr0..version:3.13.0-cr0
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/a54f10f750..8178c8db63
* src/third_party/depot_tools: c6aa151180..e7f2169b36
* src/third_party/perfetto: 0fdfdcf61c..ced41e1f39
* src/tools: 6e542bd744..6cda46509f
DEPS diff: d397ec535d..208807d63b/DEPS

No update to Clang.

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

Change-Id: I01f791ea191384ba9a771c34addcb5a0b201a214
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182722
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@{#32003}
2020-08-27 01:17:46 +00:00
d354d56b84 Audio codec factories: Implementations return null on unsupported formats
Bug: none
Change-Id: I2db106b00b108b7f1682082bb1d58ef7a48569f9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182682
Reviewed-by: Alejandro Luebs <aluebs@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32002}
2020-08-26 18:03:38 +00:00
ffebf4fe63 update JavaAudioDeviceModule.Builder.build() to return JavaAudioDeviceModule
Bug: None
Change-Id: Iff43debf677ed4a006a8edabde9455566f5cb159
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182580
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Bin Zhu <ricebin@google.com>
Cr-Commit-Position: refs/heads/master@{#32001}
2020-08-26 17:43:37 +00:00
18c70c9e7c Roll chromium_revision 09ff114191..d397ec535d (801677:801809)
Change log: 09ff114191..d397ec535d
Full diff: 09ff114191..d397ec535d

Changed dependencies
* src/base: 23b1c3dcdb..de31d8fdec
* src/build: 7c73b098b9..2c5943e28c
* src/ios: b8c0406d41..4b01418cc5
* src/testing: 129e2ccccd..599b179748
* src/third_party: 080fbc7f4c..faae26cb77
* src/third_party/depot_tools: dff2104727..c6aa151180
* src/third_party/freetype/src: cdc009c24a..6730854c39
* src/third_party/perfetto: 7023f47299..0fdfdcf61c
* src/tools: 01e80ed90b..6e542bd744
DEPS diff: 09ff114191..d397ec535d/DEPS

No update to Clang.

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

Change-Id: I0e9ece67058a04ccdbe685ded06549fd5764af13
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182662
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@{#32000}
2020-08-26 16:35:46 +00:00
c75c428076 Fix current_direction() when stopping_ but not stopped_
Also add an unit test for RtpTransceiver under Unified Plan, and
refactor so that we no longer use StopInternal() internally.
This will make removing it easier.

Bug: chromium:980879
Change-Id: I46219112e3aba8e7513c08336b10e95b1ea5d68b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182681
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31999}
2020-08-26 14:02:03 +00:00
91c0477b43 Add AV1 support to IVF reader and writer
Bug: None
Change-Id: I2ce36d282596bba54b7924e838b19b06eaacf0fd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182503
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Emil Lundmark <lndmrk@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31998}
2020-08-26 11:12:32 +00:00
c093d9ad62 Roll chromium_revision d4203a2215..09ff114191 (801568:801677)
Change log: d4203a2215..09ff114191
Full diff: d4203a2215..09ff114191

Changed dependencies
* src/base: b63c8e029f..23b1c3dcdb
* src/build: 97e77cda44..7c73b098b9
* src/ios: ab050df108..b8c0406d41
* src/testing: 77bcd16e9f..129e2ccccd
* src/third_party: f14fac40eb..080fbc7f4c
* src/third_party/depot_tools: b09f2bb2f2..dff2104727
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/4dcbd921c3..e2219b84bc
* src/tools: 6e0b7c77f7..01e80ed90b
DEPS diff: d4203a2215..09ff114191/DEPS

No update to Clang.

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

Change-Id: Ie9a36e8c9ef919f83256782d33e9da19ba083d64
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182660
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@{#31997}
2020-08-26 09:10:34 +00:00
99b0f8d26c Reland "[Adaptation] Remove QualityScalerResource when disabled."
This is a reland of ba8abbb630cdd9d05e22c830d0845e920762850d

This can be relanded as the queuing issues that were causing a
crash in the WebRTC roll in Chromium have been resolved. I have
added the Chromium failing targets to the CQ for this commit and
they have succeeded.

Original change's description:
> [Adaptation] Remove QualityScalerResource when disabled.
>
> Bug: webrtc:11843
> Change-Id: I2d3e40356c266f189db0242f3c7590e6d83e4456
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181369
> Commit-Queue: Evan Shrubsole <eshr@google.com>
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31924}

Bug: webrtc:11843
Change-Id: I228331293060ef996f1dd7f8e18d52b0818f526b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182080
Commit-Queue: Evan Shrubsole <eshr@google.com>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31996}
2020-08-26 06:33:43 +00:00
a857d8bcfa Roll chromium_revision 44a1544cd5..d4203a2215 (801457:801568)
Change log: 44a1544cd5..d4203a2215
Full diff: 44a1544cd5..d4203a2215

Changed dependencies
* src/base: fd0d7cafc7..b63c8e029f
* src/build: e210adcf48..97e77cda44
* src/ios: 5e81094da6..ab050df108
* src/testing: 58f64bb4ac..77bcd16e9f
* src/third_party: b6e9144e76..f14fac40eb
* src/third_party/depot_tools: e95b5d6ad5..b09f2bb2f2
* src/third_party/perfetto: 41db2fb649..7023f47299
* src/tools: 593a376719..6e0b7c77f7
DEPS diff: 44a1544cd5..d4203a2215/DEPS

No update to Clang.

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

Change-Id: I1f40bd642817ec34b63214e0e2385af0961197e3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182562
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@{#31995}
2020-08-25 22:54:00 +00:00
a095d432e7 Roll chromium_revision 0d713c9318..44a1544cd5 (801321:801457)
Change log: 0d713c9318..44a1544cd5
Full diff: 0d713c9318..44a1544cd5

Changed dependencies
* src/base: a43074db68..fd0d7cafc7
* src/build: 14f79fb108..e210adcf48
* src/ios: 117ae1b1c9..5e81094da6
* src/testing: 7e103ffe64..58f64bb4ac
* src/third_party: 1fab87d099..b6e9144e76
* src/third_party/perfetto: cd8de1d295..41db2fb649
* src/tools: 69e6a443db..593a376719
DEPS diff: 0d713c9318..44a1544cd5/DEPS

No update to Clang.

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

Change-Id: I21cce334c774c9529cd7bbe2277b0ccf5c141d03
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182560
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@{#31994}
2020-08-25 18:51:57 +00:00
12e8511d55 expose MediaProjection
BUG=None

Change-Id: I82f97f02272d882cd2fdc0d9869f2879ba3bbc30
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182440
Commit-Queue: Bin Zhu <ricebin@google.com>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31993}
2020-08-25 16:53:40 +00:00
e8b00a1a74 Fix OperationsChainTest.OnChainEmptyCallback flake.
This test was added in
https://webrtc-review.googlesource.com/c/src/+/180620. On my machine it
passes about 98% of the time.

The test is meant to count the number of times the callback that the
operations chain is empty has been invoked, and does this by ensuring
the last operation to make the chain empty has completed before
expecting that the counter has increased.

The race happns when the operation has completed but the callback that
the chain is empty has not happened yet. This CL fixes that by using
EXPECT_EQ_WAIT instead.

TBR=hta@webrtc.org

Bug: chromium:1060083
Change-Id: I2ebfac3e635ef895d6602f7360e5ec6006fc1d0a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182541
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31992}
2020-08-25 16:11:22 +00:00
8572841131 [Adaptation] Remove resource adaptation queue
Resource adaptation needs refactoring for async adaptations. For now
the resource adaptation processor can work on the encoder thread, until
it is refactored to support async adaptation.

Bug: webrtc:11867
Change-Id: I9c46da356db19c0fd52748c999ccb216f2ca923b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182040
Commit-Queue: Evan Shrubsole <eshr@google.com>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31991}
2020-08-25 12:16:20 +00:00
90caa4356b Roll chromium_revision ba69b98d32..0d713c9318 (801212:801321)
Change log: ba69b98d32..0d713c9318
Full diff: ba69b98d32..0d713c9318

Changed dependencies
* src/base: 26dc849e57..a43074db68
* src/build: 404780cf19..14f79fb108
* src/ios: ccd33723ea..117ae1b1c9
* src/testing: cf41dcb914..7e103ffe64
* src/third_party: a2fc92b6db..1fab87d099
* src/tools: 9359344846..69e6a443db
DEPS diff: ba69b98d32..0d713c9318/DEPS

No update to Clang.

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

Change-Id: Ic360f2496a6ba5eb44f6f38efd12e3d3d16012db
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182520
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@{#31990}
2020-08-25 10:39:51 +00:00
e574a31c50 [Perfect Negotiation] Fire onnegotiationneeded when chain is empty.
This CL generates "negotiationneeded" events if negotiation is needed
when the Operations Chain becomes empty. This is only implemented in
Unified Plan to avoid Plan B regressions (the event is pretty useless
in Plan B as it fires repeatedly).

In order to implement the spec-compliant behavior of only firing the
event when the chain is empty, this CL introduces
PeerConnectionObserver::OnNegotiationNeededEvent() and
PeerConnectionInterface::ShouldFireNegotiationNeededEvent() to allow
validating the event before firing it. This is needed because the event
must not be fired until a task has been posted and subsequently chained
operations could invalidate it in the meantime.

Test coverage is added for both legacy and modern "negotiationneeded"
events.

Bug: chromium:1060083
Change-Id: I1dbaa8f6ddb1c6e7c8abd8da3b92efcb64060383
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180620
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31989}
2020-08-25 09:56:39 +00:00
db724a1a23 Ensure RtcEventLogEncoderNewFormat::EncodeRemoteEstimate handles infite
numbers

Bug: webrtc:11878
Change-Id: I3c2a2ef6b8cba0ddb2bf00d84c279d89cbe64478
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182500
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31988}
2020-08-25 09:22:49 +00:00
5923083657 RTC_OBJC_TYPE RTCWrappedNativeVideo{Decoder,Encoder}.
Some versionss of WebKit.framework export these symbols. Even if they
are private symbols, WebRTC needs to provide a way to prefix them like
the OBJC API symbols (see [1]).

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

Bug: None
Change-Id: Ibb9ca2c89796a0d5e2ca65c549ba8799f24bbe7c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182421
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31987}
2020-08-25 08:58:29 +00:00
cccd55094d Delete unneeded dependencies on deprecated build target webrtc_common
Bug: webrtc:7660
Change-Id: Iad32aad8432fa2c6b3018d511b51943f869fbd11
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182420
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31986}
2020-08-25 07:33:12 +00:00
0f83864bf9 Roll chromium_revision 0c4572c29e..ba69b98d32 (801101:801212)
Change log: 0c4572c29e..ba69b98d32
Full diff: 0c4572c29e..ba69b98d32

Changed dependencies
* src/base: 8eb5a08461..26dc849e57
* src/build: 5e95547410..404780cf19
* src/ios: a959a9d317..ccd33723ea
* src/testing: e86ac19ff1..cf41dcb914
* src/third_party: e548090601..a2fc92b6db
* src/third_party/depot_tools: 490961030b..e95b5d6ad5
* src/third_party/perfetto: 746445da75..cd8de1d295
* src/tools: fbc54ad6ff..9359344846
DEPS diff: 0c4572c29e..ba69b98d32/DEPS

No update to Clang.

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

Change-Id: I54dab6b9a4d61c4bfc7b75f951019e69b1730fa4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182406
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@{#31985}
2020-08-25 00:43:10 +00:00
20f3f220bc Roll chromium_revision 6cc8efac3b..0c4572c29e (800536:801101)
Change log: 6cc8efac3b..0c4572c29e
Full diff: 6cc8efac3b..0c4572c29e

Changed dependencies
* src/base: c1f9e3cf41..8eb5a08461
* src/build: acef2c50d7..5e95547410
* src/buildtools: b00ad0af63..ff93f3ea1a
* src/buildtools/linux64: git_revision:e327ffdc503815916db2543ec000226a8df45163..git_revision:6f13aaac55a977e1948910942675c69f2b4f7a94
* src/buildtools/mac: git_revision:e327ffdc503815916db2543ec000226a8df45163..git_revision:6f13aaac55a977e1948910942675c69f2b4f7a94
* src/buildtools/win: git_revision:e327ffdc503815916db2543ec000226a8df45163..git_revision:6f13aaac55a977e1948910942675c69f2b4f7a94
* src/ios: 4156807865..a959a9d317
* src/testing: 86a61ed9c7..e86ac19ff1
* src/third_party: b6744f889c..e548090601
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/74161f485b..c947efabcb
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/7a2e3f8396..a54f10f750
* src/third_party/depot_tools: bfb423d266..490961030b
* src/third_party/freetype/src: f9f6adb625..cdc009c24a
* src/third_party/perfetto: 9869f187b5..746445da75
* src/third_party/r8: vvymFSkKtWKWNmfz0PL_0H8MD8V40P--A9aUfxfpF6QC..N9LppKV-9lFkp7JQtmcLHhm7xHqFv0SPa6aDPtgNCdwC
* src/tools: 32d15ee98f..fbc54ad6ff
DEPS diff: 6cc8efac3b..0c4572c29e/DEPS

No update to Clang.

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

Change-Id: I821072cc2094d9e9ca9b5c8b38dbd44b88bc4c74
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182403
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@{#31984}
2020-08-24 20:23:06 +00:00
d37b0ec2bb Passing the estimated capture clock offset to SendVideo.
Bug: webrtc:10739
Change-Id: I491db1910fad9101c7c9087e880862e755dfc69d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182184
Reviewed-by: Chen Xing <chxg@google.com>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31983}
2020-08-24 13:31:42 +00:00
70b2cf8b36 Delete deprecated version of EncodedImageCallback::OnEncodedImage
Bug: webrtc:6471
Change-Id: I173cd3b3b9f4badaf7c17574adf1d09a926a9b9b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182380
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31982}
2020-08-24 11:00:19 +00:00
f7cf133ad5 Fix h264 decoding on iOS Simulator by not using IOSurface
Bug: None
Change-Id: I8ccd7b82e3303c21221417a6673f6fbd15719428
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182340
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31981}
2020-08-24 09:05:04 +00:00
233cb55511 Make RTCError::sctp_cause_code const
Bug: None
Change-Id: Ie94993726f936ac55778d510b5085fa36b3927ca
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182280
Reviewed-by: Taylor <deadbeef@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31980}
2020-08-22 09:16:15 +00:00
fbb49b4f7f Enable Vp8VariableFramerateScreenshare by default
Bug: webrtc:10310,chromium:949112
Change-Id: I3ed54c0571bdb8be026dee82ca3578dd5c0f9158
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182182
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31979}
2020-08-21 15:03:58 +00:00
bce19cd0ee Roll chromium_revision 4591d36de2..6cc8efac3b (800155:800536)
Change log: 4591d36de2..6cc8efac3b
Full diff: 4591d36de2..6cc8efac3b

Changed dependencies
* src/base: ec18ec11ef..c1f9e3cf41
* src/build: 579e98a211..acef2c50d7
* src/ios: 6cd7533818..4156807865
* src/testing: f284de851c..86a61ed9c7
* src/third_party: e52741fa71..b6744f889c
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/7f34313548..7a2e3f8396
* src/third_party/depot_tools: 81f4ba7e7d..bfb423d266
* src/third_party/perfetto: 56d9df4fa5..9869f187b5
* src/tools: 241a11d7d7..32d15ee98f
DEPS diff: 4591d36de2..6cc8efac3b/DEPS

No update to Clang.

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

Change-Id: Iafd3fdc3128bbfe30d7b02f8b4179ff1f4fbcccd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182261
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31978}
2020-08-21 12:39:03 +00:00
ea7fbfb966 Implement network monitor for iOS.
Notably, this should detect whether an interface is "available" or not,
which should prevent the failure is with dual SIM card setups.

This is gated behind a field trial for now, to ensure this doesn't cause
any regressions due to false negatives (interfaces that are usable
but not listed as available by NWPathMonitor).

Bug: webrtc:10966
Change-Id: Ia3942c4c57b525d08d8b340e2325f3705cfd0304
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180923
Commit-Queue: Taylor <deadbeef@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31977}
2020-08-20 21:46:18 +00:00
bedb605c82 Transition ICE gathering state to "new" once all transports go away
Bug: chromium:1115080
Change-Id: I524ed48ffc2520ce21ad4bdc25fa3b86d9e41af5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182081
Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31976}
2020-08-20 18:55:52 +00:00
1d7a3fe6ed Roll chromium_revision 7a8fca54e0..4591d36de2 (800031:800155)
Change log: 7a8fca54e0..4591d36de2
Full diff: 7a8fca54e0..4591d36de2

Changed dependencies
* src/base: b8d3ffc3b8..ec18ec11ef
* src/build: 183d29ca63..579e98a211
* src/ios: cabfd90bbe..6cd7533818
* src/testing: 855f6eb5b6..f284de851c
* src/third_party: 54c9cadd81..e52741fa71
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/c244e33ead..7f34313548
* src/third_party/depot_tools: 25f1303ed8..81f4ba7e7d
* src/third_party/perfetto: ef0fb4c270..56d9df4fa5
* src/tools: fe43defcbf..241a11d7d7
DEPS diff: 7a8fca54e0..4591d36de2/DEPS

No update to Clang.

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

Change-Id: I54c6b2091d160b3eb0a730cc81b06bfe250d603c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182102
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@{#31975}
2020-08-20 17:15:43 +00:00
a53472940e DTMF Event Sub-API on VoIP API
Added VoipDtmf in VoipEngine as a sub-API to provide DTMF related interfaces; also added relevant unit tests.

Bug: webrtc:11802
Change-Id: Ie9832aebe075a48ae1207be142361b73646673ca
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180225
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Tim Na <natim@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Tim Na <natim@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31974}
2020-08-20 17:10:02 +00:00