Commit Graph

30104 Commits

Author SHA1 Message Date
69679598e7 Hide Av1 specfic logic from RtpVideoReceiver into depacketizer interface.
Bug: None
Change-Id: I0498d9e82cbc876d54bebc7f3265e3ae6da61614
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171062
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30872}
2020-03-24 15:55:00 +00:00
30853ae748 Add new people to api/OWNERS
Bug: None
Notry: True
Change-Id: Ic80efbec92ba9545ce4905abe3fb33f145d5b0c1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171504
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30871}
2020-03-24 15:14:09 +00:00
52dd621a92 libvpx-vp8: Add external configurability of resolution/bitrate limits.
Bug: webrtc:11436
Change-Id: Iae34caf579e0931344c1b8706c7e561a5410c170
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171112
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30870}
2020-03-24 13:32:59 +00:00
f45ca3787f [Stats] Explicit RTP-RTX and RTP-FEC mappings. Unblocks simulcast stats.
--- Background ---
The webrtc::VideoSendStream::StreamStats are converted into
VideoSenderInfo objects which turn into "outbound-rtp" stats objects in
getStats() (or "ssrc" objects in legacy getStats()).

StreamStats are created for each type of substream: RTP media streams,
RTX streams and FlexFEC streams - each with individual packet counters.

The RTX stream is responsible for retransmissions of a referenced media
stream and the FlexFEC stream is responsible for FEC of a referenced
media stream. RTX/FEC streams do not show up as separate objects in
getStats(). Only the media streams become "outbound-rtp" objects, but
their packet and byte counters have to include the RTX and FEC counters.

--- Overview of this CL ---
This CL adds MergeInfoAboutOutboundRtpSubstreams(). It takes
StreamStats of all kinds as input, and outputs media-only StreamStats
- incorporating the RTX and FEC counters into the relevant media
StreamStats.

The merged StreamStats objects is a smaller set of objects than the
non-merged counterparts, but when aggregating all packet counters
together we end up with exact same packet and count as before.

Because WebRtcVideoSendStream::GetVideoSenderInfo() currently aggregates
the StreamStats into a single VideoSenderInfo (single "outbound-rtp"),
this CL should not have any observable side-effects. Prior to this CL:
aggregate StreamStats. After this CL: merge StreamStats and then
aggregate them.

However, when simulcast stats are implemented (WIP CL:
https://webrtc-review.googlesource.com/c/src/+/168120) each RTP media
stream should turn into an individual "outbound-rtp" object. We will
then no longer aggregate all StreamStats into a single "info". This CL
unblocks simulcast stats by providing StreamStats objects that could be
turned into individual VideoSenderInfos.

--- The Changes ---
1. Methods added to RtpConfig to be able to easily tell the relationship
   between RTP, RTX and FEC ssrcs.
2. StreamStats gets a StreamType (kMedia, kRtx or kFlexfec) that
   replaces the booleans (is_rtx, is_flexfec).
3. "referenced_media_ssrc" is added to StreamStats, making it possible
   to tell which kRtx/kFlexFec stream stats need to be merged with which
   kMedia StreamStats.
4. MergeInfoAboutOutboundRtpSubstreams() added and used.

Bug: webrtc:11439
Change-Id: Iaf9002041169a054ddfd32c7ea06bd1dc36c6bca
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170826
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30869}
2020-03-24 13:31:54 +00:00
536c395391 Roll chromium_revision 44a02af800..c145d4805f (752695:752799)
Change log: 44a02af800..c145d4805f
Full diff: 44a02af800..c145d4805f

Changed dependencies
* src/base: cb480bbfce..32ccf425fa
* src/build: b93598bb32..8d56e63759
* src/ios: 840c22522e..ac693a241c
* src/testing: 61dc06d28b..7dd30f951a
* src/third_party: 6a67bf3bab..8f0649bced
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/85201b613e..341e229c3d
* src/third_party/depot_tools: ae3586b538..8f41598abf
* src/tools: c46df42343..58560b651b
DEPS diff: 44a02af800..c145d4805f/DEPS

Clang version changed 5d881dd8a8b8ea6f80bf4ef5b900ca006dacd9bf:a1762f9ceb9549b781b7418c7dbe23fe620648f6
Details: 44a02af800..c145d4805f/tools/clang/scripts/update.py

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

Change-Id: I2a8d512398fe831167852e986eb6a2bb16af88d6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171543
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@{#30868}
2020-03-24 12:49:07 +00:00
a4c4425748 Restore setting encoder speed for AV1 encoder wrapper
Also add simple unittests for the wrapper.

Bug: webrtc:11404
Change-Id: I41d185da9bce392297d1982194c059bddb7881ac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171481
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30867}
2020-03-24 12:34:27 +00:00
01611ed3ac Fix potential divide by zero in SimulcastEncoderAdapter
Bug: webrtc:11453
Change-Id: I4119955d7a3cdc4099b8f0ab013e5e33ec38715f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171511
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30866}
2020-03-24 12:29:05 +00:00
5b6a4d8908 Only print route if it has changed
This is a follow up change to https://webrtc-review.googlesource.com/c/src/+/170628
and modifies code to only LOG if the route really has changed.

Existing code will LOG like this, which is slightly annoying. Notice that the same route change is LOG:ed twice.
03-23 13:28:49.281 17986 18850 I rtp_transport_controller_send.cc: [1183:590] [18850] (line 253): Network route changed on transport audio: new_route = [ connected: 1 local: [ 2/4 Wifi turn: 0 ] remote: [ 2/3 Wifi turn: 0 ] packet_overhead_bytes: 32 ]
03-23 13:28:49.281 17986 18850 I rtp_transport_controller_send.cc: [1183:590] [18850] (line 278): old_route = [ connected: 1 local: [ 2/4 Wifi turn: 1 ] remote: [ 2/3 Wifi turn: 0 ] packet_overhead_bytes: 28 ]
03-23 13:28:49.281 17986 18850 I rtp_transport_controller_send.cc: [1183:591] [18850] (line 253): Network route changed on transport audio: new_route = [ connected: 1 local: [ 2/4 Wifi turn: 0 ] remote: [ 2/3 Wifi turn: 0 ] packet_overhead_bytes: 32 ]
03-23 13:28:49.282 17986 18850 I rtp_transport_controller_send.cc: [1183:591] [18850] (line 278): old_route = [ connected: 1 local: [ 2/4 Wifi turn: 0 ] remote: [ 2/3 Wifi turn: 0 ] packet_overhead_bytes: 32 ]

The way this method is called twice with same argument is out of scope
for this change.

BUG: webrtc:11434
Change-Id: I052d089c59714513a09cbaed49f24c8f1300af58
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171460
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30865}
2020-03-24 11:48:42 +00:00
865a22d6bb in RtpVideoStreamReceiver tests set payload type for all tests packets
In preparation for a change that rely on payload type beeing present.

As side effect, fix test related to RED payload type.

Bug: None
Change-Id: I42f8460fbec578184da058c1f6b9620d497d576b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171508
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30864}
2020-03-24 11:19:02 +00:00
f05af9e0fc Revert "Remove bitratePriority from the Obj-C RTCRtpEncodingParameters wrapper."
This reverts commit 86e0ea5711cfef95960ffcc8b6d918c67576e5c9.

Reason for revert: The reasons for removing bitratePriority are unclear. Aside from the fact that you can't yet use it for the relative bitrate of simulcast streams, only the relative bitrate of entire tracks, it's working as intended. It differs from the standard, but only in that it's more flexible; the web standard only allows values of 0.5, 1.0, 2.0, and 4.0 while for the native API we allow any ratio.

Original change's description:
> Remove bitratePriority from the Obj-C RTCRtpEncodingParameters wrapper.
> 
> This was added in CL 135122, but the bitratePriority parameter is not
> standard and not implemented in a way users would expect. So it should
> actually not be exposed in the Obj-C SDK.
> 
> Bug: webrtc:10438
> Change-Id: I801ce940a32701d2703e951ef2b601c606aa2111
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/135287
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Commit-Queue: Anders Carlsson <andersc@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#27861}

TBR=andersc@webrtc.org,kthelgason@webrtc.org

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

Bug: webrtc:10438
Change-Id: Ibc16b6054a1583de43a868d98683ea114bd89435
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171140
Reviewed-by: Taylor <deadbeef@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30863}
2020-03-24 10:48:26 +00:00
aec63e0715 Roll chromium_revision 8bddf9e47e..44a02af800 (752565:752695)
Change log: 8bddf9e47e..44a02af800
Full diff: 8bddf9e47e..44a02af800

Changed dependencies
* src/base: 0ce8e23c7c..cb480bbfce
* src/build: 4357a9790e..b93598bb32
* src/ios: 1ee5f2acda..840c22522e
* src/testing: d4f9a2208f..61dc06d28b
* src/third_party: b848dd13ba..6a67bf3bab
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1dea10da0a..85201b613e
* src/third_party/depot_tools: 01ed358917..ae3586b538
* src/tools: cdb3c9d74a..c46df42343
DEPS diff: 8bddf9e47e..44a02af800/DEPS

No update to Clang.

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

Change-Id: Ie479a90b01ffe0272a7cbd46b49072be5a38f937
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171542
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@{#30862}
2020-03-24 10:47:21 +00:00
e3a294c2d6 Expose bitrate_priority and network_priority in Android API.
BUG=webrtc:5658

Change-Id: Ie4fcad0a379bed17c41efffde044fa51f51a14b1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168360
Commit-Queue: Taylor <deadbeef@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30861}
2020-03-24 00:10:56 +00:00
ea6ae4a323 Add calculation of actual encode bitrate into DefaultVideoQualityAnalyzer
Bug: webrtc:11381
Change-Id: Ic636412fef5e4134f47974fe24a24d8c7636bcdd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171107
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30860}
2020-03-23 22:11:14 +00:00
06a4dd6209 Roll chromium_revision 2a41e24b46..8bddf9e47e (751948:752565)
Change log: 2a41e24b46..8bddf9e47e
Full diff: 2a41e24b46..8bddf9e47e

Changed dependencies
* src/base: 8bd950b78c..0ce8e23c7c
* src/build: 9aed1900e0..4357a9790e
* src/buildtools: 4164a30562..7977eb1767
* src/buildtools/linux64: git_revision:9499562d94bf142f43d03622492e67b217461f67..git_revision:5ed3c9cc67b090d5e311e4bd2aba072173e82db9
* src/buildtools/mac: git_revision:9499562d94bf142f43d03622492e67b217461f67..git_revision:5ed3c9cc67b090d5e311e4bd2aba072173e82db9
* src/buildtools/win: git_revision:9499562d94bf142f43d03622492e67b217461f67..git_revision:5ed3c9cc67b090d5e311e4bd2aba072173e82db9
* src/ios: 62c7a5ec75..1ee5f2acda
* src/testing: 15d2f7b647..d4f9a2208f
* src/third_party: 76d4817dee..b848dd13ba
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/1e859054c3..5298ef99bf
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/df670f0bed..1dea10da0a
* src/third_party/depot_tools: 464e9ff4f3..01ed358917
* src/third_party/ffmpeg: d2350e1645..31886e8f39
* src/third_party/freetype/src: 6a431038c9..13c0df80dc
* src/third_party/usrsctp/usrsctplib: a68325e7d9..bee946a606
* src/tools: 59917a0548..cdb3c9d74a
Added dependencies
* src/third_party/android_deps/libs/androidx_test_espresso_espresso_core
* src/third_party/android_deps/libs/com_squareup_javawriter
* src/third_party/android_deps/libs/androidx_test_espresso_espresso_idling_resource
DEPS diff: 2a41e24b46..8bddf9e47e/DEPS

No update to Clang.

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

Change-Id: I007e77c8868ebe3e80f201a52ddfa115f3f21f57
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171520
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@{#30859}
2020-03-23 21:58:00 +00:00
f1df04b094 Fix -Wunreachable-code on Linux.
Starting from [1] the toolchain has started to enforce
-Wunreachable-code on Linux, this CL fixes the issues that are preventing
the Chromium roll into WebRTC.

Error example at [2].

[1] - https://chromium-review.googlesource.com/c/chromium/src/+/2093537
[2] - https://ci.chromium.org/p/webrtc/builders/try/linux_rel/34282?

Bug: webrtc:11448
Change-Id: I96e8901ae80c44d69143ed8d972e250b6b926a7d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171500
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30858}
2020-03-23 20:51:37 +00:00
2028a772df Remove RtpPacketSendInfo.has_rtp_sequence_number
As far as I can tell, every call site already populates this field, so
we can now remove it.

Bug: webrtc:8975
Change-Id: I58515dd16d4ad8bf8872077b67a67f6e92e7b542
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171222
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30857}
2020-03-23 18:34:43 +00:00
7eab0a820f Split RMS level measurement utility from APM
This moves rms_level.* into a separate build target.

Bug: webrtc:11226
Change-Id: I94ceacd1ec65dda48f5d19b22ba2625d13543e08
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170323
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30856}
2020-03-23 16:54:22 +00:00
8d1f72852e [VP9 decoder] react to incorrect pixel format in the bitstream
Bug: chromium:1063490
Change-Id: Ibac3b43b42c1b088b6ac94ae327f23b11d3fd259
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171225
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30855}
2020-03-23 11:29:08 +00:00
4c0921129d Use real video duration instead of test duration.
Use real video duration instead of test duration to calculate harmonic
frame rate in DefaultVideoQualityAnalyzer.

Bug: webrtc:11445
Change-Id: Ia5f96b2f87178419ec6ebe2ff5dbcb5a0c03c824
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171104
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30854}
2020-03-23 10:13:54 +00:00
c32c5dd61e Add terelius as OWNER in call/
BUG: None
Change-Id: Ib9ad583ae2dfa694114447a648b281a049ed4b59
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171223
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30853}
2020-03-23 09:55:34 +00:00
ab835fe86e Fix bad frees in error paths of WebRtcAecm_Create
The error paths free the memory referenced by each pointer in the
struct, but if the pointers are not initialized, random memory belonging
to other parts of the program could be freed instead. Zero out the
entire struct as soon as it is allocated to ensure that nothing is freed
if there is nothing to free.

Bug: webrtc:11446
Change-Id: I8a2985d1388477339351aa03107ee68925372d49
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171121
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30852}
2020-03-21 23:01:47 +00:00
8515d5a4ab Refactor ssl_stream_adapter API to show object ownership
Backwards compatible overloads are provided.

Bug: none
Change-Id: I065ad6b269fe074745f9debf68862ff70fd09628
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170637
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30851}
2020-03-21 18:53:46 +00:00
e7175c9a09 Ensured that all files in APM are using the webrtc namespace
This CL adds namespaces to those files remaining within APM that do not
have any such.

BUG=webrtc:5298

Change-Id: I710b3d2a3644bea9d4bdffef0d77883b30303338
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171111
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30850}
2020-03-20 17:33:28 +00:00
be36db1024 AECM: Added namespaces
This CL adds namespaces to AECM.

Bug: webrtc:5298
Change-Id: Ibb124ef9eb46c4bd762847b6763b37a6eeb85433
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171105
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30849}
2020-03-20 17:07:18 +00:00
71fda3613c Extend NetworkRoute with more info about local/remote endpoints
This patch extends the NetworkRoute struct with more information
about local/remote endpoints. It adds
- adapter type
- adapter id
- relay

(previously it was "only" network_id)

The patch leaves the {local/remote}_network_id fields
around and populated since downstream projects depend
on them. They will be removed once they have migrated.

OWNER: srte@ call/ test/
OWNER: asapersson@ video/
OWNER: hta@ p2p/ pc/ rtc_base/

BUG: webrtc:11434
Change-Id: I9bcec385b40d707db385fef40b2c7a315dd35dd0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170628
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30848}
2020-03-20 16:55:38 +00:00
5b139d6f9b APM: Change the AGC C code to be built as C++ code
This CL changes so that the AGC legacy C code is built as C++.

The CL also
-removes #defines from the header files.
-adds namespaces
-removes unused code.

To simplify the review, the CL is partitioned into different patchsets
where each comprising of one step in the modification of the code
(e.g., patch set 1 performs the renaming of the .c files to .cc).

Bug: webrtc:5298
Change-Id: I362b17bde91142b2f2166acba4f2f888efd50fa1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171064
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30847}
2020-03-20 16:08:25 +00:00
9d66198d35 AEC3: Rename shadow filter
This CL renames the shadow filter in AEC3 to have the more accurate name
coarse filter.

The CL consists of 3 main initial patch sets, designed to simplify
the review:
1) Replaces "shadow" with "coarse" and adds a fall-back functionality
to support the old filter naming.
2) Renames the files according to the new naming.
3) Performs a "git cl format"

Bug: webrtc:8671
Change-Id: I28d6041d0d34e85f8f8048d004b44a1a5f07bb07
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170981
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30846}
2020-03-20 15:26:14 +00:00
dfeb0dff73 RtpParameters: respect https://abseil.io/tips/1.
This CL replaces a few usages of const std::string& with
absl::string_view, to comply closer with
https://abseil.io/tips/1.

Bug: webrtc:11428
Change-Id: Ibf6fac9b084cb21e17db63f73d667793ab9cafeb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170466
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30845}
2020-03-20 14:27:02 +00:00
f4306ebfea In PacketBuffer simplify stored buffer.
Bug: None
Change-Id: Iddcde9d2ab25d2fb7091c9ed8104138293fd9dee
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168044
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30844}
2020-03-20 13:32:32 +00:00
ff0451117e AEC3: Rename main filter
This CL renames the main filter in AEC3 to have the more accurate name
refined filter.

The CL consists of 3 main initial patch sets, designed to simplify
the review:
1) Replaces "main" with "refined" and adds a fall-back functionality
to support the old filter naming.
2) Renames the files according to the new naming.
3) Performs a "git cl format"

Bug: webrtc:8671
Change-Id: Ifd0aab34e291736a2250e0986348404618630b1d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170825
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30843}
2020-03-20 13:25:01 +00:00
976cc1ae19 Add AV1 encoder wrapper
Bug: webrtc:11404
Change-Id: Ibd5ded873c397bb91675a7e29591edab3c41f182
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170360
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Michael Horowitz <mhoro@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30842}
2020-03-20 12:20:06 +00:00
e1b7af9f94 Changed fft4g to be built as C++
This CL changes so that the fft4g code is built as C++.

The CL also
-adds namespaces
-removes unused code.

To simplify the review, the CL is partitioned into different patchsets
where each comprising of one step in the modification of the code
(e.g., patch set 1 performs the renaming of the .c files to .cc).

Bug: webrtc:5298
Change-Id: I1dba78cc07c48622888be7b6f49a506795bc22ed
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171100
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30841}
2020-03-20 12:10:16 +00:00
0a1e65e9be Add empty placeholder target for rms_level.*
A follow-up CL will move the rms_level.* files into the new target.

Bug: webrtc:11226
Change-Id: I59579b026346f627c0a2739d25f90c12bffbf248
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171102
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30840}
2020-03-20 12:06:56 +00:00
2e6bd28381 libvpx-vp8: Add settings struct to constructor.
Migrate the injectable Vp8FrameBufferControllerFactory
into a settings struct, allowing for straight-forward
future extensions.

Bug: webrtc:11436
Change-Id: I53e555eb6ef88cf5b10ee8a43abd6ef9c930d100
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170635
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30839}
2020-03-20 11:35:46 +00:00
835dde17a0 Roll chromium_revision 578730be19..2a41e24b46 (751777:751948)
Change log: 578730be19..2a41e24b46
Full diff: 578730be19..2a41e24b46

Changed dependencies
* src/base: 56914b3317..8bd950b78c
* src/build: b6645c6cab..9aed1900e0
* src/ios: 4821615478..62c7a5ec75
* src/testing: 355a52efb2..15d2f7b647
* src/third_party: 1e985f4aec..76d4817dee
* src/tools: 9eda897f6b..59917a0548
DEPS diff: 578730be19..2a41e24b46/DEPS

Clang version changed 9284abd0040afecfd619dbcf1b244a8b533291c9:5d881dd8a8b8ea6f80bf4ef5b900ca006dacd9bf
Details: 578730be19..2a41e24b46/tools/clang/scripts/update.py

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

Change-Id: I8106ffe4f2ad55f7bed147389770a1afbe176488
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171124
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@{#30838}
2020-03-20 08:32:47 +00:00
005d0fff3b Roll chromium_revision 4b28405bd2..578730be19 (751644:751777)
Change log: 4b28405bd2..578730be19
Full diff: 4b28405bd2..578730be19

Changed dependencies
* src/base: c66ef0215c..56914b3317
* src/build: aace899b3e..b6645c6cab
* src/ios: bebc30f797..4821615478
* src/testing: a86a1d5f49..355a52efb2
* src/third_party: cddf27792e..1e985f4aec
* src/tools: 03c62dfaa7..9eda897f6b
DEPS diff: 4b28405bd2..578730be19/DEPS

No update to Clang.

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

Change-Id: I725fa7c991ebadf3c5c1785dfb8f7cbca992772f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171080
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@{#30837}
2020-03-19 20:39:19 +00:00
b52f7fb593 [DirectX] Fix vector allocation for raw data handling.
std::vector::reserve has the effect to reserve space in memory but does
not affect the result of size(), which keeps on returning 0. If size is
0, however, data() might either return null or not [1].

This CL fixes the use of reserve() in favour of resize() which
effectively allocates the memory in the vector and updates its size.
This way size() returns a value bigger than 0 and data() returns a valid
pointer.

[1] https://en.cppreference.com/w/cpp/container/vector/data

Fixed: chromium:1059764
Change-Id: Ida3dbe643710c6895f09b9da87b0075b7d7b28df
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170470
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Armando Miraglia <armax@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30836}
2020-03-19 19:12:36 +00:00
9ce14e8c50 libvpx-vp8: Migrate to default member initializations.
Bug: webrtc:11436
Change-Id: I9c7751e63efc51f2bdc3490e014c36e6b35b4b54
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170634
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30835}
2020-03-19 16:43:25 +00:00
45cb8f65ba Drop duplicate VP8 frames in the RtpFrameReferenceFinder.
Bug: webrtc:11431
Change-Id: Ib74c05e7cf12b9a3f60423a268a5d459407fd00b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171060
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30834}
2020-03-19 16:39:24 +00:00
810b4ca386 Move AssembleFrame from PacketBuffer to RtpVideoStreamReceiver
this is a step towards resolving own todo: making AssembleFrame part of
the VideoRtpDepacketizer interface and replacing codec check with a
call to a virtual function.
RtpVideoStreamReceiver has access to the VideoRtpDepacketizers,
PacketBuffer - hasn't.

Bug: None
Change-Id: I83df09975c092bdb71bab270ced356d79a50683d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168056
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30833}
2020-03-19 16:35:14 +00:00
dc5522b4bf APM: Removing the redundant VAD output from the integer API
This CL removes the redundant VAD output from the newly introduced
integer API in AudioProcessing.

Bug: webrtc:5298
Change-Id: Iad2b1b97ada7f4863139655526c110e326c6788a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170824
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30832}
2020-03-19 13:59:00 +00:00
2507f8cdc9 APM: Replace all remaining usage of AudioFrame outside interfaces
This CL replaces all remaining usage of AudioFrame within APM,
with the exception of the AudioProcessing interface.

The main changes are within the unittests.

Bug: webrtc:5298
Change-Id: I219cdd08f81a8679b28d9dd1359a56837945f3d4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170362
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30831}
2020-03-19 12:40:18 +00:00
ef5c8241e2 Roll chromium_revision d69529f528..4b28405bd2 (751530:751644)
Change log: d69529f528..4b28405bd2
Full diff: d69529f528..4b28405bd2

Changed dependencies
* src/base: 798fbb5441..c66ef0215c
* src/build: 9b1394c743..aace899b3e
* src/ios: 4d75b42965..bebc30f797
* src/testing: 072f33069c..a86a1d5f49
* src/third_party: ce1887c35a..cddf27792e
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/42d02fb84d..df670f0bed
* src/third_party/depot_tools: 5a644f8276..464e9ff4f3
* src/tools: 5e25c441ac..03c62dfaa7
DEPS diff: d69529f528..4b28405bd2/DEPS

No update to Clang.

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

Change-Id: I6fbdebb2e2b7d6323bdb36eec2a3c418bb8c178e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171020
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@{#30830}
2020-03-19 11:09:28 +00:00
088329fe2a Correct the storing of the processed output in aecdumps
This CL corrects an issue in the storing of the processed capture output
into aecdump recordings for the case when the integer API interface is
used.


Bug: webrtc:11441
Change-Id: I24aad47b5d62e0738d412ec270ad1db3a76aa94f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170823
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30829}
2020-03-19 10:08:36 +00:00
e58ebfd933 Android: Synchronize EGL14.eglDestroyContext calls
Bug: b/151705621
Change-Id: Iba0c5775a4bec66034484466da45de795b5ee1eb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170822
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30828}
2020-03-19 09:47:16 +00:00
3428827c40 Write pb perf output files on iOS.
Bug: chromium:1029452
Change-Id: I8cc44630109292b9ad1ab7d03b34c2c5e1b953fd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170980
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30827}
2020-03-19 08:58:57 +00:00
e55f0c3384 Fix mb.py when using isolate archive
This fix is the same as https://crrev.com/c/2105272

Bug: chromium:1062881
Change-Id: Idb24551f4c26100b6983611ca486c0972dca70a6
Reviewers: mbonadei@webrtc.org,  tikuta@chromium.org, dpranke@chromium.org
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170960
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Ye Kuang <yekuang@google.com>
Cr-Commit-Position: refs/heads/master@{#30826}
2020-03-19 08:49:57 +00:00
93bcaae445 Roll chromium_revision 1386d9f59d..d69529f528 (751294:751530)
Change log: 1386d9f59d..d69529f528
Full diff: 1386d9f59d..d69529f528

Changed dependencies
* src/base: 71a22b0ca3..798fbb5441
* src/build: 44de6a6747..9b1394c743
* src/ios: 47984241c1..4d75b42965
* src/testing: b44a8e82ff..072f33069c
* src/third_party: 4459f0bf96..ce1887c35a
* src/third_party/depot_tools: a30b7bd35b..5a644f8276
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/f83d681765..c25910f6d2
* src/third_party/proguard: 3bd778c422ea5496de2ef25c007a517dbb5ce5ca..Fd91BJFVlmiO6c46YMTsdy7n2f5Sk2hVVGlzPLvqZPsC
* src/tools: e7de46cbe0..5e25c441ac
DEPS diff: 1386d9f59d..d69529f528/DEPS

No update to Clang.

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

Change-Id: Idcb1976bebb1854342e698d6826a9c3946413c1c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170880
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@{#30825}
2020-03-19 00:57:05 +00:00
d9ebe01540 Improve rollback for rtp data channel
Bug: chromium:1057333
Change-Id: I4df21bc183a8df398033ebf29a8407bacf873fac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170621
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Eldar Rello <elrello@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#30824}
2020-03-18 21:03:20 +00:00
560e87aa81 Reenable libaom decoder by default
Bug: webrtc:11404
Change-Id: I165ce3b88d35b58b3f878246c77ab48c36cc9ddc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170636
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30823}
2020-03-18 18:04:41 +00:00