Commit Graph

24314 Commits

Author SHA1 Message Date
c411cdfbc3 Output 0 instead of NaN in perftest-output.json
Subsequent recipe step requires the json to be valid.

TBR: terelius@webrtc.org
No-Try: True
Bug: webrtc:9767
Change-Id: I1b7457a147039772e2cb4dbdbc0eab3e699492be
Reviewed-on: https://webrtc-review.googlesource.com/101260
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24782}
2018-09-21 13:19:49 +00:00
3ee3c40f95 Add extra logging to roll_deps.py
This is to help debug a depot_tools auth problem and can be reverted
once it is solved.

Bug: skia:8394
Change-Id: I3c713fce6c6ba6edbd2498d95938b48a28eff588
Reviewed-on: https://webrtc-review.googlesource.com/101160
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Yves Gerey <yvesg@webrtc.org>
Commit-Queue: Eric Boren <borenet@google.com>
Cr-Commit-Position: refs/heads/master@{#24781}
2018-09-20 18:30:39 +00:00
0ad0c27a0b Roll chromium_revision cc7b9c6822..a7544fa319 (592452:592771)
Change log: cc7b9c6822..a7544fa319
Full diff: cc7b9c6822..a7544fa319

Changed dependencies
* src/base: 84eacf48e2..2b32490683
* src/build: 786a3d9178..64006c6a4c
* src/ios: e1bcf04272..7a980000c5
* src/testing: b1fa2ea487..3915e3c265
* src/third_party: e49700f62c..b7885b25e4
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/c968ea0b65..985f6fe581
* src/third_party/depot_tools: 69f640ec09..f837545214
* src/tools: 846c5a40f9..71141cd723
DEPS diff: cc7b9c6822..a7544fa319/DEPS

No update to Clang.

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

Change-Id: I148e67a7895c805a8f15141ae0d6ba7a20fae958
Reviewed-on: https://webrtc-review.googlesource.com/101124
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24780}
2018-09-20 13:20:58 +00:00
207cfdfbd8 Added support of getting coverage on mac
Bug: chromium:844647
Change-Id: Ia358d3a1dfc9a53149d68f811652f38245a0b408
Reviewed-on: https://webrtc-review.googlesource.com/101041
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Artem Titarenko <artit@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24779}
2018-09-20 07:27:55 +00:00
ee002e6185 Fix WebRTC fuzzers tests in Chromium missing field trial implementation
Follow-up to https://webrtc-review.googlesource.com/c/src/+/100940.

When WebRTC fuzzers tests are built on Chromium bots they need to link
with Chromium's implementation of field_trial.

This is for fixing the roll out WebRTC into Chromium. Example failure:
https://ci.chromium.org/p/chromium/builders/luci.chromium.try/linux-libfuzzer-asan-rel/4551

TBR=phoglund@webrtc.org

Bug: webrtc:9631
Change-Id: I353a2d293beafe016ce0c03d88e09fc5af23598f
Reviewed-on: https://webrtc-review.googlesource.com/101102
Commit-Queue: Christian Fremerey <chfremer@webrtc.org>
Reviewed-by: Christian Fremerey <chfremer@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24778}
2018-09-19 20:09:14 +00:00
3606cab8da Roll chromium_revision e4b02117a9..cc7b9c6822 (592264:592452)
Change log: e4b02117a9..cc7b9c6822
Full diff: e4b02117a9..cc7b9c6822

Changed dependencies
* src/base: 8130b147de..84eacf48e2
* src/ios: 7d51fa5227..e1bcf04272
* src/testing: fe4e1f210c..b1fa2ea487
* src/third_party: f29c2448d2..e49700f62c
* src/third_party/depot_tools: 07b5283a4e..69f640ec09
* src/tools: ae28316058..846c5a40f9
Added dependencies
* src/third_party/android_deps/libs/com_google_code_findbugs_jsr305
* src/third_party/android_deps/libs/com_google_j2objc_j2objc_annotations
* src/third_party/android_deps/libs/com_google_errorprone_error_prone_annotations
* src/third_party/android_deps/libs/org_codehaus_mojo_animal_sniffer_annotations
* src/third_party/android_deps/libs/org_checkerframework_checker_compat_qual
DEPS diff: e4b02117a9..cc7b9c6822/DEPS

No update to Clang.

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

Partial revert of 1548e9a2959360b327f57d2b2851995b9d1a397f.


Fix ANDROID_DEPS tags in DEPS file.

We need the same tags than Chromium's DEPS for detection purpose.

Also, fix format (will reduce noise in subsequent diff).

Change-Id: I8607fd00be55680d65757c1e17ab08de42b2143d
Reviewed-on: https://webrtc-review.googlesource.com/101062
Reviewed-by: Yves Gerey <yvesg@webrtc.org>
Commit-Queue: Yves Gerey <yvesg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24777}
2018-09-19 17:46:30 +00:00
31eb01faa5 Auto roller: Fix GenerateCommitMessage signature.
TODO: Add integration test.

Bug: chromium:855108
Change-Id: Ic892cd09e6712e9b7304e8b10b5fdc147b38a6bd
Reviewed-on: https://webrtc-review.googlesource.com/101040
Commit-Queue: Yves Gerey <yvesg@webrtc.org>
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24776}
2018-09-19 15:51:20 +00:00
26a6b5899f Auto roller: fix list of WEBRTC_ONLY_DEPS.
Very unfortunate typo.

Bug: chromium:855108
Change-Id: I236e8537537e7dad805d58c92f804ef021981574
Reviewed-on: https://webrtc-review.googlesource.com/101021
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Yves Gerey <yvesg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24775}
2018-09-19 14:33:40 +00:00
1548e9a295 Auto roller: don't complain about expected dependencies.
It's ok for some WebRTC dependencies not to be Chromium dependencies.
Explicitly list them instead of relying of CIDP discrimination.

Bug: chromium:855108
Change-Id: I2dafce488b28409cbce7e0c3167d92f48859084f
Reviewed-on: https://webrtc-review.googlesource.com/101000
Commit-Queue: Yves Gerey <yvesg@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24774}
2018-09-19 12:25:56 +00:00
401afd51bb Auto roller: improved tracking of android dependencies.
Until now, only revision changes were automatically rolled.
This CL detect new and removed dependencies in third_party/android_deps.

Change-Id: I4f83b7308be577115cc3ed57edd9881496428173
Bug: chromium:855108
Reviewed-on: https://webrtc-review.googlesource.com/100021
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24773}
2018-09-19 09:05:20 +00:00
3a050c2ef5 Roll chromium_revision f305d23e18..e4b02117a9 (592151:592264)
Change log: f305d23e18..e4b02117a9
Full diff: f305d23e18..e4b02117a9

Changed dependencies:
* src/build: 98abb462af..786a3d9178
* src/ios: 7e8b93c938..7d51fa5227
* src/testing: 2d06f63ab9..fe4e1f210c
* src/third_party: b3efd9b2d1..f29c2448d2
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/874b575429..c968ea0b65
* src/third_party/depot_tools: 1aa405fd85..07b5283a4e
* src/tools: ca1107c3a0..ae28316058
DEPS diff: f305d23e18..e4b02117a9/DEPS

No update to Clang.

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

Change-Id: Ifae1682f711e1d9054feea45dc2ea32c3cba8a5d
Reviewed-on: https://webrtc-review.googlesource.com/100961
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24772}
2018-09-19 00:14:27 +00:00
15212f3d4e Fix WebRTC fuzzers tests in Chromium.
When WebRTC fuzzers tests are built on Chromium bots they need to link
with Chromium's implementation of metrics.

TBR=phoglund@webrtc.org

Bug: webrtc:9631
Change-Id: I1c955e646366b6b37d3ca595888e8cc94fe1b00e
Reviewed-on: https://webrtc-review.googlesource.com/100940
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Christian Fremerey <chfremer@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24771}
2018-09-18 22:09:06 +00:00
ef8a28d498 Roll chromium_revision f37f3783a3..f305d23e18 (591975:592151)
Change log: f37f3783a3..f305d23e18
Full diff: f37f3783a3..f305d23e18

Changed dependencies:
* src/base: b560b3b3fd..8130b147de
* src/build: c4b8ad9145..98abb462af
* src/ios: c3f2faccf2..7e8b93c938
* src/testing: 411de25f6c..2d06f63ab9
* src/third_party: 041a224658..b3efd9b2d1
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/934a29ea90..874b575429
* src/third_party/depot_tools: f9b4845975..1aa405fd85
* src/tools: 9c36884e4f..ca1107c3a0
DEPS diff: f37f3783a3..f305d23e18/DEPS

No update to Clang.

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

Change-Id: Ic4475c1b24489471b29dc9992cdc2d07aa46e71b
Reviewed-on: https://webrtc-review.googlesource.com/100921
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24770}
2018-09-18 20:13:04 +00:00
f87bb46306 Restrict use of frame rate controller.
VP9 frame rate controller is supposed to be used in screen mode only
but it was partially enabled in normal video mode. This restricts use
of VP9 frame rate controller to screen mode.

Bug: chromium:884164
Change-Id: Ie2eaa31f3364a8abccbc4171007708cf7040fc38
Reviewed-on: https://webrtc-review.googlesource.com/100424
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24769}
2018-09-18 17:25:39 +00:00
33a5852829 Simplify includes in p2ptransportchannel.cc
This makes it clearer which code actually depends on the RelayPort
class.

Bug: None
Change-Id: I7b88de1824d5b5832d2f35a8820c5c59d05441c2
Reviewed-on: https://webrtc-review.googlesource.com/100801
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24768}
2018-09-18 16:59:52 +00:00
cf919422ce Prevent resolution limited max bitrate from going below min
When simulcast screenshare is enabled, the max bitrate for the high
quality stream can be limited based on the resolution.
This CL fixes a bug where that limit could get so low that it is below
the min bitrate of the top layer, which in turn could cause the encoder
to fail initialization.

Bug: webrtc:9761
Change-Id: I093bd0ba68fe0165e8982d169daf02cdf912c924
Reviewed-on: https://webrtc-review.googlesource.com/100682
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24767}
2018-09-18 13:58:55 +00:00
32ce18c062 Reland "Add RTC_EXPORT macro to export WebRTC symbols."
This is a reland of 55daf1aef65218a97eff88999e5190a2f2f6b72e.

In order to avoid problems on case insensitive file systems this CL
moves rtc_export.h to rtc_base/system (avoiding problems with build/).

Diff: https://webrtc-review.googlesource.com/c/src/+/100804/1..2.

Original change's description:
> Add RTC_EXPORT macro to export WebRTC symbols.
>
> This CL introduces the utility macro RTC_EXPORT which will let WebRTC
> developers decide which symbols are supposed to be exported/imported
> and which ones are private.
>
> RTC_EXPORT will only export/import symbols in a component build, more
> info: https://cs.chromium.org/chromium/src/docs/component_build.md.
> During a component build, the macro COMPONENT_BUILD will be globally
> defined in a consistent fashion so it is safe to rely on it to
> understand how to expand RTC_EXPORT.
> In a non component build, RTC_EXPORT will expand to nothing.
>
> Bug: webrtc:9419
> Change-Id: Ic58162783be7f5883136ade27f324d6d34fdf932
> Reviewed-on: https://webrtc-review.googlesource.com/97960
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Reviewed-by: Yves Gerey <yvesg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24757}

Bug: webrtc:9419
Change-Id: Icfedea5fc3416ea1af2185de443fa879fb2dee8b
Reviewed-on: https://webrtc-review.googlesource.com/100804
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24766}
2018-09-18 12:07:58 +00:00
080afedc49 Do not compile frame_analyzer_host during Chromium builds.
Bug: webrtc:9665
Change-Id: I42ff7a02664c3552ea31972a84f1d7d18cab13ac
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/100805
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24765}
2018-09-18 11:59:17 +00:00
ba64afbf04 Add documentation about field_trial/metrics custom impl.
Bug: webrtc:9631
Change-Id: I9bcf00f3bab980a3cd1fffa422d999643832c75c
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/100802
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24764}
2018-09-18 11:27:59 +00:00
b8c08782aa Revert "Add RTC_EXPORT macro to export WebRTC symbols."
This reverts commit 55daf1aef65218a97eff88999e5190a2f2f6b72e.

Reason for revert: The build directory conflicts with the existing BUILD file on Mac where the file system is case insensitive.

Original change's description:
> Add RTC_EXPORT macro to export WebRTC symbols.
> 
> This CL introduces the utility macro RTC_EXPORT which will let WebRTC
> developers decide which symbols are supposed to be exported/imported
> and which ones are private.
> 
> RTC_EXPORT will only export/import symbols in a component build, more
> info: https://cs.chromium.org/chromium/src/docs/component_build.md.
> During a component build, the macro COMPONENT_BUILD will be globally
> defined in a consistent fashion so it is safe to rely on it to
> understand how to expand RTC_EXPORT.
> In a non component build, RTC_EXPORT will expand to nothing.
> 
> Bug: webrtc:9419
> Change-Id: Ic58162783be7f5883136ade27f324d6d34fdf932
> Reviewed-on: https://webrtc-review.googlesource.com/97960
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Reviewed-by: Yves Gerey <yvesg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24757}

TBR=phoglund@webrtc.org,mbonadei@webrtc.org,kwiberg@webrtc.org,nisse@webrtc.org,yvesg@webrtc.org

Change-Id: I9147ad010f391eeeb2e9dd0cbe7b637ebda57766
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9419
Reviewed-on: https://webrtc-review.googlesource.com/100803
Reviewed-by: JT Teh <jtteh@webrtc.org>
Commit-Queue: JT Teh <jtteh@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24763}
2018-09-18 10:58:39 +00:00
b56706fcd9 Reland "Compile frame analyzer for the host machine on perf tests."
This is a reland of d8ff3f29ce92e27529e100ecf71afbae6334419f.

See https://webrtc-review.googlesource.com/c/src/+/100681/1..4 for
the fix. Error "Failed to open video file for emulated camera" should
be addressed by that change.

Original change's description:
> Compile frame analyzer for the host machine on perf tests.
>
> Bug: webrtc:9665
> Change-Id: I05c01ee4bef0995556b1a679498b3d9132de7c26
> Reviewed-on: https://webrtc-review.googlesource.com/100360
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24756}

TBR=phoglund@webrtc.org, oprypin@webrtc.org

Bug: webrtc:9665
Change-Id: If6a4f2259dabf50718abf47c9cf303d143a1895a
Reviewed-on: https://webrtc-review.googlesource.com/100681
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24762}
2018-09-18 09:51:19 +00:00
3ce16dcae7 Roll chromium_revision 0eb6b522cc..f37f3783a3 (591627:591975)
Change log: 0eb6b522cc..f37f3783a3
Full diff: 0eb6b522cc..f37f3783a3

Changed dependencies:
* src/base: 671d0ab313..b560b3b3fd
* src/build: dc14f7ba4b..c4b8ad9145
* src/ios: 249b9a39d3..c3f2faccf2
* src/testing: c775beeddc..411de25f6c
* src/third_party: e725c9bccc..041a224658
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/c9dc040b7f..934a29ea90
* src/third_party/depot_tools: 2174136d25..f9b4845975
* src/third_party/freetype/src: 9789c75b1a..dfddc2d975
* src/tools: 9ad58083f0..9c36884e4f
DEPS diff: 0eb6b522cc..f37f3783a3/DEPS

No update to Clang.

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

Change-Id: Id9e9736bd5a29b766620cc7a436f4512d88263cc
Reviewed-on: https://webrtc-review.googlesource.com/100789
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24761}
2018-09-18 09:11:23 +00:00
55bb00e4c2 Refactor RtpPacketizerH264 tests
Add helper function to create test data,
reduce amount of unrelated details

Reduced complicated logic in tests, in particular
move most of expectation inside the tests from helpers.

Bug: None
Change-Id: I53f29a70989086c7628a0b112a45ec4567b40bf9
Reviewed-on: https://webrtc-review.googlesource.com/100380
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24760}
2018-09-18 08:57:47 +00:00
db1285676b Cleanup modules_common_types
Uninline RTPFragmentaion functions
fix RTPFragmentation move constructor and assign operators (was recursive for win)
replace assert with rtc::dchecked_cast
Remove unused includes and dependencies.
Fix other targets that used those includes transitively instead of directly

Bug: None
Change-Id: I647cb1eda107dc7d87d25234095545bc2842fa40
Reviewed-on: https://webrtc-review.googlesource.com/100500
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24759}
2018-09-18 08:08:33 +00:00
6d800030ab Revert "Compile frame analyzer for the host machine on perf tests."
This reverts commit d8ff3f29ce92e27529e100ecf71afbae6334419f.

Reason for revert: It breaks perf tests.

Original change's description:
> Compile frame analyzer for the host machine on perf tests.
> 
> Bug: webrtc:9665
> Change-Id: I05c01ee4bef0995556b1a679498b3d9132de7c26
> Reviewed-on: https://webrtc-review.googlesource.com/100360
> Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
> Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24756}

TBR=phoglund@webrtc.org,mbonadei@webrtc.org,oprypin@webrtc.org

Change-Id: I9d75dee68ef9257c707fe547ec32a22572ff582c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9665
Reviewed-on: https://webrtc-review.googlesource.com/100680
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24758}
2018-09-17 12:45:24 +00:00
55daf1aef6 Add RTC_EXPORT macro to export WebRTC symbols.
This CL introduces the utility macro RTC_EXPORT which will let WebRTC
developers decide which symbols are supposed to be exported/imported
and which ones are private.

RTC_EXPORT will only export/import symbols in a component build, more
info: https://cs.chromium.org/chromium/src/docs/component_build.md.
During a component build, the macro COMPONENT_BUILD will be globally
defined in a consistent fashion so it is safe to rely on it to
understand how to expand RTC_EXPORT.
In a non component build, RTC_EXPORT will expand to nothing.

Bug: webrtc:9419
Change-Id: Ic58162783be7f5883136ade27f324d6d34fdf932
Reviewed-on: https://webrtc-review.googlesource.com/97960
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Yves Gerey <yvesg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24757}
2018-09-17 12:20:54 +00:00
d8ff3f29ce Compile frame analyzer for the host machine on perf tests.
Bug: webrtc:9665
Change-Id: I05c01ee4bef0995556b1a679498b3d9132de7c26
Reviewed-on: https://webrtc-review.googlesource.com/100360
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24756}
2018-09-17 11:23:40 +00:00
00e80ad288 Roll chromium_revision 1d75f6fc68..0eb6b522cc (591373:591627)
Change log: 1d75f6fc68..0eb6b522cc
Full diff: 1d75f6fc68..0eb6b522cc

Changed dependencies:
* src/base: 8bc7a71997..671d0ab313
* src/build: e021b7ceb4..dc14f7ba4b
* src/ios: 42aacbce9e..249b9a39d3
* src/testing: f487091150..c775beeddc
* src/third_party: 6e7966719a..e725c9bccc
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/3e071665b9..c9dc040b7f
* src/third_party/depot_tools: b5e8781554..2174136d25
* src/tools: 80ddcfddf3..9ad58083f0
DEPS diff: 1d75f6fc68..0eb6b522cc/DEPS

No update to Clang.

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

Change-Id: I12888033a0a9e71ff2145d5be0544760bc3ad631
Reviewed-on: https://webrtc-review.googlesource.com/100633
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24755}
2018-09-17 10:36:24 +00:00
e8d5724cc5 Rename RTC_EXPORT to RTC_OBJC_EXPORT.
A new version of RTC_EXPORT will be introduced by [1] and it will be
used by WebRTC native code.

This CL renames the current RTC_EXPORT to RTC_OBJC_EXPORT in order
to avoid to mix them. It has been decided to avoid to unify them because
RTC_OBJC_EXPORT always marks symbols with default visibility, while
RTC_EXPORT will do it only when COMPONENT_BUILD is defined.

[1] - https://webrtc-review.googlesource.com/c/src/+/97960 is

Bug: webrtc:9419
Change-Id: I56a3fc6601c72d3ad6a58f9961a00e3761dfb5da
Reviewed-on: https://webrtc-review.googlesource.com/100521
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24754}
2018-09-17 10:06:57 +00:00
451579389c Introduce GN arg rtc_exclude_runtime_enabled_features_default.
This GN argument will be used to exclude the default implementation of
runtime_features_enabled in order to allow clients to provide a custom
implementation.

This will allow to land [1] without breaking Chromium.

[1] - https://webrtc-review.googlesource.com/c/src/+/100640

Bug: webrtc:9631
Change-Id: I4ce8ff12e277f81de42e272d8874d5bb3a4a2635
Reviewed-on: https://webrtc-review.googlesource.com/100641
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24753}
2018-09-17 10:05:17 +00:00
585d1aac17 Register video rtp header extensions in rtp_rtcp by uri
Remove function for converting uri into ExtensionType
This removes one of the lists of all supported extensions

Bug: webrtc:7472
Change-Id: I0c27239d91ef14ca4a3aa0c00588fa2b9cf10e0c
Reviewed-on: https://webrtc-review.googlesource.com/100523
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24752}
2018-09-17 10:02:30 +00:00
4e193e4f76 Add ability to throttle VideoBitrateAllocation updates.
When the bandwidth estimate is volatile, and the frame rate is high,
each new frame might trigger a new video bitrate allocation that is very
close to the previous one, during BWE rampup.
This might cause unnecessarily high RTCP traffic.

This CL throttles those updates, if the allocation fullfills all of:
* Larger or the same total bitrate as the previously sent one
* Less than 10% larger bitrate compared to the previous one
* Same layers enables as the previous one
* Less than 500ms has passed since the previous one

Additionally, a call to OnEncodedImage can cause a throttled allocation
to be sent if 500ms has passed but no new call to OnBitrateUpdated has
been seen.

Bug: webrtc:9734
Change-Id: I2a17c2e512387e273e9c22bffcebd290727dc883
Reviewed-on: https://webrtc-review.googlesource.com/100560
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24751}
2018-09-17 10:01:27 +00:00
9888f65a46 Remove obsolete comments.
Setting rtc_exclude_field_trial_default or rtc_exclude_metrics_default
now has the effect mentioned in the documentation.

TBR: kwiberg@webrtc.org
Bug: webrtc:9631
Change-Id: Idc0ae21c0ae097e2f4175b36eb25f7c8027fdeab
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/100660
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24750}
2018-09-17 09:57:29 +00:00
cdf0e6d4c5 Reland "Remove APM internal usage of EchoCancellation"
Original CL:
https://webrtc-review.googlesource.com/c/src/+/97603
 - Changes EchoCancellationImpl to inherit privately from
   EchoCancellation.
 - Removes usage of AudioProcessing::echo_cancellation() inside most of
   the audio processing module and unit tests.
 - Default-enables metrics collection in AEC2.

The CL breaks audioproc_f backwards compatibility: It can no longer
use all recorded settings (drift compensation, suppression level), but
prints an error message when such settings are encountered.

Revert CL:
https://webrtc-review.googlesource.com/c/src/+/100305

Bug: webrtc:9535
TBR: gustaf@webrtc.org
Change-Id: I9248046b3a6a82df6221e502481836948643a991
Reviewed-on: https://webrtc-review.googlesource.com/100461
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24749}
2018-09-17 09:51:08 +00:00
92e0038c44 Merge field_trial and field_trial_default in a unique target.
After this CL, WebRTC clients will be able to exclude the default
field_trial implementation by defining the preprocessor macro
WEBRTC_EXCLUDE_FIELD_TRIAL_DEFAULT (if GN is used, it will be enough
to set rtc_exclude_field_trial_default to true).

Bug: webrtc:9631
Change-Id: I120d950e39f56f539b04ed3b921d550dd4b5ba50
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/98140
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24748}
2018-09-15 09:57:30 +00:00
c1c2a8875f Merge system_wrappers:metrics and system_wrappers:metrics_default.
After this CL, WebRTC clients will be able to exclude the default
metrics implementation by defining the preprocessor macro
WEBRTC_EXCLUDE_METRICS_DEFAULT (if GN is used, it will be enough
to set rtc_exclude_metrics_default to true).

Bug: webrtc:9631
Change-Id: Id6db23cc4b6c292d9f97372a8014c0c467ed0538
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/98102
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24747}
2018-09-15 08:09:56 +00:00
d574123c50 Roll chromium_revision 2c0c7dfdd0..1d75f6fc68 (591272:591373)
Change log: 2c0c7dfdd0..1d75f6fc68
Full diff: 2c0c7dfdd0..1d75f6fc68

Changed dependencies:
* src/ios: f90e1bf8a1..42aacbce9e
* src/third_party: 4e7d9720f7..6e7966719a
* src/third_party/libsrtp: 368abd6bb3..650611720e
* src/tools: d6f5cb268c..80ddcfddf3
DEPS diff: 2c0c7dfdd0..1d75f6fc68/DEPS

No update to Clang.

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

Change-Id: If9dd769f33c797712751f15dab3473404aac9ed0
Reviewed-on: https://webrtc-review.googlesource.com/100447
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24746}
2018-09-14 17:24:05 +00:00
3064f31ce4 Add hysteresis to enabling of simulcast streams.
If the bandwidth is just on the edge of being able to enable a new
stream, the keyframe generated when it is enabled might be large enough
to trigger an overuse and force the stream off again.

To avoid toggling, this CL adds hysteresis so that the available
bandwidth needs to be above X% to start bitrate in order to enable the
stream. It will be shut down once available bitrate falls below the
original enabling bitrate.

For screen content, X defaults to 35.
For realtime content, X defaults to 0.

Both can be individually modified via field trials.

Bug: webrtc:9734
Change-Id: I941332d7be7f2a801d13d9202b2076d330e7df32
Reviewed-on: https://webrtc-review.googlesource.com/100308
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24745}
2018-09-14 15:59:46 +00:00
60570dc8c4 Removes legacy PacketQueue implementation.
Also cleans up usage of the new RoundRobinPacketQueue to reduce code
bloat.

Bug: webrtc:8288
Change-Id: I90f17a4422b32c1d4e2d7d5065573157346d6a0b
Reviewed-on: https://webrtc-review.googlesource.com/100306
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24744}
2018-09-14 14:57:15 +00:00
c7d935899a Adds multi-channel support to new ADM2 on Windows.
Now checks the preferred channel configuration and requests implicit channel
upmixing (audio engine extends from 2 to N channels internally) if the
preferred number of channels is larger than two; i.e., initialize the
stream in stereo even if the preferred configuration is multi-channel.

To summarize: with this CL, it is now possible to use e.g. a 7.1 headset
with a native WebRTC client. All internal processing in WebRTC will be in
stereo, and the audio device will be opened up in stereo as well to match
WebRTC. Before this change, we would open up the audio device using 8
channels but that was not supported by WebRTC.

Bug: webrtc:9265
Change-Id: I1530fee28c4b8b5cda29ab6baf8d65fd391d935d
Reviewed-on: https://webrtc-review.googlesource.com/98421
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24743}
2018-09-14 14:16:27 +00:00
56b5a6c4b2 audioproc_f: Modified and added further logging of used aec3 parameters
This CL:
-Adds the option to log the aec3 parameters used for a simulation.
-Cleans up the logging of the custom setting of aec3 parameters to
 instead rely on the newly added logging.

Bug: webrtc:8671
Change-Id: If73a73d08e5a5077416033ded598a83fb1ade3e0
Reviewed-on: https://webrtc-review.googlesource.com/100381
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24742}
2018-09-14 13:56:52 +00:00
b55df9259f Revert "AEC3: Reduce filter divergence during low-echo double-talk"
This reverts commit 958ed238603ba5a2937d28ce1c9281920d923019.

Reason for revert: Will need additional work to handle clock-drift.

Original change's description:
> AEC3: Reduce filter divergence during low-echo double-talk
> 
> Bug: webrtc:9746,chromium:883264
> Change-Id: Ie3faf106fd1fd835e67d9e6794c679703af54fea
> Reviewed-on: https://webrtc-review.googlesource.com/99920
> Reviewed-by: Per Åhgren <peah@webrtc.org>
> Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24706}

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

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

Bug: webrtc:9746, chromium:883264
Change-Id: Ib039eb80e2ddfc43ec52183086da2474baef65e0
Reviewed-on: https://webrtc-review.googlesource.com/100480
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24741}
2018-09-14 13:41:44 +00:00
af6c139eb6 Drop legacy AEC metrics interface from ApmTest.Process
The test is refitted to use the AudioProcessingStats struct to get
reference data.

The old metrics do not map entirely injectively to the new ones, so the
reference protobuf and files are updated as well.

Bug: webrtc:9535
Change-Id: I546dca2979380e03895af0077bfc77ffd24abe36
Reviewed-on: https://webrtc-review.googlesource.com/100100
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24740}
2018-09-14 08:16:43 +00:00
221ee3c3ca Revert "Reland Profile 2 to default profiles"
This reverts commit f682624062b36c285d909d6153bdf9165f6b4c63.

Reason for revert: WebRtcVideoQualityBrowserTests/WebRtcVideoQualityBrowserTest.MANUAL_TestVideoQualityVp9/0 and /1 failing on Linux, Mac, and Windows. E.g. https://ci.chromium.org/buildbot/chromium.webrtc/Mac%20Tester/83189.

Original change's description:
> Reland Profile 2 to default profiles
> 
> This is a reland after chrome browser tests are updated.
> 
> Bug: webrtc:9376
> Change-Id: I1c32ddcd2478e5a92fd3950876c7c19d35c1d79b
> TBR: niklas.enbom@webrtc.org
> Reviewed-on: https://webrtc-review.googlesource.com/88583
> Commit-Queue: Emircan Uysaler <emircan@webrtc.org>
> Reviewed-by: Emircan Uysaler <emircan@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24736}

TBR=emircan@webrtc.org

Change-Id: Ibd072ce01506b481e6300b11e7f7ef85f79daf95
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:9376
Reviewed-on: https://webrtc-review.googlesource.com/100421
Reviewed-by: Max Morin <maxmorin@webrtc.org>
Commit-Queue: Max Morin <maxmorin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24739}
2018-09-14 07:50:13 +00:00
00eb12a20c Let NetEq use the PLC output from a decoder
This change enables NetEq to use the packet concealment audio (aka
PLC) produced by a decoder. The change also includes a new API to the
AudioDecoder interface, which lets the decoder implementation generate
and deliver concealment audio.

Bug: webrtc:9180
Change-Id: Icaacebccf645d4694b0d2d6310f6f2c7132881c4
Reviewed-on: https://webrtc-review.googlesource.com/96340
Commit-Queue: Henrik Lundin <henrik.lundin@webrtc.org>
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24738}
2018-09-14 07:05:20 +00:00
e899629be4 Roll chromium_revision 2338e7ccdb..2c0c7dfdd0 (591117:591272)
Change log: 2338e7ccdb..2c0c7dfdd0
Full diff: 2338e7ccdb..2c0c7dfdd0

Changed dependencies:
* src/base: 9b4f76b9ad..8bc7a71997
* src/build: faf0511f93..e021b7ceb4
* src/testing: 24c0ae4b1e..f487091150
* src/third_party: b028e8c8a2..4e7d9720f7
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/5f6da8a57d..3e071665b9
* src/third_party/depot_tools: dfce68bcdd..b5e8781554
* src/tools: 2fe1aca913..d6f5cb268c
DEPS diff: 2338e7ccdb..2c0c7dfdd0/DEPS

No update to Clang.

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

Change-Id: I298a199b334798db08d6bdd305a5e1413c467b9b
Reviewed-on: https://webrtc-review.googlesource.com/100404
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24737}
2018-09-14 03:20:42 +00:00
f682624062 Reland Profile 2 to default profiles
This is a reland after chrome browser tests are updated.

Bug: webrtc:9376
Change-Id: I1c32ddcd2478e5a92fd3950876c7c19d35c1d79b
TBR: niklas.enbom@webrtc.org
Reviewed-on: https://webrtc-review.googlesource.com/88583
Commit-Queue: Emircan Uysaler <emircan@webrtc.org>
Reviewed-by: Emircan Uysaler <emircan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24736}
2018-09-14 00:25:39 +00:00
bdc115c23d Roll chromium_revision e3170c4fc2..2338e7ccdb (590991:591117)
Change log: e3170c4fc2..2338e7ccdb
Full diff: e3170c4fc2..2338e7ccdb

Changed dependencies:
* src/base: 36a8382885..9b4f76b9ad
* src/build: 8e97ee738f..faf0511f93
* src/ios: 6e6e8b9e68..f90e1bf8a1
* src/testing: c058a65ed9..24c0ae4b1e
* src/third_party: 1cb9948eb6..b028e8c8a2
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/3e071665b9..5f6da8a57d
* src/tools: 9cd07469bb..2fe1aca913
DEPS diff: e3170c4fc2..2338e7ccdb/DEPS

No update to Clang.

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

Change-Id: Ibd567ae00ee276bc54fd92154b6cd1f010f0db4b
Reviewed-on: https://webrtc-review.googlesource.com/100321
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24735}
2018-09-13 20:24:06 +00:00
b57ab38a8c Don't pad to min bitrate for streams with alr probing enabled
Especially for simulcast screensharing, we don't want to send constant
high bitrates of padding just to keep the bwe up since ALR probing
already handles that case.

Bug: webrtc:9734
Change-Id: I79a08fc073844628d8ad0561edd8bfcffed83fde
Reviewed-on: https://webrtc-review.googlesource.com/99120
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24734}
2018-09-13 16:15:21 +00:00
c5fe166dbc Fixes issue where WebRTC.Audio.RecordSampleRateOffsetInPercent can report 100%
Bug: b/113648245
Change-Id: I5fe22b553177cf7f53095b691077b3efd7c6bb59
Reviewed-on: https://webrtc-review.googlesource.com/100241
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24733}
2018-09-13 16:04:31 +00:00