Commit Graph

30920 Commits

Author SHA1 Message Date
16ddae924e Update Opus tests for Opus 1.3
This updates various bitexactness tests and other tests that no longer
pass.

Bug: webrtc:11325
Change-Id: Ifa3e4b42e303f5573e028dfdf8a108a76f6318ae
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168952
Commit-Queue: Ivo Creusen <ivoc@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Henrik Lundin <henrik.lundin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30688}
2020-03-05 08:53:37 +00:00
99eb20b513 StatsEndToEndTest: Configure bitrate via VideoEncoderConfig.
Configure bitrates via VideoEncoderConfig (and remove implementation of
VideoStreamFactoryInterface used to override the default bitrate configuration).

Bug: none
Change-Id: I935f27eaf0187f6c5dfb53a1af5406929867f209
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169449
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30687}
2020-03-05 08:25:31 +00:00
8add9297ab Fix links in docs/native-code/index.md.
TBR=phoglund@webrtc.org

No-Try: True
Bug: None
Change-Id: Icd16a0e28935709c4332ef387c4e1a46a24b0f3b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169726
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30686}
2020-03-05 08:19:11 +00:00
3f1aee3cbb Change network_priority from a double to an enum.
It can only be one of four possible values, so it never made sense
for it to be a double. Other than the fact that its neighbor
bitrate_priority is a double, and they're both defined as the same enum
in the web spec. However, while bitrate_priority being a double
offers more flexibility than the web spec, network_priority being a
double is only confusing.

Bug: webrtc:5658
Change-Id: I0784c116f3260c4b3a8b99a3cd85c8d66017e46f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168840
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Taylor <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30685}
2020-03-05 05:42:15 +00:00
14e5f0b2cb Update RTC_CHECK and RTC_LOG macros so they work when called from xxxxx::rtc namespaces
Adding :: before rtc allow us to use the macro in nested rtc namespace for external components like

namespace xxxxxxx {
namespace rtc {
RTC_CHECK(true);
}
}

Bug: webrtc:11400
Change-Id: I79349b847c3fce8197c82aec31b672a1a16e5388
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169683
Commit-Queue: Jiawei Ou <ouj@fb.com>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30684}
2020-03-04 22:53:34 +00:00
43d8e93fa7 Roll chromium_revision 8d9e658d11..2d9b6439f0 (746798:746902)
Change log: 8d9e658d11..2d9b6439f0
Full diff: 8d9e658d11..2d9b6439f0

Changed dependencies
* src/build: fa4450f206..b04917d42d
* src/ios: 1de797c11d..0e97c075f4
* src/testing: 5a0d4442c4..b36dfa5cdf
* src/third_party: 1937f3afa3..26c37119b0
* src/tools: e710efd3fa..39818018be
DEPS diff: 8d9e658d11..2d9b6439f0/DEPS

No update to Clang.

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

Change-Id: Ie33cc7f9fa47b7ddfa2b72dde07fabf831b8e86a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169760
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@{#30683}
2020-03-04 20:36:42 +00:00
fbc7ed0d71 Roll chromium_revision 02cf6c70c5..8d9e658d11 (746692:746798)
Change log: 02cf6c70c5..8d9e658d11
Full diff: 02cf6c70c5..8d9e658d11

Changed dependencies
* src/ios: 6c759e4bb6..1de797c11d
* src/testing: 11cd0dba90..5a0d4442c4
* src/third_party: bbcb7915e1..1937f3afa3
* src/tools: a42a28c9ef..e710efd3fa
DEPS diff: 02cf6c70c5..8d9e658d11/DEPS

No update to Clang.

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

Change-Id: Ic51b67c99e69bb2280ff6865ecdcfb8ec01821fc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169743
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@{#30682}
2020-03-04 16:37:06 +00:00
24dbb21383 Enable quality scaler for simulcast and SVC if only one stream is active
Also, make sure active flags are not lost in simulcast encoder adapter
which is needed in case of simulcast encoder adapter is used.

VP9 libvpx encoder currently ignores scaling setting for SVC, but libvpx
fix is incoming.

TESTED=On a manually patched chrome with singlecast-simulcast vp8 stream.

Bug: webrtc:11396
Change-Id: Ic81f014bec1bdaaf6d5d173743933e5d77d71ea2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169547
Reviewed-by: Evan Shrubsole <eshr@google.com>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30681}
2020-03-04 15:22:00 +00:00
589b41e743 Change ownership of encoded data buffer in H264 encoder.
Bug: None
Change-Id: I92b5acacf6bb3a81f8d67043674ea63b4898cbd9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169721
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30680}
2020-03-04 13:26:26 +00:00
420ad1af1e Fix video_loopback crash when selecting all streams
When selecting all streams there was an index out of bounds
checking the selected temporal layer, which is -1 so was irrelevant.

My fix is to prevent selecting a temporal layer and all streams
at the same time.

Bug: webrtc:11402
Change-Id: I0641b926cba35878945b866f2c59b4b0281f0852
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169720
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Evan Shrubsole <eshr@google.com>
Cr-Commit-Position: refs/heads/master@{#30679}
2020-03-04 10:25:06 +00:00
4518a20e14 Roll chromium_revision b7f5172df2..02cf6c70c5 (746590:746692)
Change log: b7f5172df2..02cf6c70c5
Full diff: b7f5172df2..02cf6c70c5

Changed dependencies
* src/base: 0705053a03..b2edb1de54
* src/build: 7fe03edef1..fa4450f206
* src/ios: fce52a824c..6c759e4bb6
* src/testing: 034fd563af..11cd0dba90
* src/third_party: c55c7c146e..bbcb7915e1
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/f6edc90900..bbd4f3e605
* src/third_party/depot_tools: e1318818e6..ec2a6ce270
* src/tools: 05d4a48c5a..a42a28c9ef
DEPS diff: b7f5172df2..02cf6c70c5/DEPS

No update to Clang.

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

Change-Id: I7dfb9bf4d0f1b2218cc36348034f368721ef11aa
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169700
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@{#30678}
2020-03-04 08:50:47 +00:00
8063698105 Roll chromium_revision 0380a339ee..b7f5172df2 (746487:746590)
Change log: 0380a339ee..b7f5172df2
Full diff: 0380a339ee..b7f5172df2

Changed dependencies
* src/base: 4f2a87ce67..0705053a03
* src/build: fec0634974..7fe03edef1
* src/ios: 3ebdf1262f..fce52a824c
* src/testing: 9901efe29b..034fd563af
* src/third_party: b6144228ce..c55c7c146e
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/6432bb46ab..1e859054c3
* src/third_party/depot_tools: a3b6fd06f9..e1318818e6
* src/third_party/harfbuzz-ng/src: 63b8190db8..558f922788
* src/tools: c804b64e5f..05d4a48c5a
DEPS diff: 0380a339ee..b7f5172df2/DEPS

No update to Clang.

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

Change-Id: I37bacf3ab6ed4cc3bd400f6cf5e8b35b980a3bdc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169682
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@{#30677}
2020-03-04 00:36:42 +00:00
40d8cb5fc0 Roll chromium_revision 20a0a16ef0..0380a339ee (746350:746487)
Change log: 20a0a16ef0..0380a339ee
Full diff: 20a0a16ef0..0380a339ee

Changed dependencies
* src/base: 3d47531445..4f2a87ce67
* src/build: 522f698392..fec0634974
* src/ios: fc94959d02..3ebdf1262f
* src/testing: b2cdde9970..9901efe29b
* src/third_party: 0771d81226..b6144228ce
* src/tools: 2befac61af..c804b64e5f
DEPS diff: 20a0a16ef0..0380a339ee/DEPS

No update to Clang.

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

Change-Id: I6bf747dfde8d8ba0fb95a7f61a7133ed58a6d6d4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169680
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@{#30676}
2020-03-03 20:48:06 +00:00
ccefde95b3 VoIP interfaces API enhancement (continuation of 169000)
Bug: webrtc:11251
Change-Id: Iecde33b86856b14db5abade3301a842d5007568d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169034
Commit-Queue: Tim Na <natim@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30675}
2020-03-03 18:19:54 +00:00
5e1ea25189 Simplify initialization of test FrameGeneratorCapturerConfig.
Allowing assignment of the AutoOpt fields:
AutoOpt<T> field = T();

Bug: webrtc:9883
Change-Id: I3fd73d29b4d8c6c6b72ae9ed5fb9511ae98af95e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169558
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30674}
2020-03-03 16:15:08 +00:00
a598fafa41 Fixes flaky ADM unittest
Bug: webrtc:11399
Change-Id: Ic91e4954383f2f393efc23ae84587d945fd310fe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169556
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30673}
2020-03-03 15:07:58 +00:00
2240d5e397 Roll chromium_revision 73a396877b..20a0a16ef0 (745464:746350)
Change log: 73a396877b..20a0a16ef0
Full diff: 73a396877b..20a0a16ef0

Changed dependencies
* src/base: 63ecbb77ca..3d47531445
* src/build: 2b17c86521..522f698392
* src/buildtools: ef2f1b3249..fa6ae42dcf
* src/ios: 2a438f6dab..fc94959d02
* src/testing: 22bc9c2523..b2cdde9970
* src/third_party: ac875ae539..0771d81226
* src/third_party/android_deps/libs/androidx_annotation_annotation: version:1.0.0-cr0..version:1.1.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_auth: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_auth_api_phone: version:15.0.1-cr0..version:17.1.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_auth_base: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_base: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_basement: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_cast: version:16.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_cast_framework: version:16.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_clearcut: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_fido: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_flags: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_gcm: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_iid: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_instantapps: version:16.0.0-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_location: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_phenotype: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_places_placereport: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_stats: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_tasks: version:15.0.1-cr0..version:17.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_vision: version:15.0.1-cr0..version:18.0.0-cr0
* src/third_party/android_deps/libs/com_google_android_gms_play_services_vision_common: version:15.0.1-cr0..version:18.0.0-cr0
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/03a5e99059..f6edc90900
* src/third_party/depot_tools: 1e247059f4..a3b6fd06f9
* src/third_party/freetype/src: 216e077600..6a431038c9
* src/tools: b011cd9830..2befac61af
DEPS diff: 73a396877b..20a0a16ef0/DEPS

No update to Clang.

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

Change-Id: I7ff294efe1acb5feccf4868c8e3ed5a6caf6ff8b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169641
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@{#30672}
2020-03-03 14:46:08 +00:00
df12414d4f Add jonaso@ to p2p/OWNERS
Bug: None
Change-Id: Ic502e2c63a3ddf10697c12f7ac8067b2af169314
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169555
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30671}
2020-03-03 14:10:18 +00:00
52aea5d3f3 Unbreak ICE renomination
This patch fixes a problem in https://webrtc.googlesource.com/src/+/71ff07369837d6575c04ebff7002d07d6e0af25f
that when adding standard compliance validation of ufrag/pwd
accidentally broken ice renomination by introducing a new "constructor".

Bug: chromium:1044521
Change-Id: If1b18b1d728e55db9da385b37162a9cb5e61ac48
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169549
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30670}
2020-03-03 13:26:27 +00:00
134c6996c8 Fix Chromium Roll failing because of -Wrange-loop-construct
Bug: webrtc:11398
Change-Id: I51f6f9968b3a94b5fec325e8b5d29fd2bb290ee1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169553
Commit-Queue: Courtney Edwards <courtneyfe@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30669}
2020-03-03 13:04:25 +00:00
496a335a87 Add field trials for sending ping on network switches
This patch introduces 2 new field trials that make p2p_transport_channel
to send ping on network switches. The purpose of this is to reduce the
time that the peers disagre on which connection to use.

- send_ping_on_switch_ice_controlling
Send a ping from the ICE_CONTROLLING side when switching connection.
- send_ping_on_nomination_ice_controlled
Send a ping from the ICE_CONTROLLED side when a connection has been
nominated by remote side.

The extra traffic by these PINGS are considered harmless since
network switches does not happen that often.

Bug: webrtc:10273
Change-Id: Id7abe268c79ceb2404c0543849d5666466e58d0c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169550
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30668}
2020-03-03 12:25:55 +00:00
da7267a10f Makes Thread::Send execute sent messages after pending posted messages.
Bug: webrtc:11255
Change-Id: I4b9036d22c9db3a5ec0e19fc5f2f5ac0d7e2289a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168058
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Ali Tofigh <alito@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30667}
2020-03-03 12:15:55 +00:00
3a087a839a Transform encoded frame in RTPSenderVideo.
This change is part of the implementation of the Insertable Streams Web
API: https://github.com/alvestrand/webrtc-media-streams/blob/master/explainer.md

Design doc for WebRTC library changes:
http://doc/1eiLkjNUkRy2FssCPLUp6eH08BZuXXoHfbbBP1ZN7EVk

Bug: webrtc:11380
Change-Id: I491ecefc60d184b75128799274c7d7efcf907d2a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169128
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Marina Ciocea <marinaciocea@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30666}
2020-03-03 08:17:49 +00:00
83762b21db Use NetworkToHost32 instead of HostToNetwork32 to translate PPID.
Note that this wasn't actually making a difference since both do the
same thing effectively.

Bug: webrtc:11386
Change-Id: I49d84d363dce12eabeb3770b40abdfdb674a05ac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169433
Commit-Queue: Taylor <deadbeef@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30665}
2020-03-03 01:51:51 +00:00
d084ea93b6 BoundedInlineVector: Add resize() method
Bug: webrtc:11391
Change-Id: I34d659d0e295617e9058393d4d1b510111a78b83
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169520
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30664}
2020-03-02 20:55:28 +00:00
c126937564 BoundedInlineVector: Vector class of bounded size with inline allocation
Selling point is that it never touches the heap. Intended use case is
cheaply returning a variable, bounded, and small number of things from
a function.

Specifically, there are situations where we'd like to return things like

  ArrayView<ArrayView<float>>

where we currently have to allocate an array of ArrayView<float> for
the outer ArrayView to point to, which is a bother; however, although
the outer ArrayView is of variable size, that size is statically
guaranteed to not exceed some small constant. After this CL, we'll be
able to instead return

  BoundedInlineVector<ArrayView<float>, kSmallConstant>

which is much more convenient. We already had the option of returning e.g.

  std::vector<ArrayView<float>>

but that would bloat our binary with code to handle heap allocations
in places we'd rather be lean and mean.

https://godbolt.org/z/r-vcPj demonstrates that the overhead compared to
a raw C array + a size is ~zero.

Bug: webrtc:11391
Change-Id: Ifb6d937193052588be641aa62cc67ba0ec64ded6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168944
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30663}
2020-03-02 20:45:58 +00:00
f52d3ed084 Adds transport overhead to route changes in scenario tests.
Bug: webrtc:9510
Change-Id: Iadc67420c9db085f4ae6325a1861fd78d9faa5a8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169362
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30662}
2020-03-02 15:32:19 +00:00
ae92244054 Clean VP8 header parser
The old implementation has undefined behavior in it (unaligned read of uint32_t)
Now it's closer to the reference implementation:
https://tools.ietf.org/html/rfc6386#section-20.2

Also, added some comments and named some variables to make it more clear, that the
parser actually does.

Bug: chromium:1057551
Change-Id: I84c1912867e2794502e8a63302c938a0cbab2c4e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169545
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30661}
2020-03-02 15:05:48 +00:00
7d3f602dbc Make scenario tests more tolerant on iOS.
Making these tests run shorter broke them on iOS. I think we can just
be more tolerant on iOS.

This also tried to re-enable the test on dbg; hopefully the increased
tolerance is enough.

Bug: None
Change-Id: Ic8c54dd46b0f5cb219b0c16da81c9486f6c45f10
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169440
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30660}
2020-03-02 14:21:08 +00:00
b03422a737 Remove deprecated method onEncodingBitrate.
Bug: webrtc:11341
Change-Id: Id299d8000fc8e24725aba3e5b261fdd87af2aa86
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169544
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Mirta Dvornicic <mirtad@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30659}
2020-03-02 12:54:58 +00:00
109e23c9ce Increase accepted PSNR range for SimTimeEncoding test
Currently IOS64 Release bot produces PSNR value 35.2

Bug: webrtc:11395
Change-Id: I2eef9ca7afdf074c74eec12aa48952ecf0d02281
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169543
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30658}
2020-03-02 12:42:42 +00:00
db5d7e470f Cleanup: Use common IP overhead definitions in test and prod code
This avoid duplication. As part of this moving the overhead calculation
to the IP address class so it's easier to find and more natural to use.

Bug: webrtc:9883
Change-Id: If4d865f445bc1a302572896932966ce30294e339
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169445
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30657}
2020-03-02 11:36:58 +00:00
61f74d91f8 Reland "Expose can_trickle_ice_candidates on PeerConnection"
This reverts commit cb8c40138ca170f841bc45fa6771cdfc4b966e5f.

Reason for revert: Added missing default.

Original change's description:
> Revert "Expose can_trickle_ice_candidates on PeerConnection"
>
> This reverts commit c6a65c8866487c6adc0a7bb472d3bad9389501f9.
>
> Reason for revert: Breaks downstream due to missing default
>
> Original change's description:
> > Expose can_trickle_ice_candidates on PeerConnection
> >
> > Bug: chromium:708484
> > Change-Id: I9a40e75066341f0d9f965bd3718bfcb3f0459533
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169450
> > Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> > Reviewed-by: Taylor <deadbeef@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30653}
>
> TBR=deadbeef@webrtc.org,hta@webrtc.org
>
> Change-Id: Iaa5b977c4237715a8a5127cf167cf6512a3f7059
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: chromium:708484
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169540
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30655}

TBR=deadbeef@webrtc.org,hta@webrtc.org

Change-Id: I608da7781f158b4b02dd226d4dcd5615c4935fa8
Bug: chromium:708484
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169541
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30656}
2020-03-02 11:35:53 +00:00
cb8c40138c Revert "Expose can_trickle_ice_candidates on PeerConnection"
This reverts commit c6a65c8866487c6adc0a7bb472d3bad9389501f9.

Reason for revert: Breaks downstream due to missing default

Original change's description:
> Expose can_trickle_ice_candidates on PeerConnection
> 
> Bug: chromium:708484
> Change-Id: I9a40e75066341f0d9f965bd3718bfcb3f0459533
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169450
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Taylor <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30653}

TBR=deadbeef@webrtc.org,hta@webrtc.org

Change-Id: Iaa5b977c4237715a8a5127cf167cf6512a3f7059
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:708484
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169540
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30655}
2020-03-02 10:14:14 +00:00
412a31bbf8 Insert frame transformer between Depacketizer and Decoder.
Add a new API in RTReceiverInterface, to be called from the browser side
to insert a frame transformer between the Depacketizer and the Decoder.

The frame transformer is passed from RTReceiverInterface through the
library to be eventually set in RtpVideoStreamReceiver, where the frame
transformation will occur in the follow-up CL
https://webrtc-review.googlesource.com/c/src/+/169130.

This change is part of the implementation of the Insertable Streams Web
API: https://github.com/alvestrand/webrtc-media-streams/blob/master/explainer.md

Design doc for WebRTC library changes:
http://doc/1eiLkjNUkRy2FssCPLUp6eH08BZuXXoHfbbBP1ZN7EVk

Bug: webrtc:11380
Change-Id: I6b73cd16e3907e8b7709b852d6a2540ee11b4fed
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169129
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Marina Ciocea <marinaciocea@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30654}
2020-03-02 08:33:44 +00:00
c6a65c8866 Expose can_trickle_ice_candidates on PeerConnection
Bug: chromium:708484
Change-Id: I9a40e75066341f0d9f965bd3718bfcb3f0459533
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169450
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Taylor <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30653}
2020-03-02 05:19:16 +00:00
a08b2384a3 Roll chromium_revision 45a3ae9739..73a396877b (745356:745464)
Change log: 45a3ae9739..73a396877b
Full diff: 45a3ae9739..73a396877b

Changed dependencies
* src/base: 9e6778c686..63ecbb77ca
* src/build: edf827134e..2b17c86521
* src/ios: bf84cd889e..2a438f6dab
* src/testing: 84515eeaa4..22bc9c2523
* src/third_party: 4e52e2df5a..ac875ae539
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/21c99c4478..03a5e99059
* src/third_party/freetype/src: 141da02816..216e077600
* src/tools: 5a867d538f..b011cd9830
DEPS diff: 45a3ae9739..73a396877b/DEPS

No update to Clang.

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

Change-Id: Ic881d6229217865ecc22c9b7cdfcc5945b302833
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169431
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@{#30652}
2020-02-28 17:19:44 +00:00
c8958e5a4f Add RTC_EXPORT to VCMEncodedFrame
This is needed to be able to use webrtc::video_coding::EncodedFrame
is unit tests in Chromium.

TBR=tommi@webrtc.org

Bug: webrtc:11380
Change-Id: Idb3b0ab667a548f5a968e02a8efd91f02585c3f9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169451
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30651}
2020-02-28 16:59:10 +00:00
c028df05ac Extract BWE stats collection.
Extract collection of BWE stats from DefaultVideoQualityAnalyzer to
separate class to prepare for migration on new GetStats API and simplify
quality analyzer.

Bug: webrtc:11381
Change-Id: I0e7e2d7e40b467d7a42633a72a7ffc49ebcb0237
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169444
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30650}
2020-02-28 16:49:20 +00:00
4f3c4fcb1f Temporary debug logging for SingleProcessEncodedImageDataInjector
Bug: None
Change-Id: Idb482c002ed41b9ad750109fd3497425003be11b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169448
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30649}
2020-02-28 15:28:40 +00:00
9f215a7a3f Thread affinity fix for scenario test SetMuted.
This is to satisfy a thread checker in AudioSendStream.

Bug: webrtc:9510
Change-Id: I5ba03562fcdc3e93d77707e41220b82b99581470
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169343
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30648}
2020-02-28 15:20:39 +00:00
cabed431f8 Adds stable target rate to GoogCC debug output.
Bug: webrtc:9510
Change-Id: I99bcc469f758d645d7db180f48b5d1eb623c1117
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169360
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30647}
2020-02-28 15:13:50 +00:00
0fb07f8c90 Deprecate use of cricket::MediaContentDescription::Copy
One should use a std::unique_ptr to the object, as returned
by Clone() instead, not a naked pointer.

Bug: webrtc:10701
Change-Id: I10ab309207f2cb5aec83a6d09336699ed7b26f50
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169342
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30646}
2020-02-28 10:03:49 +00:00
5f999a777d Allow to negotiate dependency descriptor rtp header extension
Without exposing it in capabilities:
this extension is not stable enough to expose it by default,
but already in working state so with munge sdp can be experimented with.

Bug: webrtc:10342
Change-Id: I6bac123325a90431e4769e86da79638869e36cfc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168961
Reviewed-by: Magnus Flodman <mflodman@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30645}
2020-02-28 09:27:51 +00:00
ff61f3a555 Fix + test copying of fixed-sized ArrayView rvalues
Previously, only lvalues were tested, and only lvalues worked.

Bug: webrtc:11389
Change-Id: I524e9d63e0840c3ba274dbe2062d78f72d79019d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169347
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30644}
2020-02-28 09:26:11 +00:00
6038383565 [Overuse] Separate getting adaptation target from applying it.
This CL takes us one step closer to being able to evaluate alternative
possible adaptation targets (e.g. multi-stream adaptation) by exposing
the target separately from applying it.

This is a refactoring of OnResourceUnderuse() and OnResourceOveruse().

Prior to this CL, the target resolution or frame rate was calculated
inside these methods and applied if possible. This CLs makes these two
steps (calculating a usable target + applying it) separate methods.

After this CL, the target is expressed as AdaptationTarget and is
calculated and returned by GetAdaptUpTarget() and GetAdaptDownTarget().
The target is only returned if it can be applied - and CanAdaptUp() +
CanAdaptDown() are merged with these methods.

Applying the target happens at ApplyAdaptationTarget().

Bug: webrtc:11222
Change-Id: I8e488be1d1590c23848db816d49a7738562e176d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169100
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Evan Shrubsole <eshr@google.com>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30643}
2020-02-28 09:00:31 +00:00
e77912ba8c Insert frame transformer between Encoded and Packetizer.
Add a new API in RTPSenderInterface, to be called from the browser side
to insert a frame transformer between the Encoded and the Packetizer.

The frame transformer is passed from RTPSenderInterface through the
library to be eventually set in RTPSenderVideo, where the frame
transformation will occur in the follow-up CL
https://webrtc-review.googlesource.com/c/src/+/169128.

Insertable Streams Web API explainer:
https://github.com/alvestrand/webrtc-media-streams/blob/master/explainer.md

Design doc for WebRTC library changes:
http://doc/1eiLkjNUkRy2FssCPLUp6eH08BZuXXoHfbbBP1ZN7EVk

Bug: webrtc:11380
Change-Id: I46cd0d8a798c2736c837e90cbf90d8901c7d27fb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169127
Commit-Queue: Marina Ciocea <marinaciocea@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30642}
2020-02-28 07:43:13 +00:00
c62e4c5dc7 Test copying of variable-sized ArrayView rvalues
Previously, only lvalues were tested.

Bug: webrtc:11389
Change-Id: I4067c8bfc40c52de0622a6f58a5c7b7805b0fa7b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169346
Reviewed-by: Per Åhgren <peah@webrtc.org>
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30641}
2020-02-28 07:27:33 +00:00
63288e382a Whitespace change to kick bots.
Testing recipe change.

Change-Id: Ided1943e202d48952be0e3e79f0655293d8b879a
Tbr: mbonadei@webrtc.org
Bug: None
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169131
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30640}
2020-02-28 06:44:59 +00:00
56c2179a88 Roll chromium_revision dcd1a26c92..45a3ae9739 (745220:745356)
Change log: dcd1a26c92..45a3ae9739
Full diff: dcd1a26c92..45a3ae9739

Changed dependencies
* src/build: 105e1cad64..edf827134e
* src/ios: 0ebbdea2fe..bf84cd889e
* src/testing: c133113bbd..84515eeaa4
* src/third_party: 34974f4583..4e52e2df5a
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/9db20bb343..21c99c4478
* src/third_party/depot_tools: a4f9aa0375..1e247059f4
* src/tools: 508e296745..5a867d538f
DEPS diff: dcd1a26c92..45a3ae9739/DEPS

No update to Clang.

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

Change-Id: I389f6332f2f090c752ee412c267c4029de514f90
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169425
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@{#30639}
2020-02-28 04:34:58 +00:00