4174 Commits

Author SHA1 Message Date
Magnus Flodman
55afe3885b Search and replace gendered terms according to style guide:
https://chromium.googlesource.com/chromium/src/+/master/styleguide/inclusive_code.md#tools

Not changin the transcipt in
resources/audio_processing/conversational_speech/README.md

BUG=webrtc:11680

Change-Id: I36af34e4a4e0ec6161093c0045b7bbe1dbe4eb45
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177016
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31514}
2020-06-12 14:12:54 +00:00
Erik Språng
26e5046951 Adjusts allowable thread count for vp9 decoders.
Set 2 thread as target for 1280x720 pixel count, and then scale up
linearly from there - but cap at physical core count.
For common resolutions this results in:
1 for 360p
2 for 720p
4 for 1080p
8 for 1440p
18 for 4K

Bug: webrtc:11551
Change-Id: I666bd971eccddee096749f20d3b08eb40fe868ad
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177012
Reviewed-by: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31513}
2020-06-12 13:52:19 +00:00
Danil Chapovalov
222fdfdace in AV1 Encoder remove hack of removing temporal delimiter OBU
Bug: webrtc:11174
Change-Id: I70e3ab1af92562b44f974aa415e0215e06fcf1cd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177009
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31512}
2020-06-12 12:42:09 +00:00
Johannes Kron
7ff6355b88 Add decoder support for VP9 profile 1 I444
libvpx already supports VP9 profile 1. Add code to enable SDP negotiation of receiving VP9 profile 1.

Bug: webrtc:11555
Change-Id: I35d12d159a1414aac744f202331d3a9c4a84f5af
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176322
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31509}
2020-06-12 05:17:24 +00:00
Dan Minor
b64ecd9960 Check V4L2_CAP_VIDEO_CAPTURE when enumerating capture devices on Linux
The side effect of not filtering on V4L2_CAP_VIDEO_CAPTURE is that
every device is enumerated twice. Because we look up devices by name,
and the device that supports V4L2_CAP_VIDEO_CAPTURE seems to always
appear first in /dev/video, this does not seem to end up with us ever
choosing an inappropriate device. We might get away with just filtering
device names from the list, but if the order of devices ever changed in
/dev/video there could be problems.

Bug: webrtc:11641
Change-Id: I16fee4edc873838ed4643ee16a8bbc699d6bbcf5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176460
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Dan Minor <dminor@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31508}
2020-06-11 19:58:49 +00:00
Erik Språng
d592575698 VP9 decoder: Sets thread count based on resolution, reinit on change.
Previously, number of decoder threads for VP9 were always set to 8 but
with a cap at number of cores. This was done since we "can't know" the
resolution that will be used.

With this change, we now intialize the number of threads based on
resolution given in InitDecode(). If a resolution change happens in
flight, it requires a keyframe. We therefore parse the header from
any key frame and if it has a new resolution, we re-initialize the
decoder.

The number of threads used is based on pixel count. We set one thread
as target for 1280x720, and scale up lineraly from there. The 8-thread
cap is gone, but still limit it core count.

This means for instance: 1 <= 720p, 2 for 1080p, 4 for 1440p, 9 for 4K.

Bug: webrtc:11551
Change-Id: I14c169a6c651c50bd1b870c4b22bc4495c8448fd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/174460
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31507}
2020-06-11 17:43:27 +00:00
Ilya Nikolaevskiy
2899b3bc3d Allow HVGA Vp9 SVC to have 2 spatial layers and remove excessive rounding
Bug: webrtc:11652
Change-Id: I8bfa91c3115d6ebb17beefbb2a5e51efbbd599e0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177000
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31502}
2020-06-11 13:50:16 +00:00
Danil Chapovalov
24263f4ffb Embed FrameDependencyTemplate builder helpers directly into the struct
Bug: None
Change-Id: I4c13bdabd08dd6a6011cb534c765c1dd09f218d1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176843
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31500}
2020-06-11 13:43:51 +00:00
Jerome Jiang
e366045375 Add implementation name for libaom decoder
Change-Id: I96d07727ef41c7f2ab0e35d89415c5a8ec4393b4
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176940
Reviewed-by: Marco Paniconi <marpan@webrtc.org>
Commit-Queue: Jerome Jiang <jianj@google.com>
Cr-Commit-Position: refs/heads/master@{#31495}
2020-06-11 04:45:42 +00:00
Markus Handell
1e79c9ba9c Migrate modules/pacing to webrtc::Mutex.
Bug: webrtc:11567
Change-Id: I4edded4bdad7c3d0be4c7cfa0d34219d942a467d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176856
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31494}
2020-06-10 20:22:31 +00:00
Henrik Lundin
f7cba9f132 Add field trial and test for NetEq extra delay
Adding field trial WebRTC-Audio-NetEqExtraDelay with a parameter value
to set the extra delay in NetEq. This overrides the
extra_output_delay_ms parameter in NetEq::Config.

Bug: b/156734419
Change-Id: Iae7d439fafa3059494249959ac13a02de63d6b7a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176858
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31493}
2020-06-10 17:37:59 +00:00
Philipp Hancke
0fd1ef135c opus: add helper function to extract voice activity information
BUG=webrtc:11643

Change-Id: I3cebc40916de0e4b0f5e41f5fda97dd53f76e4e3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176740
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31490}
2020-06-10 14:21:01 +00:00
Markus Handell
9cbdd6976a Revert "Migrate modules/pacing to webrtc::Mutex."
This reverts commit 11ae285df916db70158cb9808260ebae1f7db012.

Reason for revert: downstream test failed.

Original change's description:
> Migrate modules/pacing to webrtc::Mutex.
> 
> Bug: webrtc:11567
> Change-Id: I5624d7f2528d584ba92a66e5ae0097ab2e0724d8
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176852
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Commit-Queue: Markus Handell <handellm@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31484}

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

Change-Id: If3b31d8b7b7ba94bc6fffe5a441150cd59252078
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:11567
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176854
Reviewed-by: Markus Handell <handellm@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31486}
2020-06-10 12:13:52 +00:00
Ilya Nikolaevskiy
989229d6fc [VP9 SVC] Cleanup external reference control workaround
Bug: chromium:1027108,webrtc:11319
Change-Id: I4d8bb0858204fa4f911e954e32d51537291db5e2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/175139
Reviewed-by: Evan Shrubsole <eshr@google.com>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31485}
2020-06-10 12:02:50 +00:00
Markus Handell
11ae285df9 Migrate modules/pacing to webrtc::Mutex.
Bug: webrtc:11567
Change-Id: I5624d7f2528d584ba92a66e5ae0097ab2e0724d8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176852
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31484}
2020-06-10 11:58:09 +00:00
Jakob Ivarsson
7649006692 Remove packet loss rate optimization and minimum field trial.
Bug: webrtc:11664
Change-Id: I63fab70e5ae85e2971bed4998ab3b15f61f9e1c0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176752
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31480}
2020-06-10 08:37:30 +00:00
Danil Chapovalov
0e2dd1271e Add av1 structures for 3 spatial and/or 3 temporal layers
Bug: webrtc:11404
Change-Id: I2a2a40202b1dc8bec66baffc8883e59b9be9bade
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176518
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31478}
2020-06-09 14:50:21 +00:00
Tomas Gunnarsson
dffa944e07 Reland "Remove dead code from ModuleRtpRtcpImpl2"
This reverts commit f8311a1aa2887a2f01751424b948a1c20088e773.

Reason for revert: Relanding with a different approach

Original change's description:
> Revert "Remove dead code from ModuleRtpRtcpImpl2"
> 
> This reverts commit 8d4d671e9be98a090921006cc988cc1fc4fe1947.
> 
> Reason for revert: Breaks wasm builds.
> 
> 
> 
> Original change's description:
> > Remove dead code from ModuleRtpRtcpImpl2
> > 
> > Bug: webrtc:11581
> > Change-Id: I70e1df2724801c1bc7fb5cfb52cb6d1d44920b0d
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176570
> > Commit-Queue: Tommi <tommi@webrtc.org>
> > Reviewed-by: Erik Språng <sprang@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#31467}
> 
> TBR=tommi@webrtc.org,sprang@webrtc.org
> 
> Change-Id: I790374f7fa93147824e6fa2779a0bbaf5987924f
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:11581
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176746
> Reviewed-by: Tommi <tommi@webrtc.org>
> Commit-Queue: Tommi <tommi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31468}

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

# Not skipping CQ checks because this is a reland.

Bug: webrtc:11581
Change-Id: I6086548f1c3527ee96ebd1c97be7a5be2a9a5429
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176748
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31475}
2020-06-09 11:22:16 +00:00
Tomas Gunnarsson
6434864c3f Deprecate a few unused methods in RtpRtcpInterface
Bug: none
Change-Id: Ifbf2040f3ce03a1381f6fbf59cb752c7bc2dc1aa
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176571
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31474}
2020-06-09 11:04:59 +00:00
Danil Chapovalov
a48dd43fe1 Add builder setters for ScalableVideoStructure::LayerFrameConfig
Bug: None
Change-Id: I19721f87b9f4641e093dc51f9c023b0493adcf97
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176702
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31473}
2020-06-09 10:31:35 +00:00
Tommi
f8311a1aa2 Revert "Remove dead code from ModuleRtpRtcpImpl2"
This reverts commit 8d4d671e9be98a090921006cc988cc1fc4fe1947.

Reason for revert: Breaks wasm builds.



Original change's description:
> Remove dead code from ModuleRtpRtcpImpl2
> 
> Bug: webrtc:11581
> Change-Id: I70e1df2724801c1bc7fb5cfb52cb6d1d44920b0d
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176570
> Commit-Queue: Tommi <tommi@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31467}

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

Change-Id: I790374f7fa93147824e6fa2779a0bbaf5987924f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:11581
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176746
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31468}
2020-06-09 07:33:08 +00:00
Tomas Gunnarsson
8d4d671e9b Remove dead code from ModuleRtpRtcpImpl2
Bug: webrtc:11581
Change-Id: I70e1df2724801c1bc7fb5cfb52cb6d1d44920b0d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176570
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31467}
2020-06-09 05:41:12 +00:00
Ilya Nikolaevskiy
09eb6e249d [VP9 SVC] Round spatial layers dimensions to ensure integer scaling factors are used
Bug: webrtc:11652
Change-Id: Id3642d607f62b72a567d521d9874b8588c2ce429
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176517
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31465}
2020-06-08 19:00:30 +00:00
Tomas Gunnarsson
9766b890a8 Remove SetRTCPApplicationSpecificData.
Also removing some related code that appears to be unused.
This is a part of simplifying the RtpRtcpInterface implementation.

Bug: webrtc:11581
Change-Id: I580bfdc1b821d571cb7437d7713a49ee4de2d19a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176568
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31464}
2020-06-08 17:16:43 +00:00
Mirko Bonadei
2dcf348011 Use absl_deps in order to preapre to the Abseil component build release.
Bug: webrtc:1046390
Change-Id: Ia35545599de23b1a2c2d8be2d53469af7ac16f1d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176502
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31463}
2020-06-08 12:59:40 +00:00
Danil Chapovalov
4091d34171 Add av1 scalability structures for 2 spatial and 2 temporal layers.
Bug: webrtc:11404
Change-Id: I0a2257b88666a0158a85162974430c2c08d61b40
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176501
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31460}
2020-06-08 10:23:23 +00:00
Tomas Gunnarsson
593e6a4238 Fork RtpSenderEgress.
The forked and deprecated implementation is used by the
deprecated ModuleRtpRtcpImpl implementation.

Change-Id: If67ca1181f40969791cf9c8903c0e49679c86834
Bug: webrtc:11581, webrtc:11611
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176566
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31459}
2020-06-08 08:02:50 +00:00
Markus Handell
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
Tomas Gunnarsson
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
Danil Chapovalov
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
Jerome Jiang
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
Jerome Jiang
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
Jerome Jiang
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
Danil Chapovalov
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
Markus Handell
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
Danil Chapovalov
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
Per Åhgren
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
Tomas Gunnarsson
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
Stephan Hartmann
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
Per Åhgren
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
Alex Glaznev
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
Per Åhgren
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
Danil Chapovalov
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
Johannes Kron
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
Ying Wang
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
Jerome Jiang
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
Casey Fischer
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
Danil Chapovalov
00b172a6fa Add av1 test with temporal scalability.
Bug: webrtc:11404
Change-Id: Iaf2fcca0dd450f7b296bd0250a119b8e7dfef270
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176181
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31397}
2020-06-01 14:28:45 +00:00
Marina Ciocea
f1c5b95e51 Rename worker_queue to send_transport_queue.
worker_queue is used in many places and it can be confusing. This queue
is the send transport's worker queue. Rename to send_transport_queue to
reflect that.

Bug: none
Change-Id: I43c5c4cbddaee3dae1ff75aa38dc3ddee6585902
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176362
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31396}
2020-06-01 13:29:52 +00:00
Mirko Bonadei
9ca7365a8c Deprecate webrtc::NackModule.
This CL moves webrtc::NackModule to a deprecated folder and annotates
the type with RTC_DEPRECATED.

Since the header should not be used outside of WebRTC, this CL doesn't
created a forward header.

Bug: webrtc:11611
Change-Id: I4d5899d473d78b8c7f4a6a018e2805648244b5f1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176360
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31394}
2020-05-30 16:34:44 +00:00