Commit Graph

31418 Commits

Author SHA1 Message Date
d46db9f152 Remove unused pc level test MediaHelper constructor
Follow up on https://webrtc-review.googlesource.com/c/src/+/183363 after an upstream project was updated.

Bug: None
Change-Id: I8c789a948c5ea1cb36f76ff6fa3b4618e295c700
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183365
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32036}
2020-09-03 17:00:54 +00:00
a92521d781 pki.google.com has been deprecated in favor of pki.goog
Bug: None
Change-Id: I56733bdb3878f024da8615bfbd13405e5a758be7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183362
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32035}
2020-09-03 14:18:18 +00:00
6c03f5c505 Support simulated time in MediaHelper for pc tests
Bug: None
Change-Id: I63420a6b9ed93b73faa34dfede32f0cad1d7e451
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183363
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32034}
2020-09-03 13:22:45 +00:00
c94650d88f Remove AudioProcessing::SetExtraOptions.
Bug: webrtc:5298
Change-Id: I28be75df69b66aa59ae91b05cb7f9afad4f55aa1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182120
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32033}
2020-09-03 12:43:14 +00:00
ea8f739bce Make AudioProcessing::SetExtraOptions non pure-virtual.
Bug: webrtc:5298
Change-Id: Ib5ba81c8e333b1e7189fbb7e9e9f143579c84b8b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182181
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32032}
2020-09-03 06:17:44 +00:00
c60774bed0 Delete RTPFragmentationHeader as no longer used
Bug: webrtc:6471
Change-Id: I714ceda3cd84606deda6a47696a65d43f9ab4430
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183041
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32031}
2020-09-03 00:01:27 +00:00
c03a187391 Default streams: don't block media even if on different transceiver.
This fixes some edge cases where early media could cause default
stream that block the actual signaled media from beind delivered.

Bug: webrtc:11477
Change-Id: I8b26df63a690861bd19f083102d1395e882f8733
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183120
Commit-Queue: Taylor <deadbeef@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32030}
2020-09-02 22:28:55 +00:00
0ade98316c Cleanup of the APM creation
This CL removes the possibility that APM cannot be created, i.e., that
the create method can return nullptr. That was already the case
implicitly but this CL makes that behavior explicit.


Bug: webrtc:5298
Change-Id: I2706ea538c9d1b4bcd65faecab637640a209a4dc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183101
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32029}
2020-09-02 20:28:49 +00:00
444c13c078 Fix tests in WebRtcVideoChannelBaseTest.
If rtc_libvpx_build_vp9=false, some tests fail because
BuiltinVideoEncoderFactory / DecoderFactory doesn't support VP9.

Bug: webrtc:11901
Change-Id: Iaa97950e70e1f70cdeb6ef677786e0fd115a75db
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183220
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32028}
2020-09-02 09:58:25 +00:00
8696f9a062 Adding documentation to become a WebRTC committer.
No-Try: True
Bug: None
Change-Id: I36ed5fcea29d096a03447954a49383c22865bc15
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183100
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32027}
2020-09-02 07:49:04 +00:00
3f94fc53d4 Migrate android_resources targets to not create R.java files
R.java file creation responsibilities will be moved to android_library
and android_apk targets and creating R.java files in the
android_resources targets is now deprecated. This cl migrates webrtc
targets to the new way.

Bug: chromium:1073476
Change-Id: I0a2fa759d3ff1d8e201e5719c9238701a58171e9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183060
Commit-Queue: Mohamed Heikal <mheikal@chromium.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32026}
2020-09-01 20:29:36 +00:00
2597a1b22c Set initial decoder resolution from field trial.
Bug: webrtc:11898
Change-Id: Ie1313bfa3e99abe80f00ed3067f29c775d0f6831
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/183040
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32025}
2020-09-01 18:14:00 +00:00
2bca008914 Reland "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.

patch 1 contain the original cl.
patch 2 modifications

Bug: none
Change-Id: Ic088da3eb7d9aada79e6d601dbf2d1aa2be777f6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/182840
Reviewed-by: Taylor <deadbeef@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32024}
2020-09-01 12:17:00 +00:00
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