Commit Graph

31445 Commits

Author SHA1 Message Date
b35695e4c0 Roll chromium_revision 7051d3aa50..ff30c92f13 (775236:775354)
Change log: 7051d3aa50..ff30c92f13
Full diff: 7051d3aa50..ff30c92f13

Changed dependencies
* src/base: 74087b0433..f6b65186c7
* src/build: f794b3d4af..68335d574e
* src/ios: edc17de953..b761b74046
* src/testing: 8e2983cde0..a0c0f35125
* src/third_party: be2a8da376..dfa6287194
* src/third_party/depot_tools: e65444f91d..88b4a168c3
* src/tools: f882470ad3..119a416071
DEPS diff: 7051d3aa50..ff30c92f13/DEPS

No update to Clang.

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

Change-Id: Ibe23659bd29aa98660015e377931e9c8bec6b0bc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176520
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@{#31448}
2020-06-05 00:50:07 +00:00
5008ba02d3 Roll chromium_revision 7100fe3f3e..7051d3aa50 (775078:775236)
Change log: 7100fe3f3e..7051d3aa50
Full diff: 7100fe3f3e..7051d3aa50

Changed dependencies
* src/base: 7ca560de63..74087b0433
* src/build: 439d91cf49..f794b3d4af
* src/ios: 0efbc367ac..edc17de953
* src/testing: 32baa7e2f5..8e2983cde0
* src/third_party: e7b7d70ddf..be2a8da376
* src/tools: f9938a9591..f882470ad3
* src/tools/swarming_client: 90c5e17a82..4c095d0417
DEPS diff: 7100fe3f3e..7051d3aa50/DEPS

No update to Clang.

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

Change-Id: I9a4201b5515abedab4bdfeff04ad2a545aa2ce25
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176486
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@{#31447}
2020-06-04 20:44:26 +00:00
0a55c2f6cd Roll chromium_revision 43c8771f89..7100fe3f3e (774929:775078)
Change log: 43c8771f89..7100fe3f3e
Full diff: 43c8771f89..7100fe3f3e

Changed dependencies
* src/base: cf5969c394..7ca560de63
* src/build: 932b84b103..439d91cf49
* src/ios: 03956cbc88..0efbc367ac
* src/testing: 0ffd841e81..32baa7e2f5
* src/third_party: 4a37c7d618..e7b7d70ddf
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/15d5f65efa..92c6c3ec3b
* src/third_party/depot_tools: 84620d395a..e65444f91d
* src/third_party/google_benchmark/src: 6746c65bcf..367119482f
* src/tools: b561482b1c..f9938a9591
DEPS diff: 43c8771f89..7100fe3f3e/DEPS

No update to Clang.

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

Change-Id: Iab0b338eaeb869641001922da6cb2bef26479c09
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176482
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@{#31446}
2020-06-04 12:49:53 +00:00
bc1f910456 Reland "Added mid to error messages reported during SDP apply."
This reverts commit 341434e4da2c193b8842917d73afed6eea3a4332.

Reason for revert: another attempt to land with Chromium
test updated to accept both error messages by CL:
https://chromium-review.googlesource.com/c/chromium/src/+/2228545

Original change's description:
> Revert "Added mid to error messages reported during SDP apply."
>
> This reverts commit d2890e8833796f13c4a1243769be966bebdfcaa7.
>
> Reason for revert: speculative: WebRtcBrowserTest.NegotiateUnsupportedVideoCodec broken on all FYI bots, example: https://ci.chromium.org/p/chromium/builders/webrtc.fyi/WebRTC%20Chromium%20FYI%20Linux%20Tester/6659
>
> Original change's description:
> > Added mid to error messages reported during SDP apply.
> >
> > Bug: webrtc:10139
> > Change-Id: I7462b632e00a2da7b189b63022d30f594700b68a
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176400
> > Reviewed-by: Tommi <tommi@webrtc.org>
> > Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
> > Cr-Commit-Position: refs/heads/master@{#31421}
>
> TBR=tommi@webrtc.org,yura.yaroshevich@gmail.com
>
> Change-Id: I18972815df10e2bd7b914ad82df9596009c2fecc
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:10139
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176418
> Reviewed-by: Olga Sharonova <olka@webrtc.org>
> Commit-Queue: Olga Sharonova <olka@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31425}

TBR=tommi@webrtc.org,olka@webrtc.org,yura.yaroshevich@gmail.com

# Not skipping CQ checks because this is a reland.

Bug: webrtc:10139
Change-Id: I603d3891c43ac396bf0ba98c6de189663235c8af
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176448
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
Cr-Commit-Position: refs/heads/master@{#31445}
2020-06-04 11:16:46 +00:00
10594c3c46 Add multi head queue implementation.
Queue with multiple heads is planned to be used in
DefaultVideoQualityAnalyzer to store stream state. Stream state contains
ordered sequence of frame ids that were send for this video stream.
When frame is received by one receiver it should be removed from state
for that receiver and kept for others.

How it is used can be found in this CL:
https://webrtc-review.googlesource.com/c/src/+/176411

Bug: webrtc:11631
Change-Id: Ic7fabf4d77131805a91f08a2ccfffc73c08d3e2d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176402
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31444}
2020-06-04 10:37:05 +00:00
f70fbc8411 Introduces rtc_base/synchronization/mutex.h.
This change introduces a new non-reentrant mutex to WebRTC. It
enables eventual migration to Abseil's mutex.

The mutex types supportable by webrtc::Mutex are

- absl::Mutex
- CriticalSection (Windows only)
- pthread_mutex (POSIX only)

In addition to introducing the mutexes, the CL also changes
PacketBuffer to use the new mutex instead of rtc::CriticalSection.

The method of yielding from critical_section.cc was given a
mini-cleanup and YieldCurrentThread() was added to
rtc_base/synchronization/yield.h/cc.

Additionally, google_benchmark benchmarks for the mutexes were added
(test courtesy of danilchap@), and some results from a pthread/Abseil
shootout were added showing Abseil has the advantage in higher
contention.

Bug: webrtc:11567, webrtc:11634
Change-Id: Iaec324ccb32ec3851bf6db3fd290f5ea5dee4c81
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176230
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31443}
2020-06-04 09:55:12 +00:00
e917379c5b [Stats] Don't attempt to aggregate empty VideoSenderInfos.
This fixes a crash that could happen if substreams exist but there is
no kMedia substream yet. There was an assumption that we either had no
substreams or at least one kMedia substream, but this was not true.
The correct thing to do is to ignore substream stats that are not
associated with any kMedia substream, because we only produce
"outbound-rtp" stats objects for existing kMedia substreams.

A test is added to make sure no stats are returned. Prior to the fix,
this test would crash.

Bug: chromium:1090712
Change-Id: Ib1f8494a162542ae56bdd2df7618775a3473419b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176446
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31442}
2020-06-04 09:03:52 +00:00
8b7cfa16aa Introduce absl_deps in rtc_* C++ templates.
Since dependencies on Abseil need to be statically linked in case
Chromium is built with is_component_build=true, this CL introduces a new
parameter for C++ library rtc_* templates (rtc_library, rtc_source_set
and rtc_static_library). This parameter (called "absl_deps") will result
in a dependency on the Abseil component (//third_party/abseil-cpp:absl)
when is_component_build=true or on the normal granular Abseil target
when is_component_build=false.

Bug: chromium:1046390
Change-Id: Iddca886926a7874488701bc9d79affb00cca72d0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176447
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31441}
2020-06-04 08:41:32 +00:00
f25761d798 Remove dependency from RtpRtcp on the Module interface.
The 'Module' part of the implementation must not be
called via the RtpRtcp interface, but is rather a part of
the contract with ProcessThread. That in turn is an
implementation detail for how timers are currently implemented
in the default implementation.

Along the way I'm deprecating away the factory function which
was inside the interface and tied it to one specific implementation.
Instead, I'm moving that to the implementation itself and down the
line, we don't have to go through it if we just want to create an
instance of the class.

The key change is in rtp_rtcp.h and the new rtp_rtcp_interface.h
header file (things moved from rtp_rtcp.h), the rest falls from that.

Change-Id: I294f13e947b9e3e4e649400ee94a11a81e8071ce
Bug: webrtc:11581
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176419
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31440}
2020-06-04 08:11:21 +00:00
4d75d9c04c Clean resource_adaptation_processor_unittest use of TaskQueueForTest
Use the current task queue in the test instead.

R=hbos@webrtc.org

Bug: None
Change-Id: I266796df3de675a808bcf2da08901411fadc86ae
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176414
Commit-Queue: Evan Shrubsole <eshr@google.com>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31439}
2020-06-04 07:36:16 +00:00
aa40b89006 Add Scalability structure tests for individual frame configurations
Bug: webrtc:10342
Change-Id: Ia768f6b37a4e9b0ce66139e799833746054e3a4e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176443
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31438}
2020-06-04 07:32:06 +00:00
7f7fb830ba Reland "Add av1 test running real video clips."
This reverts commit 6958d2c6f0ce5267bdc4120d88680a4be9ed5e59.

Disable the test on iOS.

Bug: None
Change-Id: Ie42fada10a92bd4a802c6c79caeb4965410ddf6a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176461
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Jerome Jiang <jianj@google.com>
Cr-Commit-Position: refs/heads/master@{#31437}
2020-06-04 06:32:46 +00:00
6813767e52 Av1 wrapper: only use speed 6 on cores > 2
Bug: None
Change-Id: Iacddfbca1d2579c3a397339a1c18008a10238348
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176463
Reviewed-by: Marco Paniconi <marpan@webrtc.org>
Commit-Queue: Jerome Jiang <jianj@google.com>
Cr-Commit-Position: refs/heads/master@{#31436}
2020-06-04 03:23:54 +00:00
0fd55cc715 Roll chromium_revision 8c883b89af..43c8771f89 (774827:774929)
Change log: 8c883b89af..43c8771f89
Full diff: 8c883b89af..43c8771f89

Changed dependencies
* src/ios: b0040c02f9..03956cbc88
* src/testing: 45c0f8fe6e..0ffd841e81
* src/third_party: e80904120b..4a37c7d618
* src/third_party/depot_tools: cf77d6e387..84620d395a
* src/tools: 399edfdda2..b561482b1c
DEPS diff: 8c883b89af..43c8771f89/DEPS

No update to Clang.

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

Change-Id: I07b828b15fbbe7ce64f6a16310507138377703fb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176386
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@{#31435}
2020-06-04 03:13:54 +00:00
21544ba0be Roll chromium_revision e728aee5f1..8c883b89af (774589:774827)
Change log: e728aee5f1..8c883b89af
Full diff: e728aee5f1..8c883b89af

Changed dependencies
* src/base: e2680ca915..cf5969c394
* src/build: 3706c78319..932b84b103
* src/buildtools: 7a0ebcc840..1b066f0216
* src/ios: 9cb0749680..b0040c02f9
* src/testing: f5f2b604a8..45c0f8fe6e
* src/third_party: b9df2cbf82..e80904120b
* src/third_party/libvpx/source/libvpx: f80e888723..c176557314
* src/tools: ea65b4f041..399edfdda2
DEPS diff: e728aee5f1..8c883b89af/DEPS

No update to Clang.

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

Change-Id: I25543efc93a5959473bc4d1e4c3bf83dd853764e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176384
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@{#31434}
2020-06-03 23:04:39 +00:00
5d511a5c0b Include correct ABSL_DECLARE_FLAG header.
The absl/flags/flag.h header is not #including absl/flags/declare.h
starting from [1] so this transitive #include needs to be removed.

[1] - https://chromium-review.googlesource.com/c/chromium/src/+/2228841

Bug: None
Change-Id: I06e78ed05e0fb570a9ecc8621ec3ae5298fffd1a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176444
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31433}
2020-06-03 22:08:46 +00:00
447cd3e623 Roll chromium_revision 0cd53b97fa..e728aee5f1 (770251:774589)
Change log: 0cd53b97fa..e728aee5f1
Full diff: 0cd53b97fa..e728aee5f1

Changed dependencies
* src/base: 234742ffa0..e2680ca915
* src/build: 814cd0c441..3706c78319
* src/buildtools: 64ebbe62e1..7a0ebcc840
* src/buildtools/linux64: git_revision:ab32747ae7a399c57b04280f38e49b8fdf237a8a..git_revision:d0a6f072070988e7b038496c4e7d6c562b649732
* src/buildtools/mac: git_revision:ab32747ae7a399c57b04280f38e49b8fdf237a8a..git_revision:d0a6f072070988e7b038496c4e7d6c562b649732
* src/buildtools/win: git_revision:ab32747ae7a399c57b04280f38e49b8fdf237a8a..git_revision:d0a6f072070988e7b038496c4e7d6c562b649732
* src/ios: c3b92e2864..9cb0749680
* src/testing: 6bd825eb6a..f5f2b604a8
* src/third_party: 52a7c4e5e0..b9df2cbf82
* src/third_party/android_deps/libs/androidx_coordinatorlayout_coordinatorlayout: version:1.0.0-cr0..version:1.1.0-cr0
* src/third_party/android_deps/libs/androidx_recyclerview_recyclerview: version:1.0.0-cr0..version:1.1.0-cr0
* src/third_party/android_deps/libs/androidx_test_espresso_espresso_core: version:3.1.0-cr0..version:3.2.0-cr0
* src/third_party/android_deps/libs/androidx_test_espresso_espresso_idling_resource: version:3.1.0-cr0..version:3.2.0-cr0
* src/third_party/android_deps/libs/androidx_transition_transition: version:1.0.0-rc02-cr0..version:1.2.0-cr0
* src/third_party/android_deps/libs/com_google_android_material_material: version:1.0.0-rc02-cr0..version:1.2.0-alpha06-cr0
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/78b3337a10..2309f645e5
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/503f81b8fe..15d5f65efa
* src/third_party/depot_tools: 5a7be3da21..cf77d6e387
* src/third_party/googletest/src: a09ea700d3..cb44c86c1a
* src/third_party/harfbuzz-ng/src: 100d40c827..e3af529e51
* src/third_party/icu: f222396170..630b884f84
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/c810066815..2aa13c436e
* src/third_party/libunwindstack: dfd3f3d84c..046920fc49
* src/third_party/libvpx/source/libvpx: 1243d2fc27..f80e888723
* src/third_party/r8: UAycWqc5QfELtJhhnoU4jQHjsyxPjRNyZ0EfvlojaY4C..gobCh01BNwJNyLHHNFUmLWSMaAbe4x3izuzBFzxQpDoC
* src/tools: 5a602c7ac7..ea65b4f041
* src/tools/swarming_client: 7e8636295f..90c5e17a82
Added dependencies
* src/third_party/android_deps/libs/androidx_test_espresso_espresso_contrib
* src/third_party/android_deps/libs/androidx_annotation_annotation_experimental
* src/third_party/android_deps/libs/org_robolectric_shadows_multidex
* src/third_party/android_deps/libs/androidx_test_espresso_espresso_web
* src/third_party/android_deps/libs/androidx_test_espresso_espresso_intents
* src/third_party/android_deps/libs/androidx_viewpager2_viewpager2
* src/third_party/android_deps/libs/org_ccil_cowan_tagsoup_tagsoup
* src/third_party/android_deps/libs/org_robolectric_shadows_playservices
DEPS diff: 0cd53b97fa..e728aee5f1/DEPS

Clang version changed 99ac9ce7016d701b43b8f0c308dc3463da57d983:a6ae333a0c23fc9b0783ca45e2676abac00c6723
Details: 0cd53b97fa..e728aee5f1/tools/clang/scripts/update.py

TBR=titovartem@webrtc.org,marpan@webrtc.org, jianj@chromium.org,
BUG=None

Remove src/third_party/robolectric/robolectric

Change-Id: Id6d50ce671fd4f0f2b23e3a06829846f2cbeeb6f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176417
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31432}
2020-06-03 21:19:55 +00:00
1220c39953 av1: add a few controls to wrapper
this will speed up realtime encoding.

Change-Id: I39d42f3c195d2f520f04f7357e72b0903905ea81
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176383
Reviewed-by: Marco Paniconi <marpan@webrtc.org>
Commit-Queue: Jerome Jiang <jianj@google.com>
Cr-Commit-Position: refs/heads/master@{#31431}
2020-06-03 20:56:00 +00:00
f84ab8e2dd Add publicly visible mock for PeerConnectionFactoryInterface
Bug: webrtc:11642
Change-Id: I71c99034a70780d4d1ffc8330836c76c6105bc96
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176421
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31430}
2020-06-03 17:46:11 +00:00
addf616f9b Mark mock_peerconnectioninterface.h as publicly visible
According to gmock guidelines, mocks for API classes should live
in the same package which owns the API.

No-Try: True
Bug: webrtc:11642
Change-Id: Ib105a1806cc710bc4cff752b8950e981bb4bc326
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176381
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31429}
2020-06-03 16:15:21 +00:00
a4dfe24d76 Add missing deps for android libs to unblock chromium roll
Bug: None
Change-Id: I1404f02cf43c3d8288fa7ae3bf128ed76856def4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176445
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31428}
2020-06-03 15:26:21 +00:00
649aa3416e in libaom decoder use public control function instead of internal one
to unblock rolling new version where private function is no longer available

Bug: None
Change-Id: I9c35fede3f331f7688cc97acfbda1250b42348a3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176441
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31427}
2020-06-03 15:03:07 +00:00
44b8b0bebb AudioDeviceMac, AudioMixerManagerMac: remove lock recursions.
This change removes lock recursions and adds thread annotations.

Bug: webrtc:11567
Change-Id: I995cdc71b4e447e1153617b3d8472f35c1670181
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176440
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31426}
2020-06-03 14:35:57 +00:00
341434e4da Revert "Added mid to error messages reported during SDP apply."
This reverts commit d2890e8833796f13c4a1243769be966bebdfcaa7.

Reason for revert: speculative: WebRtcBrowserTest.NegotiateUnsupportedVideoCodec broken on all FYI bots, example: https://ci.chromium.org/p/chromium/builders/webrtc.fyi/WebRTC%20Chromium%20FYI%20Linux%20Tester/6659

Original change's description:
> Added mid to error messages reported during SDP apply.
> 
> Bug: webrtc:10139
> Change-Id: I7462b632e00a2da7b189b63022d30f594700b68a
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176400
> Reviewed-by: Tommi <tommi@webrtc.org>
> Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
> Cr-Commit-Position: refs/heads/master@{#31421}

TBR=tommi@webrtc.org,yura.yaroshevich@gmail.com

Change-Id: I18972815df10e2bd7b914ad82df9596009c2fecc
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10139
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176418
Reviewed-by: Olga Sharonova <olka@webrtc.org>
Commit-Queue: Olga Sharonova <olka@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31425}
2020-06-03 13:17:07 +00:00
636865e05d Delete field trial WebRTC-GenericDescriptor
this trial is by default on for three months since
https://webrtc-review.googlesource.com/c/src/+/168661

Bug: webrtc:11503
Change-Id: I8f2e0996fd1c77113715628198a409f12a525d51
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176242
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31424}
2020-06-03 13:00:30 +00:00
40f1fe9cff Add unittests to validate scalability structures without encoder
Bug: webrtc:10342
Change-Id: I66407e635502b7c87f8d4ab49c95f5c1326da4a0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176412
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31423}
2020-06-03 12:59:25 +00:00
80b301255e Reland "Change to using the new Ooura constructor"
This is a reland of a6c70741e76f2278bde5c7eab9d37984fe41dcf0

Original change's description:
> Change to using the new Ooura constructor
> 
> 
> Bug: b/155316201
> Change-Id: I40000e30df7a495a0937885abea19caeb599e00a
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176378
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Per Åhgren <peah@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31411}

Bug: b/155316201
Change-Id: Iba9748509d66b9ad4b210be83d515db684c5d5e0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176410
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31422}
2020-06-03 12:27:14 +00:00
d2890e8833 Added mid to error messages reported during SDP apply.
Bug: webrtc:10139
Change-Id: I7462b632e00a2da7b189b63022d30f594700b68a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176400
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Yura Yaroshevich <yura.yaroshevich@gmail.com>
Cr-Commit-Position: refs/heads/master@{#31421}
2020-06-03 11:54:52 +00:00
fae05624ec Deprecate the static RtpRtcp::Create() method.
The method is being used externally to create instances
of the deprecated internal implementation.

Instead, I'm moving how we instantiate the internal implementation into
the implementation itself and move towards keeping the interface
separate from a single implementation.

Change-Id: I743aa86dc4c812b545699c546c253c104719260e
Bug: webrtc:11581
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176404
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31420}
2020-06-03 09:41:34 +00:00
878808892d C++ style: We don't allow designated initializers
Bug: None
Change-Id: Ib23b72e89b1db1eb363f4f7da040045174dd70d7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176407
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31419}
2020-06-03 09:11:09 +00:00
e2e8c17cbf [Adaptation] Move Resource to api/ folder.
This is a prerequisite to implementing it externally.

Bug: webrtc:11525
Change-Id: I9cb3b4418396485d3eb9f25cafa51cbff6db7817
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176401
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@google.com>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31418}
2020-06-03 08:51:29 +00:00
3ca2836f70 IWYU: size_t is defined in stddef.h
This required for gcc-10.

Bug: None
Change-Id: Iba3ff0881005cb2ae4574e47284a1b881594de86
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176361
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Commit-Queue: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31417}
2020-06-03 08:43:50 +00:00
39ab1b547c [Adaptation] Remove Resource::UsageState() and ClearUsageState().
ResourceListener::OnResourceUsageStateMeasured() now takes
ResourceUsageState as argument, making Resource::UsageState()
superfluous.

With the existing "fire-and-forget" behavior of always clearing usage
state on reacting to a signal, there is no longer a need to call
ClearUsageState() so this too is removed. (We may want to have a
callback in the future to hint to the Resource that it is a good idea
to clear internal measurement samples, i.e. because the load of the
system is about to change, but we can revisit that when we need it.)

Moving the usage state to the callback has the benefit of getting rid
of the assumption that UsageState() has to return the same value every
time it is called in the same task.

This CL is also the final nail in the coffin for Resource needing to
know about the adaptation task queue: ResourceAdaptationProcessor's
ResourceListener now takes care of posting to the adaptation task
queue. To support this, the processor's SequenceChecker is replaced
by a TaskQueueBase pointer.

Bug: webrtc:11525, webrtc:11618
Change-Id: I2277e71cc3759c85b62465020935603f03792c94
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176376
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@google.com>
Cr-Commit-Position: refs/heads/master@{#31416}
2020-06-03 08:27:49 +00:00
3b641675de Add list of participants to the start method of video analyzer.
To support multiple participants video quality analyzer may need to know
peer names in advance to simplify internal structures and metrics
reporting.

Bug: webrtc:11631
Change-Id: I4ffb1554ab7f0e015b8e937b7ffddd55aba9826f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176364
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Andrey Logvin <landrey@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31415}
2020-06-03 08:08:47 +00:00
43ccfecdb7 Remove unused instance of Ooura FFT
Bug: b/155316201
Change-Id: I29a2dcf620091665b6d48820022fac3a3b672c04
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176405
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31414}
2020-06-03 00:33:54 +00:00
955e9039ea Revert "Change to using the new Ooura constructor"
This reverts commit a6c70741e76f2278bde5c7eab9d37984fe41dcf0.

Reason for revert: breaks TAP build

Original change's description:
> Change to using the new Ooura constructor
> 
> 
> Bug: b/155316201
> Change-Id: I40000e30df7a495a0937885abea19caeb599e00a
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176378
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Per Åhgren <peah@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31411}

TBR=mbonadei@webrtc.org,peah@webrtc.org

Change-Id: Id8149889fddf96276cc15f37686ef9d1190c5c94
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: b/155316201
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176420
Reviewed-by: Alex Glaznev <glaznev@webrtc.org>
Commit-Queue: Alex Glaznev <glaznev@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31413}
2020-06-02 22:28:07 +00:00
3c9ae1fd8f Adds fix for closing a prenegotiated DC without sending data.
Also adds tests.

Bug: webrtc:11628
Change-Id: If29cdcdf055a95c488b3db4387d29f6f958bf9a3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176326
Reviewed-by: Taylor <deadbeef@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31412}
2020-06-02 18:06:50 +00:00
a6c70741e7 Change to using the new Ooura constructor
Bug: b/155316201
Change-Id: I40000e30df7a495a0937885abea19caeb599e00a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176378
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31411}
2020-06-02 14:38:58 +00:00
4b1ab57283 Add av1 test with spatial scalability.
Bug: webrtc:11404
Change-Id: I6faa72a86d6f48b21b1e1cd6c2a1d748e168d018
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176366
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31410}
2020-06-02 13:27:57 +00:00
0f0aa9c7a8 [Adaptation] Move IsAdaptationUpAllowed/OnAdaptationApplied out of API.
IsAdaptationUpAllowed is moved from Resource to AdaptationConstraint.
OnAdaptationApplied is moved from Resource to AdaptationListener.

In a future CL, Resource will be moved to api/, but
AdaptationConstraint and AdaptationListener will stay in call/.

The processor, encode stream and manager are updated to keep track of
both resources, constraints and listeners. Fakes and tests are updated.
After this CL, the manager's inner classes that prevent adaptation
implement AdaptationConstraint instead of Resource.

Bug: webrtc:11525
Change-Id: Ie9cd5b1ba7d8e161951e131ab8f6bd9d5cf765bf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176368
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@google.com>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31409}
2020-06-02 13:02:36 +00:00
a0cf1eabb7 Add peah as OWNER to common_audio
Bug: None
Change-Id: I34eafa9b5da3d7c0b64f426eebd2f3494f2f7e2c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176375
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31408}
2020-06-02 11:59:28 +00:00
913ea5d98b Reland "Add trace of enqueued and sent RTP packets"
This reverts commit 45bb717a2866c2d836b5332a24af0d09f2b30714.

Reason for revert: Use #if RTC_TRACE_EVENTS_ENABLED to avoid unused variable.

Original change's description:
> Revert "Add trace of enqueued and sent RTP packets"
> 
> This reverts commit 45b9192ad981dcdc12ad4aef087fff2195bd030c.
> 
> Reason for revert: When tracing is disabled, this results in a clang warning (unused variable), which results in a build error since Werror is enabled by default.
> 
> Original change's description:
> > Add trace of enqueued and sent RTP packets
> > 
> > This is useful in debugging the latency from a packet
> > is enqueued until it's sent.
> > 
> > Bug: webrtc:11617
> > Change-Id: Ic2f194334a2e178de221df3a0838481035bb3505
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176231
> > Reviewed-by: Erik Språng <sprang@webrtc.org>
> > Commit-Queue: Johannes Kron <kron@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#31381}
> 
> TBR=sprang@webrtc.org,kron@webrtc.org
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: webrtc:11617
> Change-Id: I854c17e587c624691a0e5e3ec9fd38c2607eda84
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176380
> Commit-Queue: Casey Fischer <caseyfischer@google.com>
> Reviewed-by: Adam Nathan <adamnathan@google.com>
> Cr-Commit-Position: refs/heads/master@{#31399}

TBR=sprang@webrtc.org,yujo@chromium.org,adamnathan@google.com,kron@webrtc.org,caseyfischer@google.com

# Not skipping CQ checks because this is a reland.

Bug: webrtc:11617
Change-Id: I9de7f7ed290481a51c161a693f5b2d5df7d2eae3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176367
Commit-Queue: Johannes Kron <kron@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31407}
2020-06-02 11:40:18 +00:00
3e3c4d8451 Updating the Ooura FFT to take SSE2 usage specification in the ctor
Bug: b/155316201
Change-Id: I79a5857da1eed49150509684c0f8b3d94e4e40c2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176373
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31406}
2020-06-02 11:38:20 +00:00
6958d2c6f0 Revert "Add av1 test running real video clips."
This reverts commit 3a2be87b80759a659901776024609de7a19fbaca.

Reason for revert: break internal test

Original change's description:
> Add av1 test running real video clips.
> 
> Bug: None
> Change-Id: I93bb8b3bf15d607d061aa74ad9e34609ffb2ef0a
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/175821
> Commit-Queue: Jerome Jiang <jianj@google.com>
> Commit-Queue: Stefan Holmer <holmer@google.com>
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31401}

TBR=danilchap@webrtc.org,jianj@google.com,stefan@webrtc.org,holmer@google.com,marpan@webrtc.org

Change-Id: I2689ab4f7f26af6e26a4a188a2aa0b4f90a1a92f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176374
Reviewed-by: Ying Wang <yinwa@webrtc.org>
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31405}
2020-06-02 10:40:38 +00:00
3bd1c1858f Cleanup: Remove non-required helper function to remove codecs
The "data codecs" list is not used when SCTP is in use, so it's
unnecessary to remove the RTP codec from it.

Followup from https://webrtc-review.googlesource.com/c/src/+/176327

Bug: none
Change-Id: Ie2787ba7e3030214dd7130faa0bb9cf8b8e66a99
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176369
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31404}
2020-06-02 10:35:35 +00:00
16038abb90 FrameForwarder: remove lock recursions.
This change removes lock recursions and adds thread annotations.

Bug: webrtc:11567
Change-Id: I5416cfc8e482bd966eec87c3790abbebc37a84d8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176224
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31403}
2020-06-02 09:41:54 +00:00
5cc28b0c6a [Adaptation] Prep Resource for api/ move. Introduce VSE-Resource.
This CL is in preparation for moving Resource to the api/ folder. It
does not move it, but makes it such that the moving CL can be a pure
move.

In order to do this, we must stop depending on rtc_base/rtc::TaskQueue
in favor of api/webrtc::TaskQueueBase.

There are also other rtc_base/ dependencies that we do not want to
expose to the api/ folder, like critical sections and thread
annotations which are not publically exposed. To get around this, we
make Resource an abstract interface and move all of the base class
functionality into a new non-api/ class: VideoStreamEncoderResource.

The Resource now has Register/UnregisterAdaptationTaskQueue() methods.
By explicitly unregistering, we can ensure validity of the pointer even
if the Resource outlives the PeerConnection. While public interface
methods are only to be called on the adaptation task queue, posting to
the task queue happens off-queue, so a |lock_| is introduced to guard
it.

Bug: webrtc:11525
Change-Id: I50b3a30960cdec9032016c779b47001c01dad32f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176320
Reviewed-by: Evan Shrubsole <eshr@google.com>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31402}
2020-06-02 07:56:38 +00:00
3a2be87b80 Add av1 test running real video clips.
Bug: None
Change-Id: I93bb8b3bf15d607d061aa74ad9e34609ffb2ef0a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/175821
Commit-Queue: Jerome Jiang <jianj@google.com>
Commit-Queue: Stefan Holmer <holmer@google.com>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31401}
2020-06-02 07:36:20 +00:00
a0f5e475c5 Move kUsedBufferSize to header
Bug: webrtc:11633
Change-Id: I14e5bf8b48dc0d0f6faef68458b06cf760f33904
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176365
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31400}
2020-06-01 21:16:42 +00:00
45bb717a28 Revert "Add trace of enqueued and sent RTP packets"
This reverts commit 45b9192ad981dcdc12ad4aef087fff2195bd030c.

Reason for revert: When tracing is disabled, this results in a clang warning (unused variable), which results in a build error since Werror is enabled by default.

Original change's description:
> Add trace of enqueued and sent RTP packets
> 
> This is useful in debugging the latency from a packet
> is enqueued until it's sent.
> 
> Bug: webrtc:11617
> Change-Id: Ic2f194334a2e178de221df3a0838481035bb3505
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176231
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31381}

TBR=sprang@webrtc.org,kron@webrtc.org

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

Bug: webrtc:11617
Change-Id: I854c17e587c624691a0e5e3ec9fd38c2607eda84
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176380
Commit-Queue: Casey Fischer <caseyfischer@google.com>
Reviewed-by: Adam Nathan <adamnathan@google.com>
Cr-Commit-Position: refs/heads/master@{#31399}
2020-06-01 20:55:42 +00:00