Commit Graph

32288 Commits

Author SHA1 Message Date
f42a94a7f5 Roll chromium_revision 6e17f9390b..5cee6c65d7 (827170:827322)
Change log: 6e17f9390b..5cee6c65d7
Full diff: 6e17f9390b..5cee6c65d7

Changed dependencies
* src/base: 57c8fdb432..8e78faaf40
* src/build: cc35ecde81..995f47015c
* src/ios: 1b6f5e66d0..8ab082c5fc
* src/testing: e299061351..877595b888
* src/third_party: 6f1583e3cb..93fad31f33
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/2a9b38f2da..f92a7636da
* src/third_party/icu: c2a4cae149..7db579a73a
* src/third_party/perfetto: 4fb2d48fe5..f1f7c370eb
* src/tools: 6709467b3e..6824f17b76
DEPS diff: 6e17f9390b..5cee6c65d7/DEPS

No update to Clang.

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

Change-Id: I0f5fd882bfbd425bc12ce4186247fe7b2c067fdb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/193161
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@{#32606}
2020-11-13 18:32:01 +00:00
c4ad6062fd Ensure EncoderSink::OnBitrateAllocationUpdated not called after Stop
Bug: chromium:1143311, webrtc:12000
Change-Id: I149e960a4999442b289f4b3c576206cc6baf6f24
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/193063
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32605}
2020-11-13 16:26:41 +00:00
4543697b37 Set range of GetLinearAecOutput to [-1, 1]
The output of GetLinearAecOutput is changed to have the range [-1, 1]
instead of [-2^15, 2^15] to be more similar to other Audio Processing
Module API functions.

The "--linear_aec_output" of audioproc_f has been tested for
bit-exactness.

Bug: webrtc:12185
Change-Id: Id50d93fcfaee5c239f3eb73f99d0bd3533319518
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/193062
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32604}
2020-11-13 15:01:31 +00:00
bee6408d7b Introduce length checking of all STUN byte string attributes
This will cause encoding of a STUN message with an over-long
byte string attribute to fail.

Bug: chromium:1144646
Change-Id: I265174577376ce01439835c03f2d46700842d211
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191322
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Justin Uberti <juberti@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32603}
2020-11-13 12:31:37 +00:00
180faebe88 [getStats] Reduce blocking thread-invokes from 2 to 1.
pc_->GetCallStats() does a blocking-invoke if not already on the worker
thread. By moving this call into one of the lambdas that is already
executing on the worker thread, we can "piggy-back" on it and reduce
the number of blocking-invokes by one.

No change in behavior is intended with this CL, other than performance
improvements.

Bug: webrtc:11767
Change-Id: I04eaf990be946720353adca82e87b739ec6614f2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/193060
Reviewed-by: Philipp Hancke <philipp.hancke@googlemail.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32602}
2020-11-13 09:36:18 +00:00
90e958b4cd Roll chromium_revision cc31f06a47..6e17f9390b (827051:827170)
Change log: cc31f06a47..6e17f9390b
Full diff: cc31f06a47..6e17f9390b

Changed dependencies
* src/base: f6c14e7c53..57c8fdb432
* src/build: fc3fd8947b..cc35ecde81
* src/ios: 0410044229..1b6f5e66d0
* src/testing: 6739932951..e299061351
* src/third_party: d5aaf207bc..6f1583e3cb
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/ac95abdb4b..2a9b38f2da
* src/third_party/depot_tools: f0517095b8..e61ccc59a2
* src/tools: e13b1915fa..6709467b3e
DEPS diff: cc31f06a47..6e17f9390b/DEPS

No update to Clang.

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

Change-Id: I91640d62ac5761f0e4c96e959094f3b00ca65567
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/193020
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@{#32601}
2020-11-13 07:10:08 +00:00
c74a27b855 Roll chromium_revision 56e883537d..cc31f06a47 (825974:827051)
Change log: 56e883537d..cc31f06a47
Full diff: 56e883537d..cc31f06a47

Changed dependencies
* src/base: cdccd61077..f6c14e7c53
* src/build: 6b0abd7198..fc3fd8947b
* src/ios: 5720c93651..0410044229
* src/testing: d54c4bf27e..6739932951
* src/third_party: 346e496c9b..d5aaf207bc
* src/third_party/android_deps/libs/androidx_core_core: version:1.3.0-beta01-cr0..version:1.3.1-cr0
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/434681c237..ac95abdb4b
* src/third_party/depot_tools: 17cd53de67..f0517095b8
* src/third_party/perfetto: 81e9301838..4fb2d48fe5
* src/tools: 2bb144cfe3..e13b1915fa
Added dependency
* src/third_party/android_deps/libs/androidx_core_core_animation
DEPS diff: 56e883537d..cc31f06a47/DEPS

Clang version changed llvmorg-12-init-11060-g118c3f3c:llvmorg-12-init-11462-g418f18c6
Details: 56e883537d..cc31f06a47/tools/clang/scripts/update.py

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

Change-Id: Iea26deca3194491a999b85e54ea09169f913bac1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192943
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@{#32600}
2020-11-13 00:49:16 +00:00
daab6896e2 doc: port release notes
from https://github.com/webrtc/webrtc-org/blob/gh-pages/release-notes/index.md
adding M86 and M87 release notes

BUG=None

No-Try: True
Change-Id: I4dbaa0151ba75594147453b9120368006b8aaadf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192661
Reviewed-by: Christoffer Jansson <jansson@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Philipp Hancke <philipp.hancke@googlemail.com>
Cr-Commit-Position: refs/heads/master@{#32599}
2020-11-12 19:18:59 +00:00
254ad1b914 Delay VoipCore initialization.
Starting from Android N, mobile app may not be able to access
microphone while in background where it fails the call.
In order to mitigate the issue, delay the ADM initialization
as late as possible.

Bug: webrtc:12120
Change-Id: I0fbf0300299b6c53413dfaaf88f748edc0a06bc1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191100
Commit-Queue: Tim Na <natim@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32598}
2020-11-12 18:05:19 +00:00
428432d09e Name change on channel and channel_id for consistency.
Bug: webrtc:12111
Change-Id: I5ea5f7b73ab8493bcbb67bc0144e0c261aedc1ed
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192000
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Tim Na <natim@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32597}
2020-11-12 17:44:39 +00:00
5d55597932 Add support for loopback route on emulated endpoints
Bug: b/172995851
Change-Id: I70b5ec6cd84784dcc452e8f96a02f4be849fa0f7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192920
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32596}
2020-11-12 17:01:59 +00:00
40e2a6830a Trigger try and CI bots.
TBR=titovartem@webrtc.org

Bug: None
Change-Id: Icc8bb4e361458e511834cb0b60720f4dd36b3be8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192796
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32595}
2020-11-12 07:31:34 +00:00
3ab1aba2f4 Trigger bots on CI.
TBR=titovartem@webrtc.org

No-Try: True
Bug: None
Change-Id: I838d13bd46bfdbe74cbc39ac770cb1ff8e863420
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192795
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32594}
2020-11-12 06:38:13 +00:00
1bd6cc562b Make SEA to be codec agnostic.
Bug: none
Change-Id: I803eebe710e8278bb62daa4468ffff5f1188c6db
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192792
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32593}
2020-11-11 18:34:35 +00:00
728b5d01b0 Add possibility of upload check for pc perf tests
Presubmit bot failures are unrelated to the cl.

No-Presubmit: True
Bug: webrtc:12162
Change-Id: I598d3aea8df9429bdff18b80a400c358fa1461d2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/186123
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32592}
2020-11-11 17:51:15 +00:00
7dff9f3a76 Add delay manager config options.
Add a new field trial with more flexible parsing and new options:
- Resample packet delays to only update histogram with maximum observed
 delay every X ms.
- Setting the maximum history size (in ms) used for calculating the
 relative arrival delay.

Legacy field trial used for configuration is maintained.

Bug: webrtc:10333
Change-Id: I35b004f5d8209c85b33cb49def3816db51650946
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192789
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32591}
2020-11-11 17:30:36 +00:00
05f5d636e5 RNN VAD: pitch search optimizations (part 4)
Add inverted lags index to simplify the loop in
`FindBestPitchPeriod48kHz()`. Instead of looping over 294 items,
only loop over the relevant ones (up to 10) by keeping track of
the relevant indexes.

The benchmark has shown a slight improvement (about +6x).

Benchmarked as follows:
```
out/release/modules_unittests \
  --gtest_filter=*RnnVadTest.DISABLED_RnnVadPerformance* \
  --gtest_also_run_disabled_tests --logs
```

Results:

      | baseline             | this CL
------+----------------------+------------------------
run 1 | 22.8319 +/- 1.46554  | 22.1951 +/- 0.747611
      | 389.367x             | 400.539x
------+----------------------+------------------------
run 2 | 22.4286 +/- 0.726449 | 22.2718 +/- 0.963738
      | 396.369x             | 399.16x
------+----------------------+------------------------
run 2 | 22.5688 +/- 0.831341 | 22.4166 +/- 0.953362
      | 393.906x             | 396.581x

This CL also moved `PitchPseudoInterpolationInvLagAutoCorr()`
into `FindBestPitchPeriod48kHz()`.

Bug: webrtc:10480
Change-Id: Id4e6d755045c3198a80fa94a0a7463577d909b7e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191764
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32590}
2020-11-11 15:51:52 +00:00
ccbc216ac5 Avoids potential rounding of -inf time delta in TaskQueuePacedSender.
This rounding triggers a dcheck that crashes debug builds.

Furtunately, in release mode this does not matter as the resulting
value is anyway capped to 0.

Unfortunately, it is almost impossible to write a test for this even
with simulated time as the conditions needed to trigger this condition
includes thread scheduling being slightly off in such a way that an
unscheduled process call preempts a scheduled one at a time when
sending a sufficiently large padding packet becomes possible - and
right after starting a new probe cluster.

We should consider updating this class to make unit testing easier.

Bug: webrtc:10809
Change-Id: I533e6e716bddc106d11e82a9e3edb4e0035fd21c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192786
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32589}
2020-11-11 14:27:52 +00:00
06bbeb3398 in Av1 encoder wrapper communicate end_of_picture flag similar to VP9
In particular move end_of_picture flag out of vp9 specific information
since VP9 is not the only codec that can use spatial scalability and
thus need to distinguish layer frame and picture (aka temporal unit).

Bug: webrtc:12167
Change-Id: I0d046d8785fbea55281209ad099738c03ea7db96
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192542
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32588}
2020-11-11 14:00:52 +00:00
f2a2fe84b8 Reland "RNN VAD: pitch search optimizations (part 3)"
This reverts commit 57e68ee1b94cce853ab4305680bbe71c01f95e82.

Reason for revert: bug in ancestor CL fixed

Original change's description:
> Revert "RNN VAD: pitch search optimizations (part 3)"
>
> This reverts commit ea89f2a447c514b73da2ed6189fe4b8485f123c6.
>
> Reason for revert: bug in ancestor CL https://webrtc-review.googlesource.com/c/src/+/191320
>
> Original change's description:
> > RNN VAD: pitch search optimizations (part 3)
> >
> > `ComputeSlidingFrameSquareEnergies()` which computes the energy of a
> > sliding 20 ms frame in the pitch buffer has been switched from backward
> > to forward.
> >
> > The benchmark has shown a slight improvement (about +6x).
> >
> > This change is not bit exact but all the tolerance tests still pass
> > except for one single case in `RnnVadTest,PitchSearchWithinTolerance`
> > for which the tolerance has been slightly increased. Note that the pitch
> > estimation is still bit-exact.
> >
> > Benchmarked as follows:
> > ```
> > out/release/modules_unittests \
> >   --gtest_filter=*RnnVadTest.DISABLED_RnnVadPerformance* \
> >   --gtest_also_run_disabled_tests --logs
> > ```
> >
> > Results:
> >
> >       | baseline             | this CL
> > ------+----------------------+------------------------
> > run 1 | 22.8319 +/- 1.46554  | 22.087 +/- 0.552932
> >       | 389.367x             | 402.499x
> > ------+----------------------+------------------------
> > run 2 | 22.4286 +/- 0.726449 | 22.216 +/- 0.916222
> >       | 396.369x             | 400.162x
> > ------+----------------------+------------------------
> > run 2 | 22.5688 +/- 0.831341 | 22.4902 +/- 1.04881
> >       | 393.906x             | 395.283x
> >
> > Bug: webrtc:10480
> > Change-Id: I1fd54077a32e25e46196c8e18f003cd0ffd503e1
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191703
> > Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> > Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#32572}
>
> TBR=alessiob@webrtc.org,kwiberg@webrtc.org
>
> Change-Id: I57a8f937ade0a35e1ccf0e229c391cc3a10e7c48
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:10480
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192621
> Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
> Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32578}

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

# Not skipping CQ checks because this is a reland.

Bug: webrtc:10480
Change-Id: I1d510697236255d8c0cca405e90781f5d8c6a3e6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192783
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32587}
2020-11-11 13:46:02 +00:00
5a37b94029 Reland "RNN VAD: pitch search optimizations (part 2)"
This reverts commit e6a731fceae9503f6237d3ea287323aeac732ea6.

Reason for revert: bug in parent CL fixed

Original change's description:
> Revert "RNN VAD: pitch search optimizations (part 2)"
>
> This reverts commit 2f7d1c62e21e2f3786c0803c973d71b414726d8d.
>
> Reason for revert: bug in ancestor CL https://webrtc-review.googlesource.com/c/src/+/191320
>
> Original change's description:
> > RNN VAD: pitch search optimizations (part 2)
> >
> > This CL brings a large improvement to the VAD by precomputing the
> > energy for the sliding frame `y` in the pitch buffer instead of
> > computing them twice in two different places. The realtime factor
> > has improved by about +16x.
> >
> > There is room for additional improvement (TODOs added), but that will
> > be done in a follow up CL since the change won't be bit-exact and
> > careful testing is needed.
> >
> > Benchmarked as follows:
> > ```
> > out/release/modules_unittests \
> >   --gtest_filter=*RnnVadTest.DISABLED_RnnVadPerformance* \
> >   --gtest_also_run_disabled_tests --logs
> > ```
> >
> > Results:
> >
> >       | baseline             | this CL
> > ------+----------------------+------------------------
> > run 1 | 23.568 +/- 0.990788  | 22.8319 +/- 1.46554
> >       | 377.207x             | 389.367x
> > ------+----------------------+------------------------
> > run 2 | 23.3714 +/- 0.857523 | 22.4286 +/- 0.726449
> >       | 380.379x             | 396.369x
> > ------+----------------------+------------------------
> > run 2 | 23.709 +/- 1.04477   | 22.5688 +/- 0.831341
> >       | 374.963x             | 393.906x
> >
> > Bug: webrtc:10480
> > Change-Id: I599a4dda2bde16dc6c2f42cf89e96afbd4630311
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191484
> > Reviewed-by: Per Åhgren <peah@webrtc.org>
> > Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#32571}
>
> TBR=alessiob@webrtc.org,peah@webrtc.org
>
> Change-Id: I53e478d8d58912c7a5fae4ad8a8d1342a9a48091
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:10480
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192620
> Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
> Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32580}

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

# Not skipping CQ checks because this is a reland.

Bug: webrtc:10480
Change-Id: I0d6c89c64587bb6c38e69b968df12a5eb499ac6f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192782
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32586}
2020-11-11 13:19:02 +00:00
c36f8623c0 Reland "RNN VAD: pitch search optimizations (part 1)"
This reverts commit 1b6b958a4aa574b7852fe62efe5d4f96ce085d8b.

Reason for revert: Bug fix

Original change's description:
> Revert "RNN VAD: pitch search optimizations (part 1)"
>
> This reverts commit 9da3e177fd5c2236cc15fea0ee8933e1dd0d8f6d.
>
> Reason for revert: bug in ComputePitchPeriod48kHz()
>
> Original change's description:
> > RNN VAD: pitch search optimizations (part 1)
> >
> > TL;DR this CL improves efficiency and includes several code
> > readability improvements mainly triggered by the comments to
> > patch set #10.
> >
> > Highlights:
> > - Split `FindBestPitchPeriods()` into 12 and 24 kHz versions
> >   to hard-code the input size and simplify the 24 kHz version
> > - Loop in `ComputePitchPeriod48kHz()` (new name for
> >   `RefinePitchPeriod48kHz()`) removed since the lags for which
> >   we need to compute the auto correlation are a few
> > - `ComputePitchGainThreshold()` was only used in unit tests; it's been
> >   moved into the anon ns and the test removed
> >
> > This CL makes `ComputePitchPeriod48kHz()` is about 10% faster (measured
> > with https://webrtc-review.googlesource.com/c/src/+/191320/4/modules/audio_processing/agc2/rnn_vad/pitch_search_internal_unittest.cc).
> > The realtime factor has improved by about +14%.
> >
> > Benchmarked as follows:
> > ```
> > out/release/modules_unittests \
> >   --gtest_filter=*RnnVadTest.DISABLED_RnnVadPerformance* \
> >   --gtest_also_run_disabled_tests --logs
> > ```
> >
> > Results:
> >
> >       | baseline             | this CL
> > ------+----------------------+------------------------
> > run 1 | 24.0231 +/- 0.591016 | 23.568 +/- 0.990788
> >       | 370.06x              | 377.207x
> > ------+----------------------+------------------------
> > run 2 | 24.0485 +/- 0.957498 | 23.3714 +/- 0.857523
> >       | 369.67x              | 380.379x
> > ------+----------------------+------------------------
> > run 2 | 25.4091 +/- 2.6123   | 23.709 +/- 1.04477
> >       | 349.875x             | 374.963x
> >
> > Bug: webrtc:10480
> > Change-Id: I9a3e9164b2442114b928de506c92a547c273882f
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191320
> > Reviewed-by: Per Åhgren <peah@webrtc.org>
> > Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#32568}
>
> TBR=alessiob@webrtc.org,peah@webrtc.org
>
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:10480
> Change-Id: I2a91f4f29566f872a7dfa220b31c6c625ed075db
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192660
> Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32581}

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

# Not skipping CQ checks because this is a reland.

Bug: webrtc:10480
Change-Id: I66e3e8d73ebc04a437c01a0396cd5613c42a8cf5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192780
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32585}
2020-11-11 12:43:45 +00:00
01a36f32e7 CallbackList: Don't allow reentrancy
When a Send is in progress, don't allow modification to the list of
callbacks, or a recursive Send.

Bug: webrtc:11943
Change-Id: I88751060136972d0c9170db725fa30312a14b5b1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192360
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32584}
2020-11-11 12:26:14 +00:00
b249d0a905 Allow AudioAttributes to be app/client configurable
WebRtcAudioTrack is hardcoded to configure AudioAttributes with
1. usage=USAGE_VOICE_COMMUNICATIOON
2. contentType=CONTENT_TYPE_SPEECH

This change allows AudioAttributes to be configured via the
 JavaAudioDeviceModule.

Bug: webrtc:12153
Change-Id: I67c7f6e572c5a9f3a8fde674b6600d2adaf17895
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191941
Commit-Queue: Gaurav Vaish <gvaish@chromium.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Paulina Hensman <phensman@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32583}
2020-11-11 06:18:10 +00:00
0bfdbc37e9 Roll chromium_revision cf72651802..56e883537d (825867:825974)
Change log: cf72651802..56e883537d
Full diff: cf72651802..56e883537d

Changed dependencies
* src/base: b0b1519d97..cdccd61077
* src/build: acb8887d55..6b0abd7198
* src/ios: 3927b63239..5720c93651
* src/testing: 15ec3e3f8b..d54c4bf27e
* src/third_party: f7df2dae6b..346e496c9b
* src/third_party/depot_tools: edd94d2b8c..17cd53de67
* src/third_party/perfetto: 8da8bcdf92..81e9301838
* src/tools: 46c4c95d5f..2bb144cfe3
DEPS diff: cf72651802..56e883537d/DEPS

No update to Clang.

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

Change-Id: I55b4862f015a03a267af06f5697ca6d15e324a6b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192680
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@{#32582}
2020-11-10 22:53:38 +00:00
1b6b958a4a Revert "RNN VAD: pitch search optimizations (part 1)"
This reverts commit 9da3e177fd5c2236cc15fea0ee8933e1dd0d8f6d.

Reason for revert: bug in ComputePitchPeriod48kHz()

Original change's description:
> RNN VAD: pitch search optimizations (part 1)
>
> TL;DR this CL improves efficiency and includes several code
> readability improvements mainly triggered by the comments to
> patch set #10.
>
> Highlights:
> - Split `FindBestPitchPeriods()` into 12 and 24 kHz versions
>   to hard-code the input size and simplify the 24 kHz version
> - Loop in `ComputePitchPeriod48kHz()` (new name for
>   `RefinePitchPeriod48kHz()`) removed since the lags for which
>   we need to compute the auto correlation are a few
> - `ComputePitchGainThreshold()` was only used in unit tests; it's been
>   moved into the anon ns and the test removed
>
> This CL makes `ComputePitchPeriod48kHz()` is about 10% faster (measured
> with https://webrtc-review.googlesource.com/c/src/+/191320/4/modules/audio_processing/agc2/rnn_vad/pitch_search_internal_unittest.cc).
> The realtime factor has improved by about +14%.
>
> Benchmarked as follows:
> ```
> out/release/modules_unittests \
>   --gtest_filter=*RnnVadTest.DISABLED_RnnVadPerformance* \
>   --gtest_also_run_disabled_tests --logs
> ```
>
> Results:
>
>       | baseline             | this CL
> ------+----------------------+------------------------
> run 1 | 24.0231 +/- 0.591016 | 23.568 +/- 0.990788
>       | 370.06x              | 377.207x
> ------+----------------------+------------------------
> run 2 | 24.0485 +/- 0.957498 | 23.3714 +/- 0.857523
>       | 369.67x              | 380.379x
> ------+----------------------+------------------------
> run 2 | 25.4091 +/- 2.6123   | 23.709 +/- 1.04477
>       | 349.875x             | 374.963x
>
> Bug: webrtc:10480
> Change-Id: I9a3e9164b2442114b928de506c92a547c273882f
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191320
> Reviewed-by: Per Åhgren <peah@webrtc.org>
> Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32568}

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

No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10480
Change-Id: I2a91f4f29566f872a7dfa220b31c6c625ed075db
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192660
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32581}
2020-11-10 20:31:28 +00:00
e6a731fcea Revert "RNN VAD: pitch search optimizations (part 2)"
This reverts commit 2f7d1c62e21e2f3786c0803c973d71b414726d8d.

Reason for revert: bug in ancestor CL https://webrtc-review.googlesource.com/c/src/+/191320

Original change's description:
> RNN VAD: pitch search optimizations (part 2)
>
> This CL brings a large improvement to the VAD by precomputing the
> energy for the sliding frame `y` in the pitch buffer instead of
> computing them twice in two different places. The realtime factor
> has improved by about +16x.
>
> There is room for additional improvement (TODOs added), but that will
> be done in a follow up CL since the change won't be bit-exact and
> careful testing is needed.
>
> Benchmarked as follows:
> ```
> out/release/modules_unittests \
>   --gtest_filter=*RnnVadTest.DISABLED_RnnVadPerformance* \
>   --gtest_also_run_disabled_tests --logs
> ```
>
> Results:
>
>       | baseline             | this CL
> ------+----------------------+------------------------
> run 1 | 23.568 +/- 0.990788  | 22.8319 +/- 1.46554
>       | 377.207x             | 389.367x
> ------+----------------------+------------------------
> run 2 | 23.3714 +/- 0.857523 | 22.4286 +/- 0.726449
>       | 380.379x             | 396.369x
> ------+----------------------+------------------------
> run 2 | 23.709 +/- 1.04477   | 22.5688 +/- 0.831341
>       | 374.963x             | 393.906x
>
> Bug: webrtc:10480
> Change-Id: I599a4dda2bde16dc6c2f42cf89e96afbd4630311
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191484
> Reviewed-by: Per Åhgren <peah@webrtc.org>
> Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32571}

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

Change-Id: I53e478d8d58912c7a5fae4ad8a8d1342a9a48091
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10480
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192620
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32580}
2020-11-10 19:44:09 +00:00
1a88ea1f79 CallbackList: Improve documentation
Bug: webrtc:11943
Change-Id: I86fdad3119d58d4bbd6cb7b28882cbc1d134d7a2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191966
Reviewed-by: Markus Handell <handellm@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32579}
2020-11-10 19:08:45 +00:00
57e68ee1b9 Revert "RNN VAD: pitch search optimizations (part 3)"
This reverts commit ea89f2a447c514b73da2ed6189fe4b8485f123c6.

Reason for revert: bug in ancestor CL https://webrtc-review.googlesource.com/c/src/+/191320

Original change's description:
> RNN VAD: pitch search optimizations (part 3)
>
> `ComputeSlidingFrameSquareEnergies()` which computes the energy of a
> sliding 20 ms frame in the pitch buffer has been switched from backward
> to forward.
>
> The benchmark has shown a slight improvement (about +6x).
>
> This change is not bit exact but all the tolerance tests still pass
> except for one single case in `RnnVadTest,PitchSearchWithinTolerance`
> for which the tolerance has been slightly increased. Note that the pitch
> estimation is still bit-exact.
>
> Benchmarked as follows:
> ```
> out/release/modules_unittests \
>   --gtest_filter=*RnnVadTest.DISABLED_RnnVadPerformance* \
>   --gtest_also_run_disabled_tests --logs
> ```
>
> Results:
>
>       | baseline             | this CL
> ------+----------------------+------------------------
> run 1 | 22.8319 +/- 1.46554  | 22.087 +/- 0.552932
>       | 389.367x             | 402.499x
> ------+----------------------+------------------------
> run 2 | 22.4286 +/- 0.726449 | 22.216 +/- 0.916222
>       | 396.369x             | 400.162x
> ------+----------------------+------------------------
> run 2 | 22.5688 +/- 0.831341 | 22.4902 +/- 1.04881
>       | 393.906x             | 395.283x
>
> Bug: webrtc:10480
> Change-Id: I1fd54077a32e25e46196c8e18f003cd0ffd503e1
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191703
> Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#32572}

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

Change-Id: I57a8f937ade0a35e1ccf0e229c391cc3a10e7c48
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10480
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192621
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32578}
2020-11-10 18:43:48 +00:00
c161adc086 Roll chromium_revision 73d177aee9..cf72651802 (825746:825867)
Change log: 73d177aee9..cf72651802
Full diff: 73d177aee9..cf72651802

Changed dependencies
* src/base: 48a2633172..b0b1519d97
* src/build: 3514e7b890..acb8887d55
* src/ios: f6a622e0fd..3927b63239
* src/testing: 7d4fe53baa..15ec3e3f8b
* src/third_party: 76ae2d132e..f7df2dae6b
* src/third_party/depot_tools: e7a31f42cd..edd94d2b8c
* src/third_party/perfetto: 38f3d771bd..8da8bcdf92
* src/tools: 2fe4068398..46c4c95d5f
DEPS diff: 73d177aee9..cf72651802/DEPS

No update to Clang.

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

Change-Id: I0b1c4f03499b7ca4a77bdeb0e3cdefbc31c96e71
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192600
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@{#32577}
2020-11-10 18:32:35 +00:00
9012b09ea7 Undo enforcing of PEP-8 pylint changes for method and function names.
The full reformat will take some time, let's postpone function and
method names.

Bug: webrtc:12114
Change-Id: I2b8f19fb257af20a254c28d34cee62a1a574bcd8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192380
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32576}
2020-11-10 18:26:25 +00:00
280054f2e6 Eliminate sigslot from RtpTransmissionManager
at the cost of adding a WeakPointerFactory.
Moves the RtpTransceiver "NegotiationNeeded" signal to a callback
function that is passed as a constructor argument.

Bug: webrtc:11943
Change-Id: I37b2027379acce38dbaf0f396daebdb3e579ee54
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192540
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32575}
2020-11-10 14:41:45 +00:00
5aaec9d0a4 Remove has_slots from a class that does not need it
sigslot::has_slots<> is only needed in the class that listens to
signals, not the class that sends it.

Bug: webrtc:11943
Change-Id: I387057c7e1f999a260eade7b5e38a0df5ee0f40a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192382
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32574}
2020-11-10 13:23:33 +00:00
5c22751a17 Roll chromium_revision 3f3e178f21..73d177aee9 (824219:825746)
Change log: 3f3e178f21..73d177aee9
Full diff: 3f3e178f21..73d177aee9

Changed dependencies
* src/base: e2c8db9252..48a2633172
* src/build: 4483fddad1..3514e7b890
* src/buildtools: b6526d9ad3..6302c11756
* src/buildtools/linux64: git_revision:e002e68a48d1c82648eadde2f6aafa20d08c36f2..git_revision:53d92014bf94c3893886470a1c7c1289f8818db0
* src/buildtools/mac: git_revision:e002e68a48d1c82648eadde2f6aafa20d08c36f2..git_revision:53d92014bf94c3893886470a1c7c1289f8818db0
* src/buildtools/win: git_revision:e002e68a48d1c82648eadde2f6aafa20d08c36f2..git_revision:53d92014bf94c3893886470a1c7c1289f8818db0
* src/ios: 6f3254709a..f6a622e0fd
* src/testing: 7ca5f9dde8..7d4fe53baa
* src/third_party: 968f9e2f23..76ae2d132e
* src/third_party/android_deps/libs/androidx_annotation_annotation_experimental: version:1.0.0-cr0..version:1.1.0-SNAPSHOT-cr0
* src/third_party/android_deps/libs/androidx_asynclayoutinflater_asynclayoutinflater: version:1.0.0-cr0..version:1.1.0-SNAPSHOT-cr0
* src/third_party/android_deps/libs/androidx_cardview_cardview: version:1.0.0-cr0..version:1.1.0-SNAPSHOT-cr0
* src/third_party/android_deps/libs/androidx_concurrent_concurrent_futures: version:1.0.0-cr0..version:1.2.0-SNAPSHOT-cr0
* src/third_party/android_deps/libs/androidx_coordinatorlayout_coordinatorlayout: version:1.1.0-cr0..version:1.2.0-SNAPSHOT-cr0
* src/third_party/android_deps/libs/androidx_exifinterface_exifinterface: version:1.0.0-cr0..version:1.4.0-SNAPSHOT-cr0
* src/third_party/android_deps/libs/androidx_localbroadcastmanager_localbroadcastmanager: version:1.0.0-cr0..version:1.1.0-SNAPSHOT-cr0
* src/third_party/android_deps/libs/androidx_swiperefreshlayout_swiperefreshlayout: version:1.0.0-cr0..version:1.2.0-SNAPSHOT-cr0
* src/third_party/android_deps/libs/androidx_transition_transition: version:1.2.0-cr0..version:1.4.0-SNAPSHOT-cr0
* src/third_party/android_deps/libs/androidx_tvprovider_tvprovider: version:1.0.0-cr0..version:1.1.0-SNAPSHOT-cr0
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/a673d02458..1607f54fed
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/b8b4d61dd3..434681c237
* src/third_party/depot_tools: deff57f9b2..e7a31f42cd
* src/third_party/freetype/src: 0bd50c9043..32b14552d6
* src/third_party/libaom/source/libaom: https://aomedia.googlesource.com/aom.git/+log/e2219b84bc..87c414ed32
* src/third_party/perfetto: 4cd11945c5..38f3d771bd
* src/third_party/r8: cf9Zl4I4n6RqsJezIQ58bLhhVRdmCJ8Pvaemifu2QIIC..jIJhJ4I22Dx5V-URd7bp-x1RILv5vrLEJdjjt77MRPcC
* src/tools: cdffd738af..2fe4068398
* src/tools/luci-go: git_revision:576741d3eed0fa33971fb34cd823650e6f5b47fb..git_revision:1a022d3a4c50be4207ee93451255d71896416596
* src/tools/luci-go: git_revision:576741d3eed0fa33971fb34cd823650e6f5b47fb..git_revision:1a022d3a4c50be4207ee93451255d71896416596
* src/tools/luci-go: git_revision:576741d3eed0fa33971fb34cd823650e6f5b47fb..git_revision:1a022d3a4c50be4207ee93451255d71896416596
DEPS diff: 3f3e178f21..73d177aee9/DEPS

Clang version changed llvmorg-12-init-10666-gc9f69ee7:llvmorg-12-init-11060-g118c3f3c
Details: 3f3e178f21..73d177aee9/tools/clang/scripts/update.py

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

Change-Id: Ic4cb436bbd5bee9aa7fd0e03c0e763a07b93b417
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192560
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@{#32573}
2020-11-10 11:20:29 +00:00
ea89f2a447 RNN VAD: pitch search optimizations (part 3)
`ComputeSlidingFrameSquareEnergies()` which computes the energy of a
sliding 20 ms frame in the pitch buffer has been switched from backward
to forward.

The benchmark has shown a slight improvement (about +6x).

This change is not bit exact but all the tolerance tests still pass
except for one single case in `RnnVadTest,PitchSearchWithinTolerance`
for which the tolerance has been slightly increased. Note that the pitch
estimation is still bit-exact.

Benchmarked as follows:
```
out/release/modules_unittests \
  --gtest_filter=*RnnVadTest.DISABLED_RnnVadPerformance* \
  --gtest_also_run_disabled_tests --logs
```

Results:

      | baseline             | this CL
------+----------------------+------------------------
run 1 | 22.8319 +/- 1.46554  | 22.087 +/- 0.552932
      | 389.367x             | 402.499x
------+----------------------+------------------------
run 2 | 22.4286 +/- 0.726449 | 22.216 +/- 0.916222
      | 396.369x             | 400.162x
------+----------------------+------------------------
run 2 | 22.5688 +/- 0.831341 | 22.4902 +/- 1.04881
      | 393.906x             | 395.283x

Bug: webrtc:10480
Change-Id: I1fd54077a32e25e46196c8e18f003cd0ffd503e1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191703
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32572}
2020-11-10 10:18:58 +00:00
2f7d1c62e2 RNN VAD: pitch search optimizations (part 2)
This CL brings a large improvement to the VAD by precomputing the
energy for the sliding frame `y` in the pitch buffer instead of
computing them twice in two different places. The realtime factor
has improved by about +16x.

There is room for additional improvement (TODOs added), but that will
be done in a follow up CL since the change won't be bit-exact and
careful testing is needed.

Benchmarked as follows:
```
out/release/modules_unittests \
  --gtest_filter=*RnnVadTest.DISABLED_RnnVadPerformance* \
  --gtest_also_run_disabled_tests --logs
```

Results:

      | baseline             | this CL
------+----------------------+------------------------
run 1 | 23.568 +/- 0.990788  | 22.8319 +/- 1.46554
      | 377.207x             | 389.367x
------+----------------------+------------------------
run 2 | 23.3714 +/- 0.857523 | 22.4286 +/- 0.726449
      | 380.379x             | 396.369x
------+----------------------+------------------------
run 2 | 23.709 +/- 1.04477   | 22.5688 +/- 0.831341
      | 374.963x             | 393.906x

Bug: webrtc:10480
Change-Id: I599a4dda2bde16dc6c2f42cf89e96afbd4630311
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191484
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32571}
2020-11-10 00:18:46 +00:00
1f99551775 Remove check for WebRTC-SendSideBwe-WithOverhead in bitrate controller.
This was default enabled in:
https://webrtc-review.googlesource.com/c/src/+/191221

Bug: webrtc:6762
Change-Id: Ic8054136ed854866c0fdc71f9d747b8abcd9200e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192381
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32570}
2020-11-09 23:11:26 +00:00
a094787cb7 Remove one use of sigslot from webrtc_session_description_factory
This instance turned out to only be used for a single constant, known at
creation time callback function, so a function was more appropriate.

Bug: none
Change-Id: If131f75ed82607af50c4d85f1e80a693170ff687
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/192362
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32569}
2020-11-09 16:13:15 +00:00
9da3e177fd RNN VAD: pitch search optimizations (part 1)
TL;DR this CL improves efficiency and includes several code
readability improvements mainly triggered by the comments to
patch set #10.

Highlights:
- Split `FindBestPitchPeriods()` into 12 and 24 kHz versions
  to hard-code the input size and simplify the 24 kHz version
- Loop in `ComputePitchPeriod48kHz()` (new name for
  `RefinePitchPeriod48kHz()`) removed since the lags for which
  we need to compute the auto correlation are a few
- `ComputePitchGainThreshold()` was only used in unit tests; it's been
  moved into the anon ns and the test removed

This CL makes `ComputePitchPeriod48kHz()` is about 10% faster (measured
with https://webrtc-review.googlesource.com/c/src/+/191320/4/modules/audio_processing/agc2/rnn_vad/pitch_search_internal_unittest.cc).
The realtime factor has improved by about +14%.

Benchmarked as follows:
```
out/release/modules_unittests \
  --gtest_filter=*RnnVadTest.DISABLED_RnnVadPerformance* \
  --gtest_also_run_disabled_tests --logs
```

Results:

      | baseline             | this CL
------+----------------------+------------------------
run 1 | 24.0231 +/- 0.591016 | 23.568 +/- 0.990788
      | 370.06x              | 377.207x
------+----------------------+------------------------
run 2 | 24.0485 +/- 0.957498 | 23.3714 +/- 0.857523
      | 369.67x              | 380.379x
------+----------------------+------------------------
run 2 | 25.4091 +/- 2.6123   | 23.709 +/- 1.04477
      | 349.875x             | 374.963x

Bug: webrtc:10480
Change-Id: I9a3e9164b2442114b928de506c92a547c273882f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191320
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32568}
2020-11-09 16:12:10 +00:00
c95b939667 Introduce RTC_CHECK_NOTREACHED(), an always-checking RTC_NOTREACHED()
And use it in a few places that were using RTC_CHECK(false) or FATAL()
to do the exact same job. There should be no change in behavior.

Bug: none
Change-Id: I36d5e6bcf35fd41534e08a8c879fa0811b4f1967
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191963
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32567}
2020-11-09 10:47:55 +00:00
9dfe2fce9a Replace field trials with WebRtcKeyValueConfig in SendSideBandwidthEstimate
And ad field trial flag to be able to disable RttBasedBackoff

Bug: webrtc:10335
Change-Id: Ib67d3e75787daed96e22b2c732f6839e23e4abda
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191967
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32566}
2020-11-09 09:52:05 +00:00
9c99b7964f Use SvcRateAllocator for av1
same as VP9, Av1 encoder supports spatial scalability and thus
SvcRateAllocator better fits for it than SimulcastRateAllocator

Bug: webrtc:12148
Change-Id: I3f78afb3aec00b6a8a7242fe8dce07752e7a514e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191960
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32565}
2020-11-06 10:23:17 +00:00
43ef5d99c1 Add publicly visible mock for RtpTransceiverInterface
Bug: webrtc:11642
Change-Id: Iadcaddecb9e02781e1946c37a72eeb678cd91b5b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191822
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32564}
2020-11-05 23:56:19 +00:00
60be6a9c60 Add publicly visible mocks for AudioSourceInterface and AudioTrackInterface
Bug: webrtc:11642
Change-Id: Ia8807623ea7ca2e49fc795b907aec83fd10e3305
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191821
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32563}
2020-11-05 22:34:19 +00:00
c49c7d2644 Add publicly visible mock for DataChannelInterface
Bug: webrtc:11642
Change-Id: I20fc57122fc29602028f2cc2fb27a0122117f855
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191840
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32562}
2020-11-05 22:28:48 +00:00
439ffe462a Add Presentation Mode Support for Capturing OpenOffice Impress document windows
* Add OpenOfficeApplicationHandler for MacOS and MS Windows.
* List of available sources for FullScreenWindowDetector on MacOS can include a window with empty title along with titled window for one application.
* List of available sources for FullScreenWindowDetector on MS Windows can include a window with empty title or invisible ones.

Bug: webrtc:11462
Change-Id: Id09537579ef6617dee29759c66dc9f7493166ca8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171723
Commit-Queue: Jamie Walch <jamiewalch@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Reviewed-by: Wez <wez@google.com>
Cr-Commit-Position: refs/heads/master@{#32561}
2020-11-05 21:22:19 +00:00
649648e722 Move SvcRateAllocator out of codecs/vp9 and make it not vp9 specific
to reuse it for scalable av1

Bug: webrtc:12148
Change-Id: I0d413c5466a2d66df3eea9cdf13687f4ddd1a843
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191765
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32560}
2020-11-05 18:35:37 +00:00
85fae2acc5 Fix -Wrange-loop-analysis.
The new xcode-clang in xcode 12 turns on -Wrange-loop-analysis by
default, this CL tries to fix problems caused by this.

Bug: webrtc:12134
Change-Id: I77fd9a28486690c11dceceafc4d72f131b081788
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191762
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32559}
2020-11-05 15:55:33 +00:00
5481784385 Add kill-switch to RTC event log factory.
Bug: webrtc:12084
Change-Id: Iac2c05b59a20e272fe302a5580357f6f141dc328
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/190983
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32558}
2020-11-05 14:08:02 +00:00
ce9d763302 Add new try builder configs to mb_config.pyl.
TBR=titovartem@webrtc.org

Bug: webrtc:12134
Change-Id: I2d80ed9026b0976108987a18f6a46b79676c5e0c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/191763
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32557}
2020-11-05 09:36:13 +00:00