Commit Graph

26466 Commits

Author SHA1 Message Date
32232e92f3 Add spatial layers support to video analyze pipeline.
To support analyze of spatial layers we will continue sending them
into the network on encoder side, but will mark which should be then
discarded and which should be processed. On decoder side we will drop
layers, if they should be discarded and decode only parts, that
should be processed.

Bug: webrtc:10138
Change-Id: Ic8b8fe7787674c0ec49b879fcc29e54e8e3d787f
Reviewed-on: https://webrtc-review.googlesource.com/c/123185
Reviewed-by: Peter Slatala <psla@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26784}
2019-02-20 22:05:15 +00:00
8e689203e0 Roll chromium_revision 554be8c5f4..919d2e8241 (633687:633811)
Change log: 554be8c5f4..919d2e8241
Full diff: 554be8c5f4..919d2e8241

Changed dependencies
* src/base: 5cc6e87244..95bf368258
* src/build: 2a59d4809e..3f1b1905cb
* src/ios: 80ba3017cf..5d1bdc4bc9
* src/testing: 56c95dc50e..8e7cedf875
* src/third_party: a3ec565a08..ad25d46ae9
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/9eb094567b..e8ab7db4d4
* src/third_party/depot_tools: 9e3080f52c..177cd13347
* src/tools: ad6fe727cb..5ec99dd1ef
DEPS diff: 554be8c5f4..919d2e8241/DEPS

No update to Clang.

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

Change-Id: I9373aa2d66381160b8c5eead34faab252d75bdc4
Reviewed-on: https://webrtc-review.googlesource.com/c/123622
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@{#26783}
2019-02-20 20:00:31 +00:00
47cf5eaca4 Migrate gcd task queue implementation to TaskQueueBase interface
Bug: webrtc:10191
Change-Id: If15138f97445484668d3e42f3a35875521c38545
Reviewed-on: https://webrtc-review.googlesource.com/c/122501
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26782}
2019-02-20 17:08:53 +00:00
f5d8808d93 Remove Analyzers struct.
Bug: webrtc:10138
Change-Id: I85d60a0e82c48cf537b9c36d726389edaaa9f060
Reviewed-on: https://webrtc-review.googlesource.com/c/123520
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26781}
2019-02-20 16:04:09 +00:00
22f9925b3e webrtc: Remove semicolons.
Bug: chromium:926235
Change-Id: I66c10ab3df38adf87152d1f18cc8162afedca7e4
Reviewed-on: https://webrtc-review.googlesource.com/c/123560
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26780}
2019-02-20 16:02:59 +00:00
af623ae7f8 Delete unused file mock_video_codec_interface.h
And corresponding build target.

Bug: None
Change-Id: Ic2915a316d2762367e089b6f8e16b502ea51a61a
Reviewed-on: https://webrtc-review.googlesource.com/c/123198
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26779}
2019-02-20 15:35:25 +00:00
d36a815d68 Remove the deprecated CreateProbeClusters method
Bug: None
Change-Id: Ifad8103d5a7c4e99ef7a29e2cec02885854d141c
Reviewed-on: https://webrtc-review.googlesource.com/c/123262
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Peter Slatala <psla@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26778}
2019-02-20 15:33:47 +00:00
8b3db59b6e Revert "Reland of https://webrtc-review.googlesource.com/c/src/+/114883"
This reverts commit 5341aaccdb64e3336abf5875e8828222446adffa.

Reason for revert: Order of initialization of global static strings.

Original change's description:
> Reland of https://webrtc-review.googlesource.com/c/src/+/114883
> 
> The difference to the original is new bitexactness strings AND
> global static file string constants. The reason for reland is breaking
> downstream projects.
> 
> Original CL description:
> 
> Tests for multi-stream Opus.
> 
> This CL (mainly) adds bit-exactness tests for multi-stream Opus. The
> tests are in audio_coding_unittest.cc. Some refactoring of
> AcmSendTestOldApi, AcmSenderBitExactnessOldApi is done to make it
> possible. A few checks for "channels \in {1, 2}" are replaced with
> "channels \in {1, 2, 4, 6, 8}" in the WebRTC Opus codec wrapper. A few
> other changes are made to be able to write and read multi-channel WAV
> files.
> 
> The SDP changes are NOT included; as of this CL there is no way to set
> up a multi-stream opus en/de-coder from SDP strings.
> 
> Bug: webrtc:8649
> Change-Id: I9fd47c790c241c1876c4a731b0840bec30b4f1b2
> Reviewed-on: https://webrtc-review.googlesource.com/c/123387
> Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
> Commit-Queue: Alex Loiko <aleloi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#26774}

TBR=aleloi@webrtc.org,ossu@webrtc.org

Change-Id: I88060f2050ccee83d6091b042a10f79b3c4edc47
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8649
Reviewed-on: https://webrtc-review.googlesource.com/c/123580
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26777}
2019-02-20 15:17:49 +00:00
01fe309803 Do not use RtcEventLogs in media transport when used only for data channel.
It is possible to get event logs from both RTP and MediaTransport when
media transport is only used for data channel. This is undesirable. We
would rather not get any logs from media transport when it's not used
for media.

This change disables rtc event log when media transport is not used for
media.

Bug: webrtc:9719
Change-Id: Ibc660b37c5d98001144e5f68b32f0608fd6ede33
Reviewed-on: https://webrtc-review.googlesource.com/c/123260
Commit-Queue: Peter Slatala <psla@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26776}
2019-02-20 15:16:37 +00:00
ce27875b83 [AndroidAudioRecord] Added audio format parameter to configure AudioRecord - JavaAudioDeviceModule
Added audio format field and set method to Builder. - WebRTCAudioRecord. Added audio format field, added to constructor. Default audio format value AudioFormat.ENCODING_PCM_16BIT. initRecord(), added how to calculate bytesPerFrame, depends on audioFormat.

First commit and contribution, updated AUTHORS file

Bug: None
Change-Id: I16f660d42350ec9ce2e329b239bd7f6324e76dfe
Reviewed-on: https://webrtc-review.googlesource.com/c/122302
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26775}
2019-02-20 15:08:53 +00:00
5341aaccdb Reland of https://webrtc-review.googlesource.com/c/src/+/114883
The difference to the original is new bitexactness strings AND
global static file string constants. The reason for reland is breaking
downstream projects.

Original CL description:

Tests for multi-stream Opus.

This CL (mainly) adds bit-exactness tests for multi-stream Opus. The
tests are in audio_coding_unittest.cc. Some refactoring of
AcmSendTestOldApi, AcmSenderBitExactnessOldApi is done to make it
possible. A few checks for "channels \in {1, 2}" are replaced with
"channels \in {1, 2, 4, 6, 8}" in the WebRTC Opus codec wrapper. A few
other changes are made to be able to write and read multi-channel WAV
files.

The SDP changes are NOT included; as of this CL there is no way to set
up a multi-stream opus en/de-coder from SDP strings.

Bug: webrtc:8649
Change-Id: I9fd47c790c241c1876c4a731b0840bec30b4f1b2
Reviewed-on: https://webrtc-review.googlesource.com/c/123387
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26774}
2019-02-20 14:57:01 +00:00
d5e02f0b92 Delete redundant members from VCMPacket.
The values are available as part of the RTPVideoHeader member.

Bug: None
Change-Id: I832fffc449929badec3796d7096c9cdc0d43d344
Reviewed-on: https://webrtc-review.googlesource.com/c/123234
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26773}
2019-02-20 14:39:10 +00:00
4d2367a69e Removes broken frame matching code in scenario quality stats.
The  timestamps doesn't always match properly, currently causing
flakiness and crashes. Pending a better solution we'll assume that
no frames are lost.

Bug: webrtc:9510
Change-Id: I1b0a5025ac9a45c71b611bcddbbad7a8cf385e01
Reviewed-on: https://webrtc-review.googlesource.com/c/123483
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26772}
2019-02-20 14:20:42 +00:00
b35baccd6f Fix NetEq minimum and maximum delay always reset on acm creation.
Bug: webrtc:10305
Change-Id: Iecc55c3b4bb8416e2fd0cf26532b43dcd70a7cca
Reviewed-on: https://webrtc-review.googlesource.com/c/122280
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Commit-Queue: Ruslan Burakov <kuddai@google.com>
Cr-Commit-Position: refs/heads/master@{#26771}
2019-02-20 14:04:51 +00:00
8073db6d89 Roll chromium_revision 4b3282a5d6..554be8c5f4 (633587:633687)
Change log: 4b3282a5d6..554be8c5f4
Full diff: 4b3282a5d6..554be8c5f4

Changed dependencies
* src/base: 490bd81aee..5cc6e87244
* src/build: e10103234b..2a59d4809e
* src/ios: 76d1bccd89..80ba3017cf
* src/third_party: 603681b29c..a3ec565a08
* src/third_party/depot_tools: 9d686bcef5..9e3080f52c
* src/tools: 0939fb6249..ad6fe727cb
DEPS diff: 4b3282a5d6..554be8c5f4/DEPS

No update to Clang.

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

Change-Id: I30d0bf50c69830d5d76e1b0d2380116b102ee83e
Reviewed-on: https://webrtc-review.googlesource.com/c/123469
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@{#26770}
2019-02-20 13:51:21 +00:00
76d7ce2752 Disabling flaky RecievesVp8SimulcastFrames test.
Bug: webrtc:9510
Change-Id: Id9c52ff3d3880051053e04e6565149c3a3e594ea
Reviewed-on: https://webrtc-review.googlesource.com/c/123196
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26769}
2019-02-20 13:38:11 +00:00
dd1cc982e4 Reland "Update VP9EncoderImpl to use EncodedImage::Allocate"
This is a reland of e12778cb3a7c35b4d3b9d25104841dccd67dc59b
Performance regressions should be addressed by
cl https://webrtc-review.googlesource.com/c/123442

Original change's description:
> Update VP9EncoderImpl to use EncodedImage::Allocate
>
> Bug: webrtc:9378
> Change-Id: I009138b4dc50c4ceb8f94fee6a958bbfa4d7e326
> Reviewed-on: https://webrtc-review.googlesource.com/c/121771
> Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> Reviewed-by: Philip Eliasson <philipel@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#26593}

Bug: webrtc:9378
Change-Id: I37a28574741fd50d03a80a01a8f9fe7596e31d6f
Reviewed-on: https://webrtc-review.googlesource.com/c/123484
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26768}
2019-02-20 13:19:17 +00:00
109b5fb5f5 Revert "Extend TransportSequenceNumber RTP header extension"
This reverts commit 28c7362bc485d22bdc8c744bc725022780187a96.

Reason for revert: It breaks Linux64 Release (libfuzzer):
https://logs.chromium.org/logs/webrtc/buildbucket/cr-buildbucket.appspot.com/8921003137877469920/+/steps/compile/0/stdout

Original change's description:
> Extend TransportSequenceNumber RTP header extension
> 
> Extend TransportSequenceNumber RTP header extension to support
> feedback on sender request.
> 
> Bug: webrtc:10262
> Change-Id: Ibc1cf18162d15cd102e951c9dc697d8ea536ebb6
> Reviewed-on: https://webrtc-review.googlesource.com/c/123233
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Reviewed-by: Alex Loiko <aleloi@webrtc.org>
> Commit-Queue: Johannes Kron <kron@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#26766}

TBR=danilchap@webrtc.org,aleloi@webrtc.org,kron@webrtc.org

Change-Id: Ie8a73f5fdffd99919ceaa1ae8911a1645f2077e9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:10262
Reviewed-on: https://webrtc-review.googlesource.com/c/123522
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26767}
2019-02-20 13:11:54 +00:00
28c7362bc4 Extend TransportSequenceNumber RTP header extension
Extend TransportSequenceNumber RTP header extension to support
feedback on sender request.

Bug: webrtc:10262
Change-Id: Ibc1cf18162d15cd102e951c9dc697d8ea536ebb6
Reviewed-on: https://webrtc-review.googlesource.com/c/123233
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26766}
2019-02-20 12:23:45 +00:00
3f6bf3a4ab Clarify that pacing rate is based on raw target rate
Change-Id: Ib9cc068c88f45536ea5d9d0a84fab9da8f963131
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/123050
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26765}
2019-02-20 10:59:29 +00:00
5fbebd585e Adds support for VP8 simulcast to scenario tests.
Bug: webrtc:9510
Change-Id: Ice98e7bd98a1a8e4fd3b1a1c7c053a65de3f56e3
Reviewed-on: https://webrtc-review.googlesource.com/c/123380
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26764}
2019-02-20 10:51:39 +00:00
ccb9b759c5 Create version 01 of Generic Frame Descriptor - with discardability flag
The discardability flag denotes whether the frame may be dropped by
the decoder with no effect on the decodability of subsequent frames.

Bug: webrtc:10214
Change-Id: I3654951d8863b50effe9670b8d1d7eb051240039
Reviewed-on: https://webrtc-review.googlesource.com/c/122241
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26763}
2019-02-20 10:31:58 +00:00
0b2150c884 Add a task queue into pc e2e fixture implementation
Bug: webrtc:10138
Change-Id: I0337df78c601cac2b5f2749e15369bd87221134d
Reviewed-on: https://webrtc-review.googlesource.com/c/123446
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26762}
2019-02-20 10:12:48 +00:00
e82643fb9c Fix FFT output size to avoid incorrect band energy computation
The FFT output buffers sizes in SpectralFeaturesExtractor have been reduced
from N to N/2+1, where N is the audio frame size. This is required since
ComputeBandEnergies() currently calls ComputeBandCoefficients() indicating
a higher value for max_freq_bin_index, hence polluting the higher bands with
unwanted energy (coming from the symmetric conjugate copy of the Fourier
coefficients).

Bug: webrtc:10332
Change-Id: Ie080050c4f357fa95e256cf2a6bf572222e8ca44
Reviewed-on: https://webrtc-review.googlesource.com/c/123239
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Pablo Barrera González <barrerap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26761}
2019-02-20 09:08:49 +00:00
cc26fef5b2 Use a CopyOnWriteBuffer to back EncodedImage data
Intended to make copy construction and assignment of EncodedImage
cheaper, but otherwise not have any effect on users of the class.

Bug: webrtc:9378, chromium:931692
Change-Id: I22cf8c05f6ef7b7b5cf7ef08fd0dfc5c61211196
Reviewed-on: https://webrtc-review.googlesource.com/c/123442
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26760}
2019-02-20 07:41:51 +00:00
0d4869c2b9 Roll chromium_revision d723882358..4b3282a5d6 (633435:633587)
Change log: d723882358..4b3282a5d6
Full diff: d723882358..4b3282a5d6

Changed dependencies
* src/base: 1cf8a34c0d..490bd81aee
* src/build: d10a37b464..e10103234b
* src/buildtools: 97f503c698..daac513c76
* src/ios: a68d2f760a..76d1bccd89
* src/testing: 38cef44cf2..56c95dc50e
* src/third_party: c8b3c8de50..603681b29c
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/770b18b65e..9eb094567b
* src/third_party/depot_tools: 56770213e7..9d686bcef5
* src/tools: bfb2287ba1..0939fb6249
* src/tools/swarming_client: 0e3e1c4dc4..d50a88f507
DEPS diff: d723882358..4b3282a5d6/DEPS

No update to Clang.

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

Change-Id: I9822396f6eebd85c069b41943b2bf9a555d36b8c
Reviewed-on: https://webrtc-review.googlesource.com/c/123461
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@{#26759}
2019-02-20 05:43:49 +00:00
ea7ef2ad1d Refactoring RtpSenderInternal to share implementation for Audio & Video.
Most of the implementation in rtp_sender.cc is a copy paste for both
Audio & Video RTP senders. This change moves all the common behavior
into the base RtpSenderInternal class.
Template method pattern is used to accomodate for the very slight differences
between audio and video senders.

Bug: None
Change-Id: I6d4e93cd32fbb0fb361fd0e1883791019bde9a92
Reviewed-on: https://webrtc-review.googlesource.com/c/123411
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Commit-Queue: Amit Hilbuch <amithi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26758}
2019-02-20 01:23:04 +00:00
ba63cafe27 Roll chromium_revision 086bdb74b2..d723882358 (633288:633435)
Change log: 086bdb74b2..d723882358
Full diff: 086bdb74b2..d723882358

Changed dependencies
* src/base: 356e86126a..1cf8a34c0d
* src/build: 11b5de2694..d10a37b464
* src/buildtools: 6b05562fca..97f503c698
* src/buildtools/third_party/libc++/trunk: e713cc0acf..22d3f6dd25
* src/buildtools/third_party/libc++abi/trunk: 307bb62985..0d529660e3
* src/ios: 5b8c3d54f0..a68d2f760a
* src/testing: 9fc76bbe83..38cef44cf2
* src/third_party: 71d1f10eca..c8b3c8de50
* src/third_party/depot_tools: 5c00a22f22..56770213e7
* src/third_party/icu: 07e7295d96..960f195aa8
* src/tools: 9caa305716..bfb2287ba1
DEPS diff: 086bdb74b2..d723882358/DEPS

No update to Clang.

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

Change-Id: I5e6d01d9bc5d020b00d8a6b76622b03f0cafcb55
Reviewed-on: https://webrtc-review.googlesource.com/c/123413
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@{#26757}
2019-02-20 00:20:40 +00:00
2297d3311a Rejected simulcast layers will no longer appear in GetParameters().
Added a layer in RtpSender that bridges the gap between the layers
that the user sees and the layer that the media engine sees.
Media engine still maintains the invariant that the number of layers
cannot be changed, while RtpSender adds and removes layers between
the user GetParameters and SetParameters calls and the media engine.

Bug: webrtc:10251
Change-Id: I33839c1f9a9052cb6130253e5a582606f2cbe54a
Reviewed-on: https://webrtc-review.googlesource.com/c/122641
Commit-Queue: Amit Hilbuch <amithi@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26756}
2019-02-19 22:01:53 +00:00
4e7058e621 desktopCaptuer: exempt to overlapping between hidden taskbar and maximized target
On Windows 10, the hidden taskbar won't be totally hidden, but having a
2 pixel margin on the screen. While a maximized app window will use up
the full screen, there will be overlapping between a hidden taskbar and
a maximized app window, which will impact window capture to that
maximized window. If the target window doesn't support GDI methods well,
the capture may be black (i.e. Chrome) or still (i.e. Word).

Because there is no solid way to identify a hidden taskbar window, we
have to make an exemption to the overlapping to a maximized window is
2-pixel X screen-width/height, which is thin enough to be noticed in
the cropping result.

Bug: chromium:838062
Change-Id: I9e0fbdf43b4445ca9fbbf5ed43bb266ae726a5b8
Reviewed-on: https://webrtc-review.googlesource.com/c/123261
Commit-Queue: Brave Yao <braveyao@webrtc.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#26755}
2019-02-19 21:03:10 +00:00
0e449072ba Roll chromium_revision 55c117dd14..086bdb74b2 (633171:633288)
Change log: 55c117dd14..086bdb74b2
Full diff: 55c117dd14..086bdb74b2

Changed dependencies
* src/ios: f95f9c90a5..5b8c3d54f0
* src/testing: d4f8a56efa..9fc76bbe83
* src/third_party: e3b6b30863..71d1f10eca
* src/tools: 61d06dc824..9caa305716
DEPS diff: 55c117dd14..086bdb74b2/DEPS

No update to Clang.

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

Change-Id: I0ed7a73d0aa5f1b70c0be8a8d4893e864f5be28c
Reviewed-on: https://webrtc-review.googlesource.com/c/123408
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@{#26754}
2019-02-19 17:49:03 +00:00
7abfd5678c Improve CPU utilization when encoding VP8 with two temporal layers
This CL is analogous to CL #120904.

Bug: webrtc:10314
Change-Id: Ia885a2614236f634bea934e94cfc5cc719e36792
Reviewed-on: https://webrtc-review.googlesource.com/c/122841
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Mirta Dvornicic <mirtad@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26753}
2019-02-19 15:05:31 +00:00
599d59237a Extend RemoteEstimatorProxy to support feedback on sender request.
Bug: webrtc:10263
Change-Id: I85b992eff7d1e7ed66ead4745f346ddad2977e8e
Reviewed-on: https://webrtc-review.googlesource.com/c/120800
Commit-Queue: Johannes Kron <kron@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26752}
2019-02-19 13:56:44 +00:00
a89800cae9 Parse params of 3rd spatial layer from command line.
Bug: none
Change-Id: I52cef97ac0a891bee15a5a3ef5a66549cab6237e
Reviewed-on: https://webrtc-review.googlesource.com/c/123420
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26751}
2019-02-19 13:18:11 +00:00
d8d3248d95 Reland "Delete test/constants.h"
This reverts commit 4f36b7a478c2763463c7a9ea970548ec68bc3ea6.

Reason for revert: Failing tests fixed.

Original change's description:
> Revert "Delete test/constants.h"
>
> This reverts commit 389b1672a32f2dd49af6c6ed40e8ddf394b986de.
>
> Reason for revert: Causes failure (and empty result list) in CallPerfTest.PadsToMinTransmitBitrate
>
> Original change's description:
> > Delete test/constants.h
> >
> > It's not possible to use constants.h for all RTP extensions
> > after the number of extensions exceeds 14, which is the maximum
> > number of one-byte RTP extensions. This is because some extensions
> > would have to be assigned a number greater than 14, even if the
> > test only involves 14 extensions or less.
> >
> > For uniformity's sake, this CL also edits some files to use an
> > enum as the files involved in this CL, rather than free-floating
> > const-ints.
> >
> > Bug: webrtc:10288
> > Change-Id: Ib5e58ad72c4d3756f4c4f6521f140ec59617f3f5
> > Reviewed-on: https://webrtc-review.googlesource.com/c/123048
> > Commit-Queue: Elad Alon <eladalon@webrtc.org>
> > Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> > Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> > Reviewed-by: Erik Språng <sprang@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#26728}
>
> TBR=danilchap@webrtc.org,kwiberg@webrtc.org,eladalon@webrtc.org,sprang@webrtc.org
>
> Bug: webrtc:10288, chromium:933127
> Change-Id: If1de0bd8992137c52bf0b877b3cb0a2bafc809d4
> Reviewed-on: https://webrtc-review.googlesource.com/c/123381
> Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
> Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#26744}

TBR=danilchap@webrtc.org,oprypin@webrtc.org,kwiberg@webrtc.org,eladalon@webrtc.org,sprang@webrtc.org

Change-Id: I65e391325d3a6df6db3c0739185e2002e70fb954
Bug: webrtc:10288, chromium:933127
Reviewed-on: https://webrtc-review.googlesource.com/c/123384
Reviewed-by: Elad Alon <eladalon@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26750}
2019-02-19 08:51:20 +00:00
1925b5a1d3 Delete deprecated version of AudioCodingModule::IncomingPacket
Followup to https://webrtc-review.googlesource.com/c/123188

Bug: webrtc:5876
Change-Id: Ia1cf7ebafddeb4fe2caece644739fbc2b55e4d66
Reviewed-on: https://webrtc-review.googlesource.com/c/123238
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26749}
2019-02-19 08:46:40 +00:00
1431572c53 Roll chromium_revision 0f484ff968..55c117dd14 (633071:633171)
Change log: 0f484ff968..55c117dd14
Full diff: 0f484ff968..55c117dd14

Changed dependencies
* src/base: 2661fd9a16..356e86126a
* src/ios: 0c499c8a4c..f95f9c90a5
* src/third_party: 5d278b44df..e3b6b30863
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/ede50ff4d8..770b18b65e
* src/tools: fb9973f4bc..61d06dc824
DEPS diff: 0f484ff968..55c117dd14/DEPS

No update to Clang.

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

Change-Id: If4a9a8e669c89c67f418a7d439f20c1f5bfc7ec5
Reviewed-on: https://webrtc-review.googlesource.com/c/123352
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@{#26748}
2019-02-19 01:30:23 +00:00
ffd1f93a8d Revert "Tests for multi-stream Opus."
This reverts commit 9c31ac23231a3494a794b3ba0a6b018969eaa7aa.

Reason for revert: Breaks downstream project.

Original change's description:
> Tests for multi-stream Opus.
> 
> This CL (mainly) adds bit-exactness tests for multi-stream Opus. The
> tests are in audio_coding_unittest.cc. Some refactoring of
> AcmSendTestOldApi, AcmSenderBitExactnessOldApi is done to make it
> possible. A few checks for "channels \in {1, 2}" are replaced with
> "channels \in {1, 2, 4, 6, 8}" in the WebRTC Opus codec wrapper. A few
> other changes are made to be able to write and read multi-channel WAV
> files.
> 
> The SDP changes are NOT included; as of this CL there is no way to set
> up a multi-stream opus en/de-coder from SDP strings.
> 
> Bug: webrtc:8649
> Change-Id: I1d93a9b8eecc3f6e19896ff2e2ce9b63da77a23c
> Reviewed-on: https://webrtc-review.googlesource.com/c/114883
> Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
> Commit-Queue: Alex Loiko <aleloi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#26742}

TBR=aleloi@webrtc.org,ossu@webrtc.org

Change-Id: I0ac48b7320d31d3e7af33bf8714c3db6c807b82e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8649
Reviewed-on: https://webrtc-review.googlesource.com/c/123385
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26747}
2019-02-18 23:10:05 +00:00
713188010b Don't block the signaling thread during the call.
Since WebRTC stats are collected on the signaling thread, this CL moves
the wait from the signaling thread to the main thread.

Bug: webrtc:10138
Change-Id: I0e554fe82e3a4afe66b45e53032b06d533f54a39
Reviewed-on: https://webrtc-review.googlesource.com/c/123228
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26746}
2019-02-18 18:21:52 +00:00
0e1a1f9e7c Add verbose logging to encoder bitrate adjuster
Bug: webrtc:10155
Change-Id: I69a13c2c3980a2db1b2c2f75fd06e84b670745e0
Reviewed-on: https://webrtc-review.googlesource.com/c/123382
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26745}
2019-02-18 18:20:32 +00:00
4f36b7a478 Revert "Delete test/constants.h"
This reverts commit 389b1672a32f2dd49af6c6ed40e8ddf394b986de.

Reason for revert: Causes failure (and empty result list) in CallPerfTest.PadsToMinTransmitBitrate

Original change's description:
> Delete test/constants.h
>
> It's not possible to use constants.h for all RTP extensions
> after the number of extensions exceeds 14, which is the maximum
> number of one-byte RTP extensions. This is because some extensions
> would have to be assigned a number greater than 14, even if the
> test only involves 14 extensions or less.
>
> For uniformity's sake, this CL also edits some files to use an
> enum as the files involved in this CL, rather than free-floating
> const-ints.
>
> Bug: webrtc:10288
> Change-Id: Ib5e58ad72c4d3756f4c4f6521f140ec59617f3f5
> Reviewed-on: https://webrtc-review.googlesource.com/c/123048
> Commit-Queue: Elad Alon <eladalon@webrtc.org>
> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#26728}

TBR=danilchap@webrtc.org,kwiberg@webrtc.org,eladalon@webrtc.org,sprang@webrtc.org

No-Presubmit: True
Bug: webrtc:10288, chromium:933127
Change-Id: If1de0bd8992137c52bf0b877b3cb0a2bafc809d4
Reviewed-on: https://webrtc-review.googlesource.com/c/123381
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26744}
2019-02-18 18:09:22 +00:00
06c51455fc Adds support for VP9 scalability layers to scenario tests.
Bug: webrtc:9510
Change-Id: I8d2823114bc921ed3412e3abda5501ce73f5a6fb
Reviewed-on: https://webrtc-review.googlesource.com/c/123042
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26743}
2019-02-18 18:05:22 +00:00
9c31ac2323 Tests for multi-stream Opus.
This CL (mainly) adds bit-exactness tests for multi-stream Opus. The
tests are in audio_coding_unittest.cc. Some refactoring of
AcmSendTestOldApi, AcmSenderBitExactnessOldApi is done to make it
possible. A few checks for "channels \in {1, 2}" are replaced with
"channels \in {1, 2, 4, 6, 8}" in the WebRTC Opus codec wrapper. A few
other changes are made to be able to write and read multi-channel WAV
files.

The SDP changes are NOT included; as of this CL there is no way to set
up a multi-stream opus en/de-coder from SDP strings.

Bug: webrtc:8649
Change-Id: I1d93a9b8eecc3f6e19896ff2e2ce9b63da77a23c
Reviewed-on: https://webrtc-review.googlesource.com/c/114883
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26742}
2019-02-18 17:09:59 +00:00
f2727fb8d3 Adds slides support to scenario tests.
Bug: webrtc:9510
Change-Id: I793fb9dbacc916b7b1a95d2fd30683d17a37f1b5
Reviewed-on: https://webrtc-review.googlesource.com/c/123041
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26741}
2019-02-18 16:24:40 +00:00
e9652ca6ec Android: Add video processing interface
This CL adds an API for injecting video processing after the WebRTC
CPU and QP scaling step.

Bug: webrtc:10247
Change-Id: I776498e1e9113f50e953ee411bbb31f181863312
Reviewed-on: https://webrtc-review.googlesource.com/c/119953
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26740}
2019-02-18 15:46:42 +00:00
4a2d57ac43 Don't include video_bitrate_allocation.h from encoded_image.h
The needed constant kMaxSpatialLayers is now moved to
video_codec_constants.h.

Bug: webrtc:8311
Change-Id: Iefde2e0668ce6a8d262d2747ad497ae8891873f9
Reviewed-on: https://webrtc-review.googlesource.com/c/123181
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26739}
2019-02-18 14:05:27 +00:00
71aee3a116 Reland "Propagate VideoFrame::UpdateRect to encoder"
Reland with fixes for failing chromium tests.

Propagate VideoFrame::UpdateRect to encoder

Accumulate it in all places where frames can be dropped before they reach the encoder.

Reset UpdateRect in VideoBroadcaster if frame the previous frame is dropped.
No accumulation is done here since it's supposed to be a brief occasion then configuration have changed.

Original Reviewed-on: https://webrtc-review.googlesource.com/c/123102

Bug: webrtc:10310
Change-Id: I18be73f47f227d6392bf9cb220b549ced225714f
Reviewed-on: https://webrtc-review.googlesource.com/c/123230
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26738}
2019-02-18 13:44:14 +00:00
f873cd9cdf Roll chromium_revision 26c36e3408..0f484ff968 (632825:633071)
Change log: 26c36e3408..0f484ff968
Full diff: 26c36e3408..0f484ff968

Changed dependencies
* src/base: 1946b941ce..2661fd9a16
* src/build: 66a84f0d61..11b5de2694
* src/buildtools: 106e9fce37..6b05562fca
* src/ios: 322a2a0310..0c499c8a4c
* src/testing: 8874a419c7..d4f8a56efa
* src/third_party: 1708b4bdfb..5d278b44df
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1f97ac96e6..ede50ff4d8
* src/third_party/depot_tools: efc7e91fa7..5c00a22f22
* src/third_party/ow2_asm: 0dcaea8bd839b3f2eb8415c327b40e8e398a373e..NNAhdJzMdnutUVqfSJm5v0tVazA9l3Dd6CRwH6N4Q5kC
* src/third_party/robolectric: Q-aurrjcIq02dl2ws-M-IhnIydurvTbUMR_xD_zBJ0YC..iRFT1e5YFmRn5cbV0cAkQ5vDUXFmQ4qPYqStmmDfiMMC
* src/third_party/robolectric/robolectric: 7e067f1112..3d6dcabf55
* src/tools: 71e14e34ff..fb9973f4bc
DEPS diff: 26c36e3408..0f484ff968/DEPS

No update to Clang.

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

Change-Id: Iec40b6aefb35f67b5256466a3f78d9a155f9b992
Reviewed-on: https://webrtc-review.googlesource.com/c/123340
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@{#26737}
2019-02-18 13:32:47 +00:00
bf47495979 Update remaining audio test code to not use WebRtcRTPHeader.
Bug: webrtc:5876
Change-Id: I5b1abcec4a0ef52b6dd36d1fe94dbfd3f88f28a7
Reviewed-on: https://webrtc-review.googlesource.com/c/123235
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26736}
2019-02-18 13:29:35 +00:00
a0b1fb9ac7 Pass H264 profile/level settings to codec.
Bug: none
Change-Id: I0587a3d7c12a779a968b8c392c3dfa91b4ad040a
Reviewed-on: https://webrtc-review.googlesource.com/c/123180
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26735}
2019-02-18 13:06:35 +00:00