Commit Graph

25050 Commits

Author SHA1 Message Date
27f31727d0 Simplify use of events in TestAudioDevice
Create events with |manual_reset| and |initially_signalled| both false
(used to be both true). Delete calls to Set and Reset events from the
{Start,Stop}{Playout,Recording} methods. Then, for each event, there
remains a single call to Set, in the ProcessingAudio loop, and a
single call to Wait, in WaitForPlayoutEnd and WaitForRecordingEnd,
respectively.

Bug: webrtc:9962
Change-Id: Ia358b4a36896e2378ad6166f3786d8d71392bf1b
Reviewed-on: https://webrtc-review.googlesource.com/c/109562
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25518}
2018-11-06 12:18:05 +00:00
361dbc1973 Android: Add option to set presentation timestamp in EglRenderer
Bug: b/119004693
Change-Id: I78b676a4417ac313e7fbbea009c8dd586707b1af
Reviewed-on: https://webrtc-review.googlesource.com/c/109503
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25517}
2018-11-06 12:11:20 +00:00
967f7d5497 Add audio level to CSRC class
This patch adds (optional) csrc to ContributingSources.
This will be used if using virtual audio ssrc, since
the audio level is otherwise unaccessible in that configuration.

BUG=webrtc:3333

Change-Id: Ied263b8f0850553cd637fd6bead373ed4252fd1e
Reviewed-on: https://webrtc-review.googlesource.com/c/109281
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25516}
2018-11-06 12:10:05 +00:00
df351f4b54 Update FakeEncoder to use EncoderInfo
Bug: webrtc:9890
Change-Id: Ia6f268b35b5cc62fb6318f59bd66bbf65e97a23d
Reviewed-on: https://webrtc-review.googlesource.com/c/109565
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25515}
2018-11-06 12:01:47 +00:00
254d3db59a Add missing #include to absl/memory/memory.h from audio_encoder_cng.cc
absl::make_unique is used in this file without absl/memory/memory.h
#include, that causes a build error on C++17 build of Chromium.

Bug: chromium:752720
Change-Id: I78fe9f76a6ea670a4250b4cf25c3c02cf4c4beb6
Reviewed-on: https://webrtc-review.googlesource.com/c/109540
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25514}
2018-11-06 10:57:47 +00:00
fbf168386b Add HdrMetadata to VideoFrame
Bug: webrtc:8651
Change-Id: I28aacbc63e346328633fb862662343f47e966bf1
Reviewed-on: https://webrtc-review.googlesource.com/c/108320
Commit-Queue: Johannes Kron <kron@webrtc.org>
Reviewed-by: Emircan Uysaler <emircan@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25513}
2018-11-06 09:29:54 +00:00
4f0f3d5a22 Remove unused member variable - RTCPSender::using_nack_
Bug: None
Change-Id: I346c6a195d2d21387f89e41cfc070f33466ef195
Reviewed-on: https://webrtc-review.googlesource.com/c/109462
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25512}
2018-11-06 09:21:42 +00:00
63ada787b5 Remove outdated TODO
Bug: webrtc:9535
Change-Id: I8f7a719eb9f32a91f45620453568e5f7d2264de8
Reviewed-on: https://webrtc-review.googlesource.com/c/109461
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25511}
2018-11-06 08:39:16 +00:00
3ea187803b Add severity into RTC logging callbacks
Bug: webrtc:9945
Change-Id: I5022f63103503d2213492d3cd1a6953fe658fda7
Reviewed-on: https://webrtc-review.googlesource.com/c/108981
Commit-Queue: Jiawei Ou <ouj@fb.com>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25510}
2018-11-06 07:53:01 +00:00
edfb883c85 Roll chromium_revision 11d7305a72..7841106b37 (605505:605607)
Change log: 11d7305a72..7841106b37
Full diff: 11d7305a72..7841106b37

Changed dependencies
* src/build: c9ef69b989..db0889426f
* src/ios: f2f46d1dd4..293ed1e431
* src/testing: 8ac08c41f8..12f7c4a1e6
* src/third_party: faebc5969e..3aef1b31a6
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/6b1f256782..9a5dbc6f44
* src/third_party/depot_tools: 7e0b0c498a..459aaba034
* src/tools: 5d0c86c1c7..ee42646d87
DEPS diff: 11d7305a72..7841106b37/DEPS

No update to Clang.

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

Change-Id: I66b792c58552a2775d1a89dfc14c4e71aa0e6dc2
Reviewed-on: https://webrtc-review.googlesource.com/c/109524
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#25509}
2018-11-06 06:20:09 +00:00
d7db17b992 Roll chromium_revision bf7ad46dee..11d7305a72 (605401:605505)
Change log: bf7ad46dee..11d7305a72
Full diff: bf7ad46dee..11d7305a72

Changed dependencies
* src/base: 6baa5ba029..068a8bf504
* src/build: b906840601..c9ef69b989
* src/ios: 435391a2bd..f2f46d1dd4
* src/testing: a266fda43c..8ac08c41f8
* src/third_party: 519b3029bb..faebc5969e
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/8c035b35ab..6b1f256782
* src/tools: 7b0ad7dabb..5d0c86c1c7
DEPS diff: bf7ad46dee..11d7305a72/DEPS

No update to Clang.

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

Change-Id: I96ef3feaf4abbcd82275435553766fba64fc5649
Reviewed-on: https://webrtc-review.googlesource.com/c/109486
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@{#25508}
2018-11-05 23:40:03 +00:00
a9bbd86849 Add a configuration parameter for using the media transport for data channels.
Adds a field |use_media_transport_for_data_channels| to RTCConfiguration.
PeerConnection requires a media transport factory to be set if this bit
is set.  As with |use_media_transport|, the value may not be modified
after setting the local or remote description.

If either |use_media_transport| or |use_media_transport_for_data_channel| is
set, PeerConnection uses its media transport factory when creating a JSEP
transport controller.

PeerConnection stops unconditionally using media transport in
CreateVoiceChannel, as it may be present only for use in data channels.  It uses
the media transport if it is present and |use_media_transport| is set.

Bug: webrtc:9719
Change-Id: I59d4ce8f7531fd19d9c17eefe033f063f663ebcc
Reviewed-on: https://webrtc-review.googlesource.com/c/109041
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Peter Slatala <psla@webrtc.org>
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25507}
2018-11-05 21:05:22 +00:00
41b5296405 Roll chromium_revision c26ff44a53..bf7ad46dee (605286:605401)
Change log: c26ff44a53..bf7ad46dee
Full diff: c26ff44a53..bf7ad46dee

Changed dependencies
* src/base: f362b035ff..6baa5ba029
* src/build: 8025cd40a2..b906840601
* src/ios: 31a469fd55..435391a2bd
* src/testing: 8334b064bf..a266fda43c
* src/third_party: 4717347898..519b3029bb
* src/third_party/android_build_tools/bundletool: version:0.6.0-cr0..version:0.6.2-cr0
* src/tools: c803d449d4..7b0ad7dabb
DEPS diff: c26ff44a53..bf7ad46dee/DEPS

No update to Clang.

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

Change-Id: I0a73d1029235b208ad98e4b8d257eae933117908
Reviewed-on: https://webrtc-review.googlesource.com/c/109483
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@{#25506}
2018-11-05 19:34:28 +00:00
ee49f7087f Remove VideoEncoder::SetChannelParameters.
The SetChannelParameters function was used when WebRTC supported decoding
with errors, which we no longer do.

This cleanup CL is related to the work tracked by 9946.

Bug: webrtc:9946
Change-Id: Id2d5ed23031388f890c42651bfbe5f79eda701e5
Reviewed-on: https://webrtc-review.googlesource.com/c/108861
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25505}
2018-11-05 17:37:07 +00:00
c22f551842 Remove locks from AECM and move it into private_submodules_
This drops the locks and annotations in EchoControlMobileImpl,
now that the interface is no longer externally accessible.

Additionally, SetEchoPath and GetEchoPath (with surrounding code) is
removed. They are unused.

Bug: webrtc:9929
Change-Id: Ibc6751754614ed39836f6ee6835d7b53dedd828c
Reviewed-on: https://webrtc-review.googlesource.com/c/109025
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25504}
2018-11-05 16:25:09 +00:00
e693381cda Delete struct rtc::PacketTime.
Replaced by a int64_t representing time in us. To aid transition of
downstream code, rtc::PacketTime is made an alias for int64_t.

Bug: webrtc:9584
Change-Id: Ic3a5ee87d6de2aad7712894906dab074f1443df9
Reviewed-on: https://webrtc-review.googlesource.com/c/91860
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25503}
2018-11-05 16:21:39 +00:00
007065522a Removing ancient and unused test scripts and data files
None of these scripts or files have been used in a very long time. They
are removed for the same reason, and since the data files add to the
weight of the resources folder.

Bug: webrtc:5289
Change-Id: Ia14a46aed180f286fa881fe5f60da6973a5fe027
Reviewed-on: https://webrtc-review.googlesource.com/c/109022
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25502}
2018-11-05 16:08:46 +00:00
fd1a2fb8e4 Set RtpRtcp config receive_only in voe::ChannelReceive
Followup to https://webrtc-review.googlesource.com/c/103803

Bug: webrtc:9801
Change-Id: I8467aea241f0470aa116639ddcf5f7ef9a3cc711
Reviewed-on: https://webrtc-review.googlesource.com/c/106860
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25501}
2018-11-05 15:11:00 +00:00
aed3070ad4 Replace GetScalingSettings() with GetEnocderInfo() in TestEncoder
Bug: webrtc:9890
Change-Id: I00c0d95739fe1e90df464a6a7402410ee070f840
Reviewed-on: https://webrtc-review.googlesource.com/c/109028
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25500}
2018-11-05 13:58:14 +00:00
f418bcbcf1 Refactor RtpSender to use absl::string_view for payload name.
Followup to https://webrtc-review.googlesource.com/c/src/+/109006

Bug: webrtc:6424
Change-Id: I1309a7365cf4132ba5d7b80a3847fcafc4fb8d27
Reviewed-on: https://webrtc-review.googlesource.com/c/109120
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25499}
2018-11-05 13:38:48 +00:00
26341990a1 Move MovingAverage to rtc_base/numerics and update it.
This utility class is needed in rtcp_rtp. Instead of reimplementing it
again, the existing class is moved to rtc_base, cleaned from unused
features and extended as required for the new usage.

Bug: webrtc:9914
Change-Id: I3b0d83d08d8fa5e1384b4721a93c6a90781948fd
Reviewed-on: https://webrtc-review.googlesource.com/c/109081
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25498}
2018-11-05 13:02:29 +00:00
a1ead6f2ab Update EncoderProxy to use EncoderInfo
Bug: webrtc:9890
Change-Id: Iadb9cab3bb628480cb83c456f23cc15f6fee8d47
Reviewed-on: https://webrtc-review.googlesource.com/c/109027
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25497}
2018-11-05 11:36:32 +00:00
bf0d0c1b30 Add IPv6 configuration parameters to iOS API
Adds |disableIPV6| and |disableIPV6OnWiFi| properties to
RTCConfiguration

Bug: None
Change-Id: Id59fb2002afadd7817f7caeaa62231bf90ecb274
Reviewed-on: https://webrtc-review.googlesource.com/c/109280
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25496}
2018-11-05 10:56:10 +00:00
842a2a80d3 Roll chromium_revision 4e7c87b55c..c26ff44a53 (605184:605286)
Change log: 4e7c87b55c..c26ff44a53
Full diff: 4e7c87b55c..c26ff44a53

Changed dependencies
* src/base: c4078779f0..f362b035ff
* src/build: 6f2b519390..8025cd40a2
* src/ios: 5c32d054d8..31a469fd55
* src/testing: 45e5e8d170..8334b064bf
* src/third_party: 91d591567c..4717347898
* src/tools: 2669a3ba6a..c803d449d4
DEPS diff: 4e7c87b55c..c26ff44a53/DEPS

No update to Clang.

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

Change-Id: I28ab01a0ba05f21d6f48201f4009b4c3e8483da4
Reviewed-on: https://webrtc-review.googlesource.com/c/109380
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#25495}
2018-11-05 10:19:48 +00:00
e7547d5545 Move MemoryStream to separate source files, and to a test target.
Also delete the base class MemoryStreamBase.

Bug: webrtc:6424
Change-Id: I7eec40ecff17c7c65fdf55882bccb2abaf1d5d84
Reviewed-on: https://webrtc-review.googlesource.com/c/108622
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25494}
2018-11-05 09:00:48 +00:00
9f878f6e97 Roll chromium_revision b58a03341b..4e7c87b55c (605082:605184)
Change log: b58a03341b..4e7c87b55c
Full diff: b58a03341b..4e7c87b55c

Changed dependencies
* src/base: 5ff3786ea3..c4078779f0
* src/build: 72701c13f7..6f2b519390
* src/ios: e5684daeda..5c32d054d8
* src/testing: 7dc2164205..45e5e8d170
* src/third_party: 5bd01b2a3d..91d591567c
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/468ff3e5a0..8c035b35ab
* src/third_party/depot_tools: fec80c4135..7e0b0c498a
* src/tools: a755dc89dd..2669a3ba6a
DEPS diff: b58a03341b..4e7c87b55c/DEPS

No update to Clang.

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

Change-Id: I5186257364cc8fcd4d1b285c03a3e2e80c3b2443
Reviewed-on: https://webrtc-review.googlesource.com/c/109279
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@{#25493}
2018-11-03 17:34:12 +00:00
671341ac66 Roll chromium_revision 35f882550d..b58a03341b (604980:605082)
Change log: 35f882550d..b58a03341b
Full diff: 35f882550d..b58a03341b

Changed dependencies
* src/base: 9efaa251b9..5ff3786ea3
* src/build: 3c45bc6976..72701c13f7
* src/ios: fc76c06ff2..e5684daeda
* src/testing: 5587afd8ba..7dc2164205
* src/third_party: feccd642fe..5bd01b2a3d
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/a6ef719b69..468ff3e5a0
* src/tools: 7f058475ba..a755dc89dd
DEPS diff: 35f882550d..b58a03341b/DEPS

No update to Clang.

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

Change-Id: I89345e4d9f96c243ce3c58b4c5b321a5f3f3aa34
Reviewed-on: https://webrtc-review.googlesource.com/c/109261
Commit-Queue: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Reviewed-by: Autoroller <chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#25492}
2018-11-02 23:30:54 +00:00
1bc0b9d03f Roll chromium_revision e842ab5f98..35f882550d (604874:604980)
Change log: e842ab5f98..35f882550d
Full diff: e842ab5f98..35f882550d

Changed dependencies
* src/base: 21e62a143e..9efaa251b9
* src/build: 6a59547c6a..3c45bc6976
* src/ios: e75336fdcb..fc76c06ff2
* src/testing: 5c39abcfdc..5587afd8ba
* src/third_party: df2b6d7a3e..feccd642fe
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/971689c059..a6ef719b69
* src/tools: 7abb2b49bb..7f058475ba
DEPS diff: e842ab5f98..35f882550d/DEPS

No update to Clang.

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

Change-Id: I33fca8ffececbd6d5acabb31ada019ce011488bd
Reviewed-on: https://webrtc-review.googlesource.com/c/109220
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@{#25491}
2018-11-02 18:30:16 +00:00
2039ee7dce Revert "Delete rtc::Pathname"
This reverts commit 6b9dec0d16f2df59fa2820c5ec1341be52fb9f32.

Reason for revert: speculative revert for breaking internal projects

Original change's description:
> Delete rtc::Pathname
> 
> Bug: webrtc:6424
> Change-Id: Iec01dc5dd1426d4558983b828b67af872107d723
> Reviewed-on: https://webrtc-review.googlesource.com/c/108400
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#25479}

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

Change-Id: I3129a81a1d8e36b3e6c67572410bdc478ec4d5e9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:6424
Reviewed-on: https://webrtc-review.googlesource.com/c/109201
Reviewed-by: Qingsi Wang <qingsi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25490}
2018-11-02 16:30:24 +00:00
273d0296a4 Implement data channel methods in LoopbackMediaTransport.
This enables PeerConnection tests to use LoopbackMediaTransport to test
data-channel-over-media-transport code.

Also changes LoopbackMediaTransport to invoke callbacks asynchronously.
This is more accurate, as these callbacks are triggered by network
events.  The caller should not block while the callback executes.

Since LoopbackMediaTransport is used for testing, it provides a
FlushAsyncInvokes() method which may be used to ensure that callbacks
occur deterministically (eg. before checking that data has been
received).

Bug: webrtc:9719
Change-Id: Ib8ea9aebf4a0ad3d5934a6fe4ab33432c68523fd
Tbr: stefan@webrtc.org
Reviewed-on: https://webrtc-review.googlesource.com/c/109060
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25489}
2018-11-02 16:15:32 +00:00
0367d1a1fb Adds a field trial parameter to configure waiting time before sending Nack packets.
Currently we send Nack as soon as we see packets out of order(a skip in packet sequence number). Sometimes this is not necessary because these "missing" packets just late for a couple of millisecond, or these packets can be recovered by FEC. This CL add a field trial parameter to configure a delay before sending Nack.

Bug: webrtc:9953
Change-Id: Ia8f5995d874f7c55a74091bc90d8395b9b88e66b
Reviewed-on: https://webrtc-review.googlesource.com/c/109080
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Ying Wang <yinwa@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25488}
2018-11-02 14:56:52 +00:00
e40186332e Change to RtcEvent::Copy
Until this CL, RtcEvent::Copy() was a virtual function returning
a std::unique_ptr<RtcEvent>, which was used only in unit tests.
Whenever it was used, the exact sub-class was known, so returning
as a std::unique_ptr<RtcEvent> lost information, but the
additional flexibility of calling Copy on an unknown RtcEvent
was never used. This CL changes the function to a non-virtual one.

Bug: webrtc:8111
Change-Id: I30dbea5f4ec84c41282550aa77a855bfae9ffbd1
Reviewed-on: https://webrtc-review.googlesource.com/c/109140
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25487}
2018-11-02 14:44:36 +00:00
2365936b87 Hide the AudioEncoderCng class behind a create function
And put codecs/cng/webrtc_cng.h in a non-public build target while
we're at it.

Bug: webrtc:8396
Change-Id: I9f51dffadfb645cd1454617fad30e09d639ff53c
Reviewed-on: https://webrtc-review.googlesource.com/c/108782
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25486}
2018-11-02 13:00:05 +00:00
42e7d9c929 Enable rtc event log in *_loopback tools running with renderers
Bug: none
Change-Id: I6debe89fa972474be8862c568a23e491b678833d
Reviewed-on: https://webrtc-review.googlesource.com/c/109004
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25485}
2018-11-02 12:47:09 +00:00
f8ba95ecee Add field trial for vp8 cpu speed configuration for arm.
Bug: none
Change-Id: I90c2475a229a1f10016e2ad84029e19b5a4f9966
Reviewed-on: https://webrtc-review.googlesource.com/c/107340
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25484}
2018-11-02 12:17:53 +00:00
56ef305b67 Move event logging of config into AudioSendStream.
It was previously logged in Call, but streams are not always created
with the full configuration, which caused header extensions to be
missing from the log.

Bug: webrtc:9885
Change-Id: I86c0424004c4629ebab0f6b155b83fb90e15b131
Reviewed-on: https://webrtc-review.googlesource.com/c/108601
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Oskar Sundbom <ossu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25483}
2018-11-02 12:04:24 +00:00
6bf20549bb Roll chromium_revision 734e273d43..e842ab5f98 (604373:604874)
Change log: 734e273d43..e842ab5f98
Full diff: 734e273d43..e842ab5f98

Changed dependencies
* src/base: b183a851a2..21e62a143e
* src/build: 725a228df7..6a59547c6a
* src/ios: cac0c52414..e75336fdcb
* src/testing: ee1dadff8d..5c39abcfdc
* src/third_party: e723f78f47..df2b6d7a3e
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e3f4b1f5ee..971689c059
* src/third_party/depot_tools: 9afc6490c1..fec80c4135
* src/tools: a761264246..7abb2b49bb
DEPS diff: 734e273d43..e842ab5f98/DEPS

No update to Clang.

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

Change-Id: Ia16e693acfb129aecbbbcb40486880e46d94f494
Reviewed-on: https://webrtc-review.googlesource.com/c/109100
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@{#25482}
2018-11-02 11:08:55 +00:00
aa3c1cc927 Delete _strnicmp. Uses replaced with abseil functions.
The replacements are absl::EqualsIgnoreCase and
absl::StartsWithIgnoreCase. Also delete the alias
RtpUtility::StringCompare.

Bug: webrtc:6424
Change-Id: I4bed71540264450f85137ad0c2564125c5c6213f
Reviewed-on: https://webrtc-review.googlesource.com/c/109006
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25481}
2018-11-02 11:03:38 +00:00
41f00de26b Fix chromium roll
BUG=NONE

Change-Id: I7df047ee33700c2ad868a0f36b6e97f08e55a62e
Reviewed-on: https://webrtc-review.googlesource.com/c/109010
Reviewed-by: Patrik Höglund <phoglund@google.com>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25480}
2018-11-02 09:18:52 +00:00
6b9dec0d16 Delete rtc::Pathname
Bug: webrtc:6424
Change-Id: Iec01dc5dd1426d4558983b828b67af872107d723
Reviewed-on: https://webrtc-review.googlesource.com/c/108400
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25479}
2018-11-02 08:34:39 +00:00
d4a68bd932 Implement Injectable Audio Codecs for the Java SDK.
Support Injectable Audio Codecs from the Java SDK.
The PeerConnectionFactory.Builder defaults to
BuiltinAudio(Encoder|Decoder)Factory, but other implementations are
permitted via the Audio(Encoder|Decoder)FactoryFactory interface.

Bug: webrtc:9916
Change-Id: I61ad4a6e57666bc1be79daf5f40b129e0eacad84
Reviewed-on: https://webrtc-review.googlesource.com/c/107711
Commit-Queue: Lennart Kolmodin <kolmodin@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25478}
2018-11-02 08:25:39 +00:00
3e4c77f1c1 Fix AGC2 fixed-adaptive gain controllers order.
This CL refactors AGC2 and fixes the order with which the fixed
and the adaptive digital gain controllers are applied - i.e., fixed
first, then adaptive and finally limiter.

FixedGainController has been removed since we need to split the
processing done by the gain applier and the limiter.
Also, GainApplier and Limiter are easy enough to be used without
a wrapper and a wrapper would need 2 separated calls in the right
order - i.e., error prone.

FrameCombiner in audio mixer has been adapted and now only uses the
limiter (which is what is needed since no gain is applied).

The unit tests for FixedGainController have been moved to
gain_controller2_unittests. They have been re-adapted and
ChangeFixedGainShouldBeFastAndTimeInvariant has been re-tuned.

Bug: webrtc:7494
Change-Id: I4d7daeae917257ac019a645b74deba6642f77322
Reviewed-on: https://webrtc-review.googlesource.com/c/108624
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25477}
2018-11-01 20:35:36 +00:00
096d016acc Update MultiplexEncoderAdapter to use EncoderInfo
Bug: webrtc:9890
Change-Id: I8d02f0f25e515ec06e0e81624f80c12f95b13c3d
Reviewed-on: https://webrtc-review.googlesource.com/c/109024
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Emircan Uysaler <emircan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25476}
2018-11-01 17:32:27 +00:00
58df0ada6e Add guards to VideoCaptureDS::Init for when pins are null
GetInputPin() and GetOutputPin() do not guarantee returning non-null pins.
Should either of them return null during Init() we're better off returning an
error than allowing unsafe behavior further ahead.

Bug: webrtc:9941
Change-Id: I25858f0555334b4ef99801f83454931384695bf6
Reviewed-on: https://webrtc-review.googlesource.com/c/108603
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25475}
2018-11-01 17:11:26 +00:00
9b5b070817 Use EncoderInfo in SimulcastEncoderAdapter
Remove use of deprecated methods.

Bug: webrtc:9890
Change-Id: I96cce2fc94cb4c4ac07ffc882f5d2b84e279e3b6
Reviewed-on: https://webrtc-review.googlesource.com/c/108123
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25474}
2018-11-01 16:05:57 +00:00
4eb4112508 Plug-in media transport state listener
IceConnected state (transport state) now includes the state of the
MediaTransport.

This is a first change of two. Second change will add state change
signals to the PeerConnectionInterface informing separately about
ice+media transport vs ice+dtls.

Bug: webrtc:9719
Change-Id: I5731530073e8f26dfc8b188778d268b815da7052
Reviewed-on: https://webrtc-review.googlesource.com/c/108901
Commit-Queue: Peter Slatala <psla@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Reviewed-by: Anton Sukhanov <sukhanov@webrtc.org>
Reviewed-by: Seth Hampson <shampson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25473}
2018-11-01 15:52:56 +00:00
189013bef9 Update QualityTestVideoEncoder to use GetEncoderInfo()
Bug: webrtc:9890
Change-Id: I1483df7c505c08de7c8a8b254dd1a0c5c03775e4
Reviewed-on: https://webrtc-review.googlesource.com/c/109008
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25472}
2018-11-01 15:44:20 +00:00
449afd9374 Updated ScopedVideoEncoder to use GetEncoderInfo()
Bug: webrtc:9890
Change-Id: Icca1cc1df6a227a30a5f54228fa33a9e63e702e0
Reviewed-on: https://webrtc-review.googlesource.com/c/109007
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25471}
2018-11-01 15:43:15 +00:00
5e784616e0 Make the extra seturation margin configurable.
The extra saturation margin is a setting for the SaturationProtector
in GainController2. The higher it is, the less gain GC2 will apply. In
this CL we pipe the setting up to audio_processing.h. Now the setting
can be set at a high level.

Also in this CL add a few (missing, they should have been there
already) tests for the GC2 and GC2 with saturation margin.

Bug: webrtc:7494
Change-Id: I1b61f1662e6c6a8817fd5b0e845339694bf8d50d
Reviewed-on: https://webrtc-review.googlesource.com/c/109001
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25470}
2018-11-01 15:12:11 +00:00
b1e031a156 JitterEstimator: Remove old LowRate exp and add trial for upper bound.
The frame time deltas are now capped based on the current noise.
This has been tested in various conditions using both screen content
and typical mobile video settings, to produce delays that are not overly
high screen content, and simultaneously not negatively affect mobile
calls on really bad network that may have high natural jitter.

Bug: webrtc:9898
Change-Id: I51ad279af156aba1b5cc75ae203334a34bce9d48
Reviewed-on: https://webrtc-review.googlesource.com/c/107349
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25469}
2018-11-01 14:51:38 +00:00