Commit Graph

23581 Commits

Author SHA1 Message Date
a7a10a8b31 Update examples to use the new VideoCapturer interface.
Bug: webrtc:9496
Change-Id: Ifbf06d644e3758d537757cdbbc7f61bdc0fe270d
Reviewed-on: https://webrtc-review.googlesource.com/87307
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23899}
2018-07-10 09:18:55 +00:00
9bb8f80c40 Make the default severity level of RTCCallbackLogger match the comment on its header.
The comment here said it is kRTCLoggingSeverityInfo

https://cs.chromium.org/chromium/src/third_party/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCCallbackLogger.h?type=cs&q=RTCCallbacklogger&sq=package:chromium&g=0&l=23

Which is not true since objective c auto initailize all member to 0, the severity level will be verbose.


Bug: webrtc:9509
Change-Id: I894e2d8df33bf12bdf041cdee9e6dd3adef7fb12
Reviewed-on: https://webrtc-review.googlesource.com/87800
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23898}
2018-07-10 08:43:58 +00:00
1e06d885dc Migrate legacy Android video codec factories.
Prepare for building without built-in software codecs. When passing
null, inject the new type of factories but wrap them in the built-in
software codecs outside the videoengine.

Bug: webrtc:7925
Change-Id: I7408e6e46e6b9efdf346852954bf51a97e023b5c
Reviewed-on: https://webrtc-review.googlesource.com/83729
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23897}
2018-07-10 08:01:05 +00:00
ef43aafcf5 Fixed crash when PCF is destroyed before RTCRtpSender in ObjC
Bug: webrtc:9231
Change-Id: I3b90400bf619938817d7a04a7a1130ba86ad65df
Reviewed-on: https://webrtc-review.googlesource.com/87623
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23896}
2018-07-10 07:35:35 +00:00
bd216f2854 Removing /wd4245 from examples/.
Bug: webrtc:9251
Change-Id: I335648b622ba49ca4a5bd501db2fb4dad924f2ea
Reviewed-on: https://webrtc-review.googlesource.com/87143
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23895}
2018-07-10 07:14:55 +00:00
4d131e4eec Switch from int64 to int64_t.
The usage of int64 seems unintentional but it works because int64 is
defined here:
https://cs.chromium.org/chromium/src/third_party/libyuv/include/libyuv/basic_types.h?l=33&rcl=e1f6c1c0b57a9210bb95e88080fa171296210296

This CL switches to int64_t and aligns with the rest of the codebase.

Bug: None
Change-Id: I2292974dbca3692b570214d8bc790336219b151e
Reviewed-on: https://webrtc-review.googlesource.com/87700
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23894}
2018-07-10 06:20:01 +00:00
b41b11bb99 Roll chromium_revision 5ce8880baa..ef3275516a (573458:573561)
Change log: 5ce8880baa..ef3275516a
Full diff: 5ce8880baa..ef3275516a

Changed dependencies:
* src/base: 19fde59a04..a13625cac6
* src/ios: f3eb8ce122..90c50414df
* src/testing: 90c261a3c9..1165763e7e
* src/third_party: 4779a4c250..21280f5bf9
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/f6618d3f74..21acb2a822
* src/third_party/depot_tools: 92745a5b0e..c3975e55e1
* src/tools: c04857d6e1..81f121bedf
DEPS diff: 5ce8880baa..ef3275516a/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: I13ce4ab3c36bbaa6180e53bd777c081881212b0e
Reviewed-on: https://webrtc-review.googlesource.com/87801
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23893}
2018-07-10 01:18:38 +00:00
728b9b564d Adds PeerConnectionDependencies to Java API.
This change adds the base PeerConnectionDependencies structure available in the
native API to the Java API. This changelist only adds the API for the
PeerConnection.Observer which is currently the only mandatory parameter. In
a following CL this will be extended to include the SSLCertificateVerifier
allowing java code to provide an implementation of this.

Bug: webrtc:7913
Change-Id: I74c2e46988ed5cb0685ed907c1bff43867f2c48c
Reviewed-on: https://webrtc-review.googlesource.com/86180
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Benjamin Wright <benwright@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23892}
2018-07-09 23:57:05 +00:00
eed6ea4a1f Roll chromium_revision a467948082..5ce8880baa (573356:573458)
Change log: a467948082..5ce8880baa
Full diff: a467948082..5ce8880baa

Changed dependencies:
* src/base: 8839f14da1..19fde59a04
* src/ios: f4ab7d4f41..f3eb8ce122
* src/testing: 44d50a3de3..90c261a3c9
* src/third_party: 4b6ba77287..4779a4c250
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/27380b171e..f6618d3f74
* src/tools: b35866e4b8..c04857d6e1
DEPS diff: a467948082..5ce8880baa/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: I0ab8e98dd2ed2837f929ce2c8729c3e27d4a8d2e
Reviewed-on: https://webrtc-review.googlesource.com/87741
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23891}
2018-07-09 22:35:09 +00:00
99fb004f0d Remove a legacy DCHEC in FakeDecodeFromFile.
Bug: None
Change-Id: Ia76bf18eb228b658d0a7146cdb6e46586b3507a0
Reviewed-on: https://webrtc-review.googlesource.com/87435
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Minyue Li <minyue@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23890}
2018-07-09 19:56:58 +00:00
3e8cb4718b Delegate WIN32_LEAN_AND_MEAN definition to the toolchain.
The macro WIN32_LEAN_AND_MEAN is always defined by the toolchain, see
the config //build/config/win:lean_and_mean [1].

This means that WebRTC should not define it in its source files, this
causes two problems:

1. rtc_base:rtc_base_generinc needs to use /wd4005 to avoid a compiler
   warning (because the macro is redefined without checking).
2. the macro is not consistently defined before including windows.h,
   which means that WebRTC already relies on the toolchain almost
   everywhere.

[1] - https://cs.chromium.org/chromium/src/build/config/win/BUILD.gn?l=514&rcl=54f7be95955c9b35e64569c1d40e0c3dd097359c

Bug: webrtc:9251
Change-Id: I2b0b3c16856023db2a38a38f7652bb849ff283c7
Reviewed-on: https://webrtc-review.googlesource.com/87582
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23889}
2018-07-09 19:54:28 +00:00
478313fa8e Roll chromium_revision a9fbefaa78..a467948082 (573255:573356)
Change log: a9fbefaa78..a467948082
Full diff: a9fbefaa78..a467948082

Changed dependencies:
* src/base: 157288f7cd..8839f14da1
* src/ios: 724777bb91..f4ab7d4f41
* src/testing: 127004e03d..44d50a3de3
* src/third_party: 4b5255c295..4b6ba77287
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/9eaedb7fa0..27380b171e
* src/tools: 4bcd23d605..b35866e4b8
DEPS diff: a9fbefaa78..a467948082/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: I07207c18d80f9edb77e5b45ed026f0768d497674
Reviewed-on: https://webrtc-review.googlesource.com/87660
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23888}
2018-07-09 18:42:57 +00:00
7219d053d5 Split aec and aecm into separate build targets
This clarifies dependencies and makes it easier to customize builds
for different binaries.

Also adds BUILD files in aec/ and aecm/.

Moves unit tests to their own target, which subjects them to Chromium
Clang style checks.
The CL contains a fix for a thusly induced warning.

Bug: webrtc:9488
Change-Id: I77b680b42a4dccc5f025005e0890f60b4eaf2961
Reviewed-on: https://webrtc-review.googlesource.com/87304
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23887}
2018-07-09 14:48:06 +00:00
4524c74171 Removing /wd4703 from rtc_base:rtc_base_generic.
This warning suppression flag is not needed.

Bug: webrtc:9251
Change-Id: I3319e57f737d44e991ab7283647fd5522bd4bd37
Reviewed-on: https://webrtc-review.googlesource.com/87581
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23886}
2018-07-09 14:32:06 +00:00
5e4ef774de Add unit test for JavaToNativeVideoCodecInfo.
Bug: webrtc:9495
Change-Id: I8f667f81754ed299a99ddc85af8ee73b148a2335
Reviewed-on: https://webrtc-review.googlesource.com/87580
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23885}
2018-07-09 13:26:34 +00:00
08f14dd388 Fixed crash when PCF is destroyed before RTCRtpTranceiver in ObjC
Bug: webrtc:9231
Change-Id: Icecc319eaf6edd2c4b7b05fda984660412cb0d40
Reviewed-on: https://webrtc-review.googlesource.com/87439
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23884}
2018-07-09 12:14:50 +00:00
42a2fc9cba Support injecting custom native codecs from Java.
This CL extends our support for injecting native codecs such that
downstream users can create Java codecs that are backed by custom
native codecs.

After this CL, the Java codec interfaces expose
createNativeVideo{En,Decoder}() methods that may return a value
representing a pointer to the backing native codec. Previously,
a similar mechanism was used for the special case of non-public
Java codecs extending from the internal
WrappedNativeVideo{En,De}coder classes.

Tested: AppRTCMobile on Pixel XL and Pixel 2.
Bug: webrtc:9495
Change-Id: I079ff744afc7bf9873ff983e775c136a6667266d
Reviewed-on: https://webrtc-review.googlesource.com/87264
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23883}
2018-07-09 12:07:11 +00:00
c75a5e8dd6 Change test VideoProcessor kMaxBufferedInputFrames from 10 to 20.
Value 10 seems to be too small for some implementations. Updates the
value to 20. This affects VideoCodecTestFixture.

Bug: None
Change-Id: Ibbeb7cb5ef23f8ac625d37aaa764c9d245f23e9d
Reviewed-on: https://webrtc-review.googlesource.com/87562
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23882}
2018-07-09 11:56:43 +00:00
1208cbb3ec Roll chromium_revision 53ed5722bc..a9fbefaa78 (573145:573255)
Change log: 53ed5722bc..a9fbefaa78
Full diff: 53ed5722bc..a9fbefaa78

Changed dependencies:
* src/base: bda1d06b05..157288f7cd
* src/build: c2d5b911d4..4e517843d5
* src/ios: 8fdb815e30..724777bb91
* src/third_party: 16f02c4a3c..4b5255c295
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/8a075d7c37..9eaedb7fa0
* src/tools: 218677b12a..4bcd23d605
DEPS diff: 53ed5722bc..a9fbefaa78/DEPS

Clang version changed 335864:336424
Details: 53ed5722bc..a9fbefaa78/tools/clang/scripts/update.py

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: Ic2f796dfacbf56a7a32812c8a33a1e52dd7e9842
Reviewed-on: https://webrtc-review.googlesource.com/87542
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23881}
2018-07-09 10:09:10 +00:00
d497e6bd6b Lower TL0 bitrate to 40% for lowest stream when using short 3tl
Bug: webrtc:9477
Change-Id: Ie19c0cbfba80cb8043c37b04038cd10cbc90f169
Reviewed-on: https://webrtc-review.googlesource.com/87425
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23880}
2018-07-08 12:17:58 +00:00
0d405d41bd Roll chromium_revision 8e73d7c222..53ed5722bc (573045:573145)
Change log: 8e73d7c222..53ed5722bc
Full diff: 8e73d7c222..53ed5722bc

Changed dependencies:
* src/base: 87f7de05ae..bda1d06b05
* src/build: 61fee7301e..c2d5b911d4
* src/ios: 8dfacb2574..8fdb815e30
* src/testing: 6a3c6b6752..127004e03d
* src/third_party: 9ed4e4f506..16f02c4a3c
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/fec83fc78d..c7db3232c3
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/7439a1c6b1..8a075d7c37
* src/third_party/depot_tools: 5484b866dc..92745a5b0e
* src/third_party/yasm/source/patched-yasm: b98114e18d..720b70524a
* src/tools: 3adda8b9a9..218677b12a
DEPS diff: 8e73d7c222..53ed5722bc/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: Ib3aced6a38db4fbf48dccd634209575d14b847a9
Reviewed-on: https://webrtc-review.googlesource.com/87488
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23879}
2018-07-07 04:12:19 +00:00
fb994de04d Roll chromium_revision f0909821f4..8e73d7c222 (572927:573045)
Change log: f0909821f4..8e73d7c222
Full diff: f0909821f4..8e73d7c222

Changed dependencies:
* src/base: ab22ffe26a..87f7de05ae
* src/ios: 731cfbf970..8dfacb2574
* src/testing: a0609fb05c..6a3c6b6752
* src/third_party: 72a4b97963..9ed4e4f506
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/5715e9860d..7439a1c6b1
* src/third_party/freetype/src: a632fb547e..b532d7ce70
* src/tools: df958f6530..3adda8b9a9
DEPS diff: f0909821f4..8e73d7c222/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: Id623be9e3675cf580111ac9b9c499ed3575b2b14
Reviewed-on: https://webrtc-review.googlesource.com/87480
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23878}
2018-07-06 20:08:41 +00:00
bf7463b88f Android: Update tests to use new SurfaceTextureHelper interface
Bug: webrtc:9412
Change-Id: I17d2f2cb4e1271d07958c6b7f2db47960e4b39ee
Reviewed-on: https://webrtc-review.googlesource.com/87260
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23877}
2018-07-06 15:18:18 +00:00
5e898d612e Stop using VideoCodec.targetBitrate for vp8 screenshare config
This is a step toward simplifying the VideoCodec struct and removing the
targetBitrate. The hard-coded values now reside in
SimulcastRateAllocator.

A follow-up will do away with the field altogether.

Bug: webrtc:9504
Change-Id: I74d483682309d363048fbbbd31e0607d7242f504
Reviewed-on: https://webrtc-review.googlesource.com/87424
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23876}
2018-07-06 15:13:18 +00:00
2ffafa8244 Allow AGC2 level estimation in AgcManagerDirect.
This CL does the following:

1. Adds a new AdaptiveModeLevelEstimatorAgc implementation of the Agc
  interface. The new implementation differs from webrtc::Agc by
   1. using the AGC2 speech level estimator in
      GetRmsErrorDb. webrtc::Agc implements its own with help of
      webrtc::LoudnessHistogram.
   2. Doesn't forget its past at every GetRmsErrorDb call.
2. Makes AgcManagerDirect use AdaptiveModeLevelEstimatorAgc instead of
   webrtc::Agc if the use_agc2_level_estimation flag is set.

Bug: webrtc:7494
Change-Id: I8df3f52e322d433eb5ce5297f4236af2f1877b04
Reviewed-on: https://webrtc-review.googlesource.com/86603
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23875}
2018-07-06 14:18:18 +00:00
9a94057a79 Making PacketDuration always consistent with Decode in FakeDecodeFromFile.
Bug: None
Change-Id: Ib34efd629009075fdc793ab041296d2814c9677e
Reviewed-on: https://webrtc-review.googlesource.com/87380
Commit-Queue: Minyue Li <minyue@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23874}
2018-07-06 13:30:47 +00:00
ed8ff64ef7 Break out Agc code from audio_processing.
Splits 'modules/audio_processing:audio_processing' target. The files
in modules/audio_processing/agc now are in targets in that folder.

Reason for doing this was to include
modules/audio_processing/agc/agc.h from another target in the
dependent CL https://webrtc-review.googlesource.com/c/src/+/86603

This could help reducing the binary size in the future.

Bug: webrtc:7494
Change-Id: I61f50ab6d5ce24d19f4097e0f3fa8b0170010887
Reviewed-on: https://webrtc-review.googlesource.com/87422
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23873}
2018-07-06 13:29:43 +00:00
57ec685446 Unwrap TL0 pic index to avoid having to work with a wrapped number.
This is to avoid clearing the |gof_info_| map when there are jumps in the
tl0 pic index.

Bug: chromium:855211
Change-Id: I762557070d65b3c535cb9a49498975bcd9c2c485
Reviewed-on: https://webrtc-review.googlesource.com/86943
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23872}
2018-07-06 13:28:38 +00:00
d39ce8d45b Revert "IWYU: Add <cmath> for fabsf() and powf(), switch to C++ versions"
This reverts commit e90879097c7151148aaad57393967cf72d233a69.

Reason for revert: breaking downstream projects

Original change's description:
> IWYU: Add <cmath> for fabsf() and powf(), switch to C++ versions
> 
> Fix the build with libstdc++ after 496cedfe5 ("AEC3: Reverberation model:
> Changes on the decay estimation") by including the missing header:
> 
>     ../../modules/audio_processing/aec3/reverb_model_estimator.cc: In constructor ‘webrtc::ReverbModelEstimator::ReverbModelEstimator(const webrtc::EchoCanceller3Config&)’:
>     ../../modules/audio_processing/aec3/reverb_model_estimator.cc:61:21: error: ‘fabsf’ was not declared in this scope
>            reverb_decay_(fabsf(config.ep_strength.default_len)),
>                          ^~~~~
>     ../../modules/audio_processing/aec3/reverb_model_estimator.cc:61:21: note: suggested alternative: ‘labs’
>            reverb_decay_(fabsf(config.ep_strength.default_len)),
>                          ^~~~~
>                          labs
>     ../../modules/audio_processing/aec3/reverb_model_estimator.cc: In member function ‘void webrtc::ReverbModelEstimator::UpdateReverbDecay(const std::vector<float>&)’:
>     ../../modules/audio_processing/aec3/reverb_model_estimator.cc:206:15: error: ‘powf’ was not declared in this scope
>            decay = powf(2.0f, -exp_candidate * kFftLengthBy2);
>                    ^~~~
> 
> While here, also switch to the C++ versions of those functions: std::fabs()
> and std::pow() respectively.
> 
> Spotted by Jose Dapena Paz <jose.dapena@lge.com>.
> 
> Bug: chromium:819294
> Change-Id: Id803243be8dd17eac95c70a88a37ee2fe1505a5a
> Reviewed-on: https://webrtc-review.googlesource.com/87421
> Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
> Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
> Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23870}

TBR=gustaf@webrtc.org,alessiob@webrtc.org,raphael.kubo.da.costa@intel.com,devicentepena@webrtc.org

Change-Id: I22423a2d4201183f70ae084e0e21930367824f1c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:819294
Reviewed-on: https://webrtc-review.googlesource.com/87401
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23871}
2018-07-06 11:37:15 +00:00
e90879097c IWYU: Add <cmath> for fabsf() and powf(), switch to C++ versions
Fix the build with libstdc++ after 496cedfe5 ("AEC3: Reverberation model:
Changes on the decay estimation") by including the missing header:

    ../../modules/audio_processing/aec3/reverb_model_estimator.cc: In constructor ‘webrtc::ReverbModelEstimator::ReverbModelEstimator(const webrtc::EchoCanceller3Config&)’:
    ../../modules/audio_processing/aec3/reverb_model_estimator.cc:61:21: error: ‘fabsf’ was not declared in this scope
           reverb_decay_(fabsf(config.ep_strength.default_len)),
                         ^~~~~
    ../../modules/audio_processing/aec3/reverb_model_estimator.cc:61:21: note: suggested alternative: ‘labs’
           reverb_decay_(fabsf(config.ep_strength.default_len)),
                         ^~~~~
                         labs
    ../../modules/audio_processing/aec3/reverb_model_estimator.cc: In member function ‘void webrtc::ReverbModelEstimator::UpdateReverbDecay(const std::vector<float>&)’:
    ../../modules/audio_processing/aec3/reverb_model_estimator.cc:206:15: error: ‘powf’ was not declared in this scope
           decay = powf(2.0f, -exp_candidate * kFftLengthBy2);
                   ^~~~

While here, also switch to the C++ versions of those functions: std::fabs()
and std::pow() respectively.

Spotted by Jose Dapena Paz <jose.dapena@lge.com>.

Bug: chromium:819294
Change-Id: Id803243be8dd17eac95c70a88a37ee2fe1505a5a
Reviewed-on: https://webrtc-review.googlesource.com/87421
Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23870}
2018-07-06 11:03:41 +00:00
b2daaaacbd Update capturer/test code to use the new interface VideoCapturer.
Bug: webrtc:9496
Change-Id: I9adf2c341b831820bbe71f2511616b629c9e1acc
Reviewed-on: https://webrtc-review.googlesource.com/87306
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23869}
2018-07-06 10:42:11 +00:00
05b552f76a Deprecate PeerConnectionFactory#createVideoSource(VideoCapturer).
This is done in preparation of moving VideoCapturer out of
video_api_java. Clients should update to using
createVideoSource(boolean).

CapturerObserver is moved to a separate file because it needs to stay
in video_api_java to allow VideoSource to depend on it.

Bug: webrtc:9496
Change-Id: I3c93f6bc4df553919dcbe05b00ef4c68f2c9ab60
Reviewed-on: https://webrtc-review.googlesource.com/87305
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23868}
2018-07-06 10:35:46 +00:00
80e7a7fd1a Android: Output VideoFrames from SurfaceTextureHelper
Bug: webrtc:9412
Change-Id: Iffc8dae2fdfb8d7e5c730b433614b7aa30ceb55b
Reviewed-on: https://webrtc-review.googlesource.com/83943
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23867}
2018-07-06 10:34:41 +00:00
419b6dc691 Roll chromium_revision b2695df06e..f0909821f4 (572823:572927)
Change log: b2695df06e..f0909821f4
Full diff: b2695df06e..f0909821f4

Changed dependencies:
* src/base: b6d7d6a748..ab22ffe26a
* src/build: 911a0c5b4f..61fee7301e
* src/ios: 302107483c..731cfbf970
* src/testing: 24e28fb08e..a0609fb05c
* src/third_party: 110ded36b2..72a4b97963
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/8355b184a5..5715e9860d
* src/third_party/harfbuzz-ng/src: 957e775663..058708a665
* src/tools: 32290434c1..df958f6530
DEPS diff: b2695df06e..f0909821f4/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: I4a56db65faa0c12aaa3a49c9dcfd2ce08f055d5c
Reviewed-on: https://webrtc-review.googlesource.com/87376
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23866}
2018-07-06 10:16:21 +00:00
bfd44e0837 Add JavaToNativeVideoCodecInfo to native API.
This conversion function is useful for downstream native codecs
which want to take a VideoCodecInfo in the Java wrapper and use it
as a SdpVideoFormat in the C++ object.

Bug: webrtc:9495
Change-Id: Id2ece708eafd4be648fafff9e94aa13ace504bdf
Reviewed-on: https://webrtc-review.googlesource.com/87381
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23865}
2018-07-06 09:32:51 +00:00
282dad1943 Revert "IWYU: Add <math.h> for fabsf() and powf()"
This reverts commit 7d47525e8bc11d0e401c2180e0222c1858f8e134.

Reason for revert: breaking downstream projects

Original change's description:
> IWYU: Add <math.h> for fabsf() and powf()
> 
> Fix the build with libstdc++ after 496cedfe5 ("AEC3: Reverberation model:
> Changes on the decay estimation") by including the missing header:
> 
>     ../../modules/audio_processing/aec3/reverb_model_estimator.cc: In constructor ‘webrtc::ReverbModelEstimator::ReverbModelEstimator(const webrtc::EchoCanceller3Config&)’:
>     ../../modules/audio_processing/aec3/reverb_model_estimator.cc:61:21: error: ‘fabsf’ was not declared in this scope
>            reverb_decay_(fabsf(config.ep_strength.default_len)),
>                          ^~~~~
>     ../../modules/audio_processing/aec3/reverb_model_estimator.cc:61:21: note: suggested alternative: ‘labs’
>            reverb_decay_(fabsf(config.ep_strength.default_len)),
>                          ^~~~~
>                          labs
>     ../../modules/audio_processing/aec3/reverb_model_estimator.cc: In member function ‘void webrtc::ReverbModelEstimator::UpdateReverbDecay(const std::vector<float>&)’:
>     ../../modules/audio_processing/aec3/reverb_model_estimator.cc:206:15: error: ‘powf’ was not declared in this scope
>            decay = powf(2.0f, -exp_candidate * kFftLengthBy2);
>                    ^~~~
> 
> Spotted by Jose Dapena Paz <jose.dapena@lge.com>.
> 
> Bug: chromium:819294
> Change-Id: If992e5e473b9d4d0c1b3c1006c3816b7c4eee296
> Reviewed-on: https://webrtc-review.googlesource.com/87241
> Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
> Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
> Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa@intel.com>
> Cr-Commit-Position: refs/heads/master@{#23863}

TBR=gustaf@webrtc.org,alessiob@webrtc.org,raphael.kubo.da.costa@intel.com,devicentepena@webrtc.org

Change-Id: I8adcec57d67de2efcbf0ebef0cdb700fcc21689a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:819294
Reviewed-on: https://webrtc-review.googlesource.com/87400
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23864}
2018-07-06 09:18:22 +00:00
7d47525e8b IWYU: Add <math.h> for fabsf() and powf()
Fix the build with libstdc++ after 496cedfe5 ("AEC3: Reverberation model:
Changes on the decay estimation") by including the missing header:

    ../../modules/audio_processing/aec3/reverb_model_estimator.cc: In constructor ‘webrtc::ReverbModelEstimator::ReverbModelEstimator(const webrtc::EchoCanceller3Config&)’:
    ../../modules/audio_processing/aec3/reverb_model_estimator.cc:61:21: error: ‘fabsf’ was not declared in this scope
           reverb_decay_(fabsf(config.ep_strength.default_len)),
                         ^~~~~
    ../../modules/audio_processing/aec3/reverb_model_estimator.cc:61:21: note: suggested alternative: ‘labs’
           reverb_decay_(fabsf(config.ep_strength.default_len)),
                         ^~~~~
                         labs
    ../../modules/audio_processing/aec3/reverb_model_estimator.cc: In member function ‘void webrtc::ReverbModelEstimator::UpdateReverbDecay(const std::vector<float>&)’:
    ../../modules/audio_processing/aec3/reverb_model_estimator.cc:206:15: error: ‘powf’ was not declared in this scope
           decay = powf(2.0f, -exp_candidate * kFftLengthBy2);
                   ^~~~

Spotted by Jose Dapena Paz <jose.dapena@lge.com>.

Bug: chromium:819294
Change-Id: If992e5e473b9d4d0c1b3c1006c3816b7c4eee296
Reviewed-on: https://webrtc-review.googlesource.com/87241
Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa@intel.com>
Cr-Commit-Position: refs/heads/master@{#23863}
2018-07-06 08:34:21 +00:00
5abfb00bf2 Removing useless import of arm.gni
Bug: None
Change-Id: I2915890f72051e1d4f042735f952d36bda6a4141
Reviewed-on: https://webrtc-review.googlesource.com/87382
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23862}
2018-07-06 08:27:41 +00:00
f91d70bc25 Roll chromium_revision 39b1860428..b2695df06e (572705:572823)
Change log: 39b1860428..b2695df06e
Full diff: 39b1860428..b2695df06e

Changed dependencies:
* src/base: 190ca34865..b6d7d6a748
* src/build: 0cc28952ad..911a0c5b4f
* src/ios: 30df90fa70..302107483c
* src/testing: caff2642b8..24e28fb08e
* src/third_party: 387fe8be07..110ded36b2
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/82213060d5..8355b184a5
* src/tools: b1bad47542..32290434c1
DEPS diff: 39b1860428..b2695df06e/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: I0f18870096e497f25ec4c6f7d777afa51d3487a9
Reviewed-on: https://webrtc-review.googlesource.com/87360
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23861}
2018-07-05 18:08:29 +00:00
b2e176522e Create separate build targets for utility/ in APM
This clarifies the dependencies of utility/ a lot (spoiler:
there are very few) and makes it easier to separate the build
targets for aecm and aec2.

Bug: webrtc:9488
Change-Id: If916f86e80c19d1b650d0908fbe8343ea7c47bd7
Reviewed-on: https://webrtc-review.googlesource.com/87141
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23860}
2018-07-05 15:46:28 +00:00
426d5b75bb Revert "Reland "Unit test for case where the number of active and configured spatial""
This reverts commit e144f7fb83956b59297bffccc821e465699d8ae2.

Reason for revert: downstream project failures

Original change's description:
> Reland "Unit test for case where the number of active and configured spatial"
> 
> This reverts commit 425193b4a92f0df1f3fbea3626b9abf6a38f67ec.
> 
> Reason for revert: <INSERT REASONING HERE>
> 
> Original change's description:
> > Revert "Unit test for case where the number of active and configured spatial"
> > 
> > This reverts commit 5eb6045ce5754ce815929c54dd27ab0bf3ae62ba.
> > 
> > Reason for revert: Test breaks downstream.
> > 
> > Original change's description:
> > > Unit test for case where the number of active and configured spatial
> > > layers differ.
> > > 
> > > Bug: webrtc:9472
> > > Change-Id: I5cf292a12d73777ca0fd5771eb1a4756626f640c
> > > Reviewed-on: https://webrtc-review.googlesource.com/85644
> > > Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
> > > Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> > > Commit-Queue: Michael Horowitz <mhoro@webrtc.org>
> > > Cr-Commit-Position: refs/heads/master@{#23782}
> > 
> > TBR=brandtr@webrtc.org,ssilkin@webrtc.org,mhoro@webrtc.org
> > 
> > Change-Id: Ib97cdb127e79ee969f7cb3f931cb7bd533f13af0
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Bug: webrtc:9472
> > Reviewed-on: https://webrtc-review.googlesource.com/86320
> > Reviewed-by: Björn Terelius <terelius@webrtc.org>
> > Commit-Queue: Björn Terelius <terelius@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#23785}
> 
> TBR=brandtr@webrtc.org,terelius@webrtc.org,ssilkin@webrtc.org,mhoro@webrtc.org
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: webrtc:9472
> Change-Id: I796909c553702a0fa19e5e16e4586f915569b134
> Reviewed-on: https://webrtc-review.googlesource.com/87220
> Reviewed-by: Michael Horowitz <mhoro@webrtc.org>
> Commit-Queue: Michael Horowitz <mhoro@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#23847}

TBR=brandtr@webrtc.org,terelius@webrtc.org,ssilkin@webrtc.org,mhoro@webrtc.org

Change-Id: Iedd3a25d8a40fa6a406fd8e5394031beee4206ed
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9472
Reviewed-on: https://webrtc-review.googlesource.com/87340
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23859}
2018-07-05 14:53:38 +00:00
51f4014acd AEC3: Slower adaptation of main filter
The main filter is adapted at a lower rate which reduces the risk of
diverging during double talk. The change yields notable transparency
improvements.

Bug: webrtc:9497
Change-Id: Ib23b7a4055d313dede535d2b65dc7e023a2db042
Reviewed-on: https://webrtc-review.googlesource.com/87300
Reviewed-by: Jesus de Vicente Pena <devicentepena@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23858}
2018-07-05 14:37:27 +00:00
0f5dc8b5f3 Limit input size to iSAC and iLBC decoder fuzzers
The size limit is set to correspond to approximately 5 seconds of
decoded audio at the codecs' normal operating bitrates. This is to
avoid timeouts on the bots.

NOTRY=true

Bug: chromium:840115
Change-Id: I74b3c196259e03981aa2c4ef349e6e1334e9bf58
Reviewed-on: https://webrtc-review.googlesource.com/87302
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23857}
2018-07-05 14:30:12 +00:00
5ab67a5d71 Add accessors to the types in the RTPVideoTypeHeader in RTPVideoHeader.
This CL is in preparation to change the RTPVideoTypeHeader into an absl::variant.

Bug: none
Change-Id: I1672d866df0395f3417d8e278cc67f017ab0ff98
Reviewed-on: https://webrtc-review.googlesource.com/87261
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23856}
2018-07-05 14:29:07 +00:00
011dc6427a Remove RTPTypeHeader union and use RTPVideoHeader directly.
Bug: none
Change-Id: I2abd7d1cfb423ca989158167eb0502b44bc3a04a
Reviewed-on: https://webrtc-review.googlesource.com/87103
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23855}
2018-07-05 13:52:27 +00:00
c480e9d7a8 Stereo in APM fuzzer.
Add support for stereo in APM fuzzer.

Bug: webrtc:9413
Change-Id: Ie4b19037bd4613c050b03ad0bacf0f44f9feccd3
Reviewed-on: https://webrtc-review.googlesource.com/87221
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23854}
2018-07-05 13:28:47 +00:00
b4918dad6a Android: Deprecated custom matrix helper functions in RendererCommon
All usage of these functions should be migrated to use
android.opengl.Matrix instead.

Bug: webrtc:9487
Change-Id: I023761b31cae7e7af9b537928b849657baa5bb8b
Reviewed-on: https://webrtc-review.googlesource.com/87263
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23853}
2018-07-05 12:16:34 +00:00
d97b862593 Field trial to initialize throughput estimate faster.
The current acknowledged bitrate (i.e. throughput) estimator takes 500ms
to initialize. This CL creates a field trial to experiment with this
arbitrary initialization time.

Bug: webrtc:9492, webrtc:7746
Change-Id: I8a803f7bc0ee78856e808e289f37bab57d763efa
Reviewed-on: https://webrtc-review.googlesource.com/87145
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23852}
2018-07-05 12:14:04 +00:00
783c6e3a72 Android camera: Replace custom matrix operations with android.opengl.Matrix
Bug: webrtc:9412, webrtc:9487
Change-Id: I68e5a03026b1ab8236a05ece79690d4a8755c093
Reviewed-on: https://webrtc-review.googlesource.com/86947
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23851}
2018-07-05 12:02:24 +00:00
918f50c5d1 Use absl::make_unique and absl::WrapUnique directly
Instead of going through our wrappers in ptr_util.h.

This CL was generated by the following script:

  git grep -l ptr_util | xargs perl -pi -e 's,#include "rtc_base/ptr_util.h",#include "absl/memory/memory.h",'
  git grep -l MakeUnique | xargs perl -pi -e 's,\b(rtc::)?MakeUnique\b,absl::make_unique,g'
  git grep -l WrapUnique | xargs perl -pi -e 's,\b(rtc::)?WrapUnique\b,absl::WrapUnique,g'
  git checkout -- rtc_base/ptr_util{.h,_unittest.cc}
  git cl format

Followed by manually adding dependencies on
//third_party/abseil-cpp/absl/memory until `gn check` stopped
complaining.

Bug: webrtc:9473
Change-Id: I89ccd363f070479b8c431eb2c3d404a46eaacc1c
Reviewed-on: https://webrtc-review.googlesource.com/86600
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23850}
2018-07-05 10:59:49 +00:00