Commit graph

28805 commits

Author SHA1 Message Date
Gustaf Ullberg
8c51f2e9cd AnalyzeReverseStream with StreamConfig
Adding a version of AnalyzeReverseStream with audio parameters
described by StreamConfig. This is part of preparations for
multichannel APM in Chromium.

Bug: webrtc:10913
Change-Id: I7c4650eab8bd7fcdec970a7e4a8fa203f09bed9e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157897
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29573}
2019-10-22 14:27:14 +00:00
Johannes Kron
e76b3abf61 Add per frame decode time histograms for 4k/HD and VP9/H264
Add new histograms
WebRTC.Video.DecodeTimePerFrameInMs.[codec].[resolution].[decoder]
These histograms are more explicit than the existing histogram
WebRTC.VideoDecodTimeMs, since they allow to see performance per
codec/resolution/decoder and also contain per frame statistics instead
of an average decode time.

There's a killswitch, WebRTC-DecodeTimeHistogramsKillSwitch, that can be
used to disable the histograms.

Bug: chromium:1007526
Change-Id: I9f75127b4bc5341e9f406c64ed91164564290b26
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157881
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29572}
2019-10-22 12:34:21 +00:00
Erik Språng
13a8e16247 Cleanup use of deprecated PacketRouter methods
Bug: webrtc:11036
Change-Id: I5131fc9d5d048c691fdb501e0885310664fb9419
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157884
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29571}
2019-10-22 12:30:51 +00:00
Minyue Li
1272dade56 Reduce log level of Opus bitrate.
Bug: None
Change-Id: Iab815dbbc12bf1ca2c1cc87acb0765e2ccade591
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157895
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29570}
2019-10-22 12:02:09 +00:00
Danil Chapovalov
d15a0283d1 Hide deprecated SingleThreadedTaskQueueForTest behind an accessor
this change is intentionally noop.
Goal is to minimize change that would replace the
SingleThreadedTaskQueueForTest with a regular task queue.

Bug: webrtc:10933
Change-Id: I6da768941af048de3716af13e41b8f0f1ccd4cab
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157892
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29569}
2019-10-22 11:57:49 +00:00
Sam Zackrisson
528a03441e Fix fuzzer-found inconsistency in AEC3 config json parsing
Type mismatches will silently fail and skip reading a parameter
in the JSON parsing, except when parsing a size_t from a negative int.

This CL updates the parsing to silently ignore negative values provided
for size_t config parameters, instead of explicitly DCHECKing.

Tested: Ran the fuzzer on the crash test case with + without this fix.

Bug: chromium:1016139
Change-Id: I3899e81e1183aa54b708030efeb6e0006b8cd881
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157894
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29568}
2019-10-22 10:21:53 +00:00
Ilya Nikolaevskiy
5f2fc41fb5 VP9 decoder: replace DCHECK with error message
Bug: chromium:1016160
Change-Id: I0ef0db2b254829e7c0dff24b7a8da3a4056547ac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157890
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29567}
2019-10-22 09:54:19 +00:00
Niels Möller
0855e2d0ed Delete unused members of MediaReceiverInfo and MediaSenderInfo
The deleted members are bytes_sent, bytes_received,
and (receive-side) fraction_lost.

Followup to https://webrtc-review.googlesource.com/c/src/+/143178.

Bug: webrtc:10744, webrtc:10525
Change-Id: Ibd8b15619c78b82a9dc18abddb6e1687fae60c88
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/143902
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29566}
2019-10-22 08:57:56 +00:00
Danil Chapovalov
85a10001a5 Use deprecated SingleThreadedTaskQueueForTesting as regular task queue
Bug: webrtc:10933
Change-Id: I749ecd9cedb6798f1640ce663c6ebb6679889b67
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157883
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29565}
2019-10-22 08:34:57 +00:00
chromium-webrtc-autoroll
b9014fb4bb Roll chromium_revision b528279c97..9b6351c71d (707828:708073)
Change log: b528279c97..9b6351c71d
Full diff: b528279c97..9b6351c71d

Changed dependencies
* src/base: a1875fd77d..bdec6d072b
* src/build: fec0010459..996a3e8661
* src/ios: dfcaa1c95f..ae09c822ec
* src/testing: d9a21bfd44..b5fddaf89e
* src/third_party: 4266812d61..7105cee06d
* src/third_party/depot_tools: a0aed87f71..53f9e0979a
* src/third_party/libjpeg_turbo: 9d3bf3e968..bc13578529
* src/tools: 15a95e934e..370c2cce2c
DEPS diff: b528279c97..9b6351c71d/DEPS

No update to Clang.

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

Change-Id: Id2302e31475cd45864f1b09d028f507367ea19e7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157965
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@{#29564}
2019-10-22 02:38:07 +00:00
Eldar Rello
ead0ec9a20 Add firing of OnRemoveTrack and OnRenegotationNeeded during rollback
Bug: chromium:980875
Change-Id: I71439cea4c79e4a8dae6488404b0c303a9c33a97
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157581
Commit-Queue: Eldar Rello <elrello@microsoft.com>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29563}
2019-10-21 20:47:16 +00:00
chromium-webrtc-autoroll
4b4713db32 Roll chromium_revision 8587b26e98..b528279c97 (707701:707828)
Change log: 8587b26e98..b528279c97
Full diff: 8587b26e98..b528279c97

Changed dependencies
* src/base: e799c83d92..a1875fd77d
* src/build: 7136ae113e..fec0010459
* src/ios: e9f3aac797..dfcaa1c95f
* src/testing: f8d4ac29d7..d9a21bfd44
* src/third_party: f07189d28b..4266812d61
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/a5c8651cfc..03882834cb
* src/third_party/depot_tools: acf922ce48..a0aed87f71
* src/tools: d2ac634da7..15a95e934e
DEPS diff: 8587b26e98..b528279c97/DEPS

No update to Clang.

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

Change-Id: I05b89f0d404ec54ba90dfaa46ba9d94f48485fd7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157961
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@{#29562}
2019-10-21 16:39:20 +00:00
Mirko Bonadei
eef5e4ffc2 Remove dep between test:test_support and rtc_base_approved.
TBR: kwiberg@webrtc.org
Bug: webrtc:9419
Change-Id: I657306ac03cd9cb8add50ca269cf78e431a3ba0e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157580
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29561}
2019-10-21 14:55:47 +00:00
Sergey Silkin
c98ff2eff0 Reset end-of-frame flag in non-VCL packet.
Bug: chromium:999807
Change-Id: I28309d2fda16842e620e499cb9e77ec771827b8c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157160
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29560}
2019-10-21 13:54:31 +00:00
Danil Chapovalov
9cd53b4910 Avoid DEPRECATED_SingleThreadedTaskQueueForTesting::CancelTask in VideoAnalyzer
Bug: webrtc:10933
Change-Id: Iba24100b092df7306ee77f6592ad5469c541099a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157901
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29559}
2019-10-21 12:51:57 +00:00
Danil Chapovalov
e34fb878b9 Clarify NetworkControl interface: result of each function must be used
Bug: None
Change-Id: Iff93513d36ed60d2c1bcbabb4dd5f8716e40d183
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157860
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29558}
2019-10-21 12:35:07 +00:00
Danil Chapovalov
9f5ae7b715 Update call Rampup tests not to rely on DEPRECATED_SingleThreadedTaskQueueForTesting
Bug: webrtc:10933
Change-Id: I24ace9f9c1986b369ead0ddd81d1808edab5a6e7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157880
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29557}
2019-10-21 12:33:27 +00:00
Jakob Ivarsson
42b6e2d9eb Change failing rtc::dchecked_cast to rtc::saturated_cast.
Bug: chromium:1016147
Change-Id: I57106299694c379b112ca2dec95571fb82b4459c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157900
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29556}
2019-10-21 12:06:52 +00:00
Sam Zackrisson
72cc71cd70 Harmonize APM config logging, update config ToString
It is unclear what configuration the APM is running with.
This CL helps some of that. Note that the webrtc::Config
is still not reported.

Bug: webrtc:5298
Change-Id: Icc2cf0b20634c04d567c0951a57ba6fe7aa5c5b4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157423
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29555}
2019-10-21 11:35:40 +00:00
CZ Theng
682dabd1c1 Add RTCStatisticsReport.h to WebRTC.framework.
Bug: webrtc:11041
Change-Id: I2ae5a7db9697f70426feaf0c31ee4e0b9b654cc6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157800
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29554}
2019-10-21 11:16:10 +00:00
Sam Zackrisson
03fbace409 Remove apm_helpers, consolidate audio config in WebRtcVoiceEngine
Refactorings to the audio processing module has, piece by piece,
decreased the workload of the apm_helpers helpers. It has come to a
point where it seems more reliable to consolidate what little is left
into the WebRtcVoiceEngine itself.

Bug: webrtc:9878
Change-Id: I6d983ace8e7ccb1b99d95178cf72608a657c7506
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157443
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29553}
2019-10-21 09:40:39 +00:00
Danil Chapovalov
b9f69028a0 Store logging streams in a manually linked list instead of std::list
LogMessage::streams_ is a global and thus should have trivial destructor

Bug: None
Change-Id: Ie6a8029602f50b2bc5bab546ffc0365ef0954024
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157042
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29552}
2019-10-21 09:02:52 +00:00
Danil Chapovalov
82a3f0ad7f Replace SingleThreadedTaskQueueForTesting::SendTask usage with ::webrtc::SendTask
Bug: webrtc:10933
Change-Id: I60738434b46e77b4644173ad168bc0efa58459b6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/156001
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29551}
2019-10-21 08:45:02 +00:00
Danil Chapovalov
712b676e80 Stop using gtest internal macro GTEST_ARRAY_SIZE_
Bug: None
Change-Id: Ie10d169459696b563891af79bb4507c211450152
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157425
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29550}
2019-10-21 07:33:47 +00:00
chromium-webrtc-autoroll
2b739f018d Roll chromium_revision db43fd3604..8587b26e98 (707597:707701)
Change log: db43fd3604..8587b26e98
Full diff: db43fd3604..8587b26e98

Changed dependencies
* src/base: 068ee1356c..e799c83d92
* src/build: 193283f884..7136ae113e
* src/ios: fececeadd9..e9f3aac797
* src/testing: 82bc92a6d6..f8d4ac29d7
* src/third_party: b4ca197434..f07189d28b
* src/tools: fb1b95ceac..d2ac634da7
DEPS diff: db43fd3604..8587b26e98/DEPS

No update to Clang.

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

Change-Id: I5066e8cbc0e2d642cc1cfacb9c05253dd59d45f2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157783
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@{#29549}
2019-10-21 02:18:36 +00:00
Mirko Bonadei
3663ed3ad6 Move rtc_base/ignore_wundef.h to its own target.
Since rtc_base/ignore_wundef.h doesn't have any dependency, it is easy to
move it to its own target and allow its dependant to avoid to take a
dependency rtc_base:on rtc_base_approved.

Bug: webrtc:9419
Change-Id: I17f205b0cb2b21cad388b04e60082df9398dffdf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157428
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29548}
2019-10-19 10:50:36 +00:00
chromium-webrtc-autoroll
d441e50d5f Roll chromium_revision 8b1da07aa3..db43fd3604 (707493:707597)
Change log: 8b1da07aa3..db43fd3604
Full diff: 8b1da07aa3..db43fd3604

Changed dependencies
* src/build: e91308151b..193283f884
* src/ios: d915bdde1a..fececeadd9
* src/testing: 476a182a39..82bc92a6d6
* src/third_party: adfb39f6f9..b4ca197434
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/c98b1ee7e4..a5c8651cfc
* src/tools: 40902818d8..fb1b95ceac
DEPS diff: 8b1da07aa3..db43fd3604/DEPS

No update to Clang.

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

Change-Id: If3d0ca4de050edeb97c8f46cbd3b1e4c80809898
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157503
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@{#29547}
2019-10-19 00:37:42 +00:00
Qingsi Wang
fdf54f2256 Stop pairing local relay candidates with remote mDNS candidates.
To avoid IP leak from the CreatePermission request, local relay
candidates must not be paired with remote mDNS candidates, per Section
3.3.2 in draft-ietf-rtcweb-mdns-ice-candidates-04.

Bug: webrtc:11038
Change-Id: I13aada79c812712b850293c7e17094dc8f77105a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157340
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Reviewed-by: Honghai Zhang <honghaiz@webrtc.org>
Reviewed-by: Alex Drake <alexdrake@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29546}
2019-10-18 23:36:17 +00:00
chromium-webrtc-autoroll
41595ddf1f Roll chromium_revision 0d7020346c..8b1da07aa3 (707387:707493)
Change log: 0d7020346c..8b1da07aa3
Full diff: 0d7020346c..8b1da07aa3

Changed dependencies
* src/base: aaa05fc8cf..068ee1356c
* src/ios: 1f4f4f13b8..d915bdde1a
* src/testing: 93f6b1d90e..476a182a39
* src/third_party: 64465300e9..adfb39f6f9
* src/third_party/depot_tools: fcde3ba0a6..acf922ce48
* src/tools: 2a9e7388f3..40902818d8
DEPS diff: 0d7020346c..8b1da07aa3/DEPS

No update to Clang.

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

Change-Id: Ie838060fe48bafbcf1bb3cd9f71db336d4b21cd8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157501
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@{#29545}
2019-10-18 20:35:49 +00:00
Mirko Bonadei
0e3485c338 Revert "Define WEBRTC_ENABLE_SYMBOL_EXPORT if is_component_build=true."
This reverts commit 03bc15c646.

Reason for revert: Breaks Chromium's FYI win debug build
https://ci.chromium.org/p/chromium/builders/webrtc.fyi/WebRTC%20Chromium%20FYI%20Win%20Builder%20(dbg)/4341

Original change's description:
> Define WEBRTC_ENABLE_SYMBOL_EXPORT if is_component_build=true.
> 
> In order to land the component build support in Chromium, it is
> easier to turn on symbols export every time that is_component_build=true
> instead of setting rtc_enable_symbol_export=is_component_build in
> Chromium (since is_component_build is not available in .gn).
> 
> rtc_enable_symbol_export is still kept in the mix in order to turn
> on symbol exports in any case a shared library will be added to the
> WebRTC build.
> 
> Bug: webrtc:9419
> Change-Id: I5a7195826dea13d9a6f10a1160c35f2864bfa6c2
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157108
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#29540}

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

Change-Id: Ib6032c6f8bfb6a0b5eef559430cfae4eda3da0e0
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9419
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157426
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29544}
2019-10-18 17:20:03 +00:00
chromium-webrtc-autoroll
db94d14fdf Roll chromium_revision f29003dd01..0d7020346c (707259:707387)
Change log: f29003dd01..0d7020346c
Full diff: f29003dd01..0d7020346c

Changed dependencies
* src/base: e687d5e880..aaa05fc8cf
* src/build: c23879b9ff..e91308151b
* src/ios: 1d43980b85..1f4f4f13b8
* src/testing: aec101386c..93f6b1d90e
* src/third_party: 6db0e634c0..64465300e9
* src/tools: 1b1fb32e10..2a9e7388f3
DEPS diff: f29003dd01..0d7020346c/DEPS

No update to Clang.

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

Change-Id: I42034223dba2373cfdd9a628c438aadcfef3e267
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157500
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@{#29543}
2019-10-18 16:32:40 +00:00
Sam Zackrisson
6e5433c4d4 AEC3: Multi channel ERL estimator
The estimator will simply compute the worst value of all combinations
of render and capture signal.

This has the drawback that low-volume or silent render channels may
severely misestimate the ERL.

The changes have been shown to be bitexact over a large dataset.

Bug: webrtc:10913
Change-Id: Id53c3ab81646ac0fab303edafc5e38892d285d8e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157308
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29542}
2019-10-18 16:03:46 +00:00
Jakob Ivarsson
33ed88287f Update the minimum bitrate when a stream allocation is removed.
The minimum bitrate was lower bounded by the previous value and could thus not become lower when a stream allocation was removed.

Bug: None
Change-Id: I60068dbc7691121f001cbb233ca4a25269047f6e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157424
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29541}
2019-10-18 15:39:40 +00:00
Mirko Bonadei
03bc15c646 Define WEBRTC_ENABLE_SYMBOL_EXPORT if is_component_build=true.
In order to land the component build support in Chromium, it is
easier to turn on symbols export every time that is_component_build=true
instead of setting rtc_enable_symbol_export=is_component_build in
Chromium (since is_component_build is not available in .gn).

rtc_enable_symbol_export is still kept in the mix in order to turn
on symbol exports in any case a shared library will be added to the
WebRTC build.

Bug: webrtc:9419
Change-Id: I5a7195826dea13d9a6f10a1160c35f2864bfa6c2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157108
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29540}
2019-10-18 15:33:31 +00:00
saza
1d60052967 Delete ApmPublicSubmodules, fix ApmPrivateSubmodules, ApmSubmoduleStates
All submodule pointers are now private.

The unique_ptr to a ApmPrivateSubmodules is replaced by a direct member
object.

The main outcome of this CL is that the code is nicer.

Bug: webrtc:5298
Change-Id: Ib8ef70a35a64b875752d2a318c572d152d51487a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157440
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29539}
2019-10-18 14:23:50 +00:00
Åsa Persson
3f7e0ede1e Add option to make first scale factor depend on input resolution.
Scale factors are 3/4, 2/3, 3/4, 2/3, ...

Adds possibly to start with:
- 2/3 (if width/height multiple of 3)
- 2/3, 2/3 (if width/height multiple of 9)

Bug: none
Change-Id: Idbeddfec4baea893c240bbb897d01ac1cff3b435
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157105
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29538}
2019-10-18 14:19:04 +00:00
Niels Möller
89e130a2d0 Reland "Delete methods EncodedImage::Allocate and EncodedImageBufferInterface::Realloc"
This is a reland of d6bb18479f

Chromium problem fixed in https://webrtc-review.googlesource.com/c/src/+/153485

Original change's description:
> Delete methods EncodedImage::Allocate and EncodedImageBufferInterface::Realloc
>
> Bug: webrtc:9378
> Change-Id: I3b03656769623647fcbb4f9125a3e920b7650fe9
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/155961
> Reviewed-by: Philip Eliasson <philipel@webrtc.org>
> Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#29458}

Bug: webrtc:9378
Change-Id: I062262e87e115666ed4c92985ca75328e8d0c65f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157441
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29537}
2019-10-18 11:34:48 +00:00
Gustaf Ullberg
55d19e590d Add gustaf to audio/OWNERS
Bug: None
Change-Id: I1105c47ff642094730635dc3f00663d45dd57c6a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157420
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29536}
2019-10-18 11:13:11 +00:00
Danil Chapovalov
4aae11dc46 Remove redundant fields in PacketBuffer
merge two vectors of the same size into single vector
Remove redundant size_ variable.
Remove redundant variables in the StoredPacket internal struct.
Remove frame_created flags since shortly after it is set, used flag is set to false

Bug: webrtc:10979
Change-Id: Ia37944362abda4e2a6c6741f436f95c45e0f7069
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157174
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29535}
2019-10-18 10:05:10 +00:00
Erik Språng
dbbf413085 Fix use of unitialized value in test
Local media SSRC is mandatory, but let's give it a default value to
make tests less brittle.

Bug: chromium:1015256
Change-Id: If7f6505482d90651bc58d9b358290c4d43487f4e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157421
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29534}
2019-10-18 09:20:16 +00:00
Mirko Bonadei
c66e004edc Adding missing RTC_EXPORT for component build.
Bug: webrtc:9419
Change-Id: Ifa5d21edc708b5012b71e2e5101e10c6352a7218
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157162
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29533}
2019-10-18 09:17:56 +00:00
Danil Chapovalov
05269ecd0b Rename PacketBuffer tests to follow conventions
Rename file with tests to match code under test.
Rename fixture by moving 'Test' from prefix to suffix

Bug: None
Change-Id: I54c36d3b517bde7cdffa3a7e74528cc464ea7ad7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157301
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29532}
2019-10-18 09:05:06 +00:00
Niels Möller
f07003c2ec Avoid Realloc in LibvpxVp8Encoder
Instead, compute the needed buffer size for the encoded VP8 frame
prior to copying the data.

Bug: chromium:1012256
Change-Id: I3dda921f6d8f974731d2138bc5f6166cfdb9a321
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157303
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29531}
2019-10-18 08:36:23 +00:00
Per Åhgren
119e2197b7 AEC3: General cleanup after multichannel changes
This CL contains various cleanups/corrections to the multichannel AEC
code.

The changes have been shown to be bitexact over a large dataset.

Bug: webrtc:10913
Change-Id: Idd3e410b04527666e052f57ad81d0ac9eef3179b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157173
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29530}
2019-10-18 07:43:49 +00:00
Patrik Höglund
2167163770 Rewrite the lib link test to just be a binary.
This works on mobile and has less dependencies. There's no upside to
using gtest since I'm not planning on running the test anyway, so this
is a much better solution.

Bug: webrtc:11027
Change-Id: Id63af7086b9d9c9199c62bc8654b4202a4a1f759
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157380
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29529}
2019-10-18 07:42:20 +00:00
Sam Zackrisson
98872dc556 AEC3: Update SpectrumBuffer API
- RenderBuffer::Spectrum() loses its channel argument, allowing for
  greater flexibility in passing the multi-channel spectrum data into
  functions.
- The FFT spectra lengths are made compile-time constant, rendering
  some DCHECKs obsolete.

Bug: webrtc:10913
Change-Id: Ied0c50cf72d974cfef7279fd2b9c572d049b8b16
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157104
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29528}
2019-10-18 07:01:42 +00:00
chromium-webrtc-autoroll
c336dd1cb6 Roll chromium_revision 8a67b116c8..f29003dd01 (707122:707259)
Change log: 8a67b116c8..f29003dd01
Full diff: 8a67b116c8..f29003dd01

Changed dependencies
* src/base: 9ed4ea0c36..e687d5e880
* src/build: b758b92dab..c23879b9ff
* src/ios: 4fb07e66b1..1d43980b85
* src/testing: b40c881355..aec101386c
* src/third_party: 55a70e7d58..6db0e634c0
* src/third_party/depot_tools: b594247e39..fcde3ba0a6
* src/third_party/r8: VYsSPB6QlnJQH-2vJBhK8T6r0mexvbb9klMKwnK22GoC..IOR6mtzOa3X07B0hIZ5U2prEf0GbTvCdN8no1FjNAtQC
* src/tools: 2809e699dd..1b1fb32e10
DEPS diff: 8a67b116c8..f29003dd01/DEPS

No update to Clang.

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

Change-Id: I7d89d23a53c2eb00652f30b293e3603950efd45f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157360
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@{#29527}
2019-10-18 06:37:42 +00:00
chromium-webrtc-autoroll
7bf8699dd1 Roll chromium_revision 1d5b803fd3..8a67b116c8 (707010:707122)
Change log: 1d5b803fd3..8a67b116c8
Full diff: 1d5b803fd3..8a67b116c8

Changed dependencies
* src/base: 7be321828f..9ed4ea0c36
* src/build: 82f1af29ac..b758b92dab
* src/ios: 849c654c99..4fb07e66b1
* src/testing: 507bd47e75..b40c881355
* src/third_party: 9555657de8..55a70e7d58
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/bc4c09df64..76918d0164
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1b3fb455bf..c98b1ee7e4
* src/tools: 7ccc2916be..2809e699dd
DEPS diff: 1d5b803fd3..8a67b116c8/DEPS

No update to Clang.

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

Change-Id: If7032db489c162618ae2f94f8352e69de9d179c7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157321
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@{#29526}
2019-10-17 22:56:53 +00:00
Mirko Bonadei
86d053c2db Use source_sets in component builds and static_library in release builds.
Static libraries don't guarantee that an exported symbol gets linked
into a shared library (and in order to support Chromium's component
build mode, WebRTC needs to be linked as a shared library).

Source sets always pass all the object files to the linker.

On the flip side, source_sets link more object files in release builds
and to avoid this, this CL introduces a the GN template "rtc_library" that
expands to static_library during release builds and to source_set during
component builds.

See: https://gn.googlesource.com/gn/+/master/docs/reference.md#func_source_set

Bug: webrtc:9419
Change-Id: I4667e820c2b3fcec417becbd2034acc13e4f04fe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157168
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#29525}
2019-10-17 21:17:18 +00:00
chromium-webrtc-autoroll
e8b962bd3c Roll chromium_revision 60f3e975da..1d5b803fd3 (706891:707010)
Change log: 60f3e975da..1d5b803fd3
Full diff: 60f3e975da..1d5b803fd3

Changed dependencies
* src/base: c9e4045043..7be321828f
* src/build: e81a0c9676..82f1af29ac
* src/ios: 716d1a54ce..849c654c99
* src/testing: e598f3c5f4..507bd47e75
* src/third_party: b49284bea0..9555657de8
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/572eb8c70f..1b3fb455bf
* src/third_party/depot_tools: 989bc35186..b594247e39
* src/tools: 8f58bab28f..7ccc2916be
DEPS diff: 60f3e975da..1d5b803fd3/DEPS

No update to Clang.

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

Change-Id: I34e454ba605da1664a5e62fd1314b5c91450978d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157320
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@{#29524}
2019-10-17 20:34:08 +00:00