1561 Commits

Author SHA1 Message Date
Patrik Höglund
7b201012bc Flip histograms to true by default, fix unit in isac_fix_test.
Requires downstream changes for all WebRTC perf tests, and
a corresponding recipe change so isac_fix_test starts using the new
flow.

Bug: chromium:1029452
Change-Id: I8918fca9bef003d365037c1c6bf7c55747dfed99
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170633
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30906}
2020-03-26 19:36:44 +00:00
Artem Titov
d19513f3ff Move calculation of target_encode_bitrate to DefaultVideoQualityAnalyzer
To migrate on new GetStats API and properly support target encode bitrate
for regular, simulcast and svc cases we need to calculate it inside video
quality analyzer getting values from SetRates in VideoEncoder.

Bug: webrtc:11381
Change-Id: Ia37acac764ed3c30f64cdbfda8906d543fa03ae2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171501
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30881}
2020-03-25 11:38:47 +00:00
Nico Weber
000fb8440f webrtc: Suppress a -Wunreachable-code warning on Android.
Bug: chromium:346399
Change-Id: Ie67cb36f96acd1ce752a274f309453be65fd83e9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171640
Commit-Queue: Nico Weber <thakis@chromium.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30879}
2020-03-25 10:27:27 +00:00
Patrik Höglund
1b20c41dcb Greatly simplify flags for test binaries.
Since we're now calling the shots of what flags get passed in the
recipes, we can just pass the right ones right away and remove all
the flag renaming.

--isolated-script-test-output is no longer passed, so we can just
remove it. The recipe is currently passing
--isolated-script-perf-test-output but I will start passing the
underscore version shortly.

Bug: chromium:1051927
Change-Id: I571090e62f79ea17c793295df7f5abb21f45d207
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171681
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30878}
2020-03-25 09:56:07 +00:00
Danil Chapovalov
69679598e7 Hide Av1 specfic logic from RtpVideoReceiver into depacketizer interface.
Bug: None
Change-Id: I0498d9e82cbc876d54bebc7f3265e3ae6da61614
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171062
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30872}
2020-03-24 15:55:00 +00:00
Artem Titov
ea6ae4a323 Add calculation of actual encode bitrate into DefaultVideoQualityAnalyzer
Bug: webrtc:11381
Change-Id: Ic636412fef5e4134f47974fe24a24d8c7636bcdd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171107
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30860}
2020-03-23 22:11:14 +00:00
Artem Titov
4c0921129d Use real video duration instead of test duration.
Use real video duration instead of test duration to calculate harmonic
frame rate in DefaultVideoQualityAnalyzer.

Bug: webrtc:11445
Change-Id: Ia5f96b2f87178419ec6ebe2ff5dbcb5a0c03c824
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171104
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30854}
2020-03-23 10:13:54 +00:00
Harald Alvestrand
8515d5a4ab Refactor ssl_stream_adapter API to show object ownership
Backwards compatible overloads are provided.

Bug: none
Change-Id: I065ad6b269fe074745f9debf68862ff70fd09628
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170637
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30851}
2020-03-21 18:53:46 +00:00
Jonas Oreland
71fda3613c Extend NetworkRoute with more info about local/remote endpoints
This patch extends the NetworkRoute struct with more information
about local/remote endpoints. It adds
- adapter type
- adapter id
- relay

(previously it was "only" network_id)

The patch leaves the {local/remote}_network_id fields
around and populated since downstream projects depend
on them. They will be removed once they have migrated.

OWNER: srte@ call/ test/
OWNER: asapersson@ video/
OWNER: hta@ p2p/ pc/ rtc_base/

BUG: webrtc:11434
Change-Id: I9bcec385b40d707db385fef40b2c7a315dd35dd0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170628
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30848}
2020-03-20 16:55:38 +00:00
Patrik Höglund
3428827c40 Write pb perf output files on iOS.
Bug: chromium:1029452
Change-Id: I8cc44630109292b9ad1ab7d03b34c2c5e1b953fd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170980
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30827}
2020-03-19 08:58:57 +00:00
Patrik Höglund
6725b648c8 Proper fix to the summary options problem.
It's better to set this to the right value in the C++ API rather
than the hack in catapult_uploader.py.

Bug: chromium:1029452
Change-Id: Ia942ff22f8422874cd226e6a7fdce20333ac4a50
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170632
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30817}
2020-03-18 11:53:02 +00:00
Sebastian Jansson
e6cedbbff6 Ensures that all simulated TCP packets are at least 4 bytes.
Bug: webrtc:10839
Change-Id: I4f2f5cf75b9fbcedb39e3fa05d11c68a7de6f5b1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170051
Reviewed-by: Ali Tofigh <alito@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30780}
2020-03-12 17:42:13 +00:00
Sebastian Jansson
d35a686517 Reland "Fix for out-of-bounds write in square test frame generator."
This is a reland of 30026214b13535a9fe1c47f1463378fbf976c643

Original change's description:
> Fix for out-of-bounds write in square test frame generator.
> 
> The length is set on construction and includes an assumption on the
> image resolution, if the resolution changes, a square might be larger
> than what fits into the buffer, causing an out of bounds write. This
> CL fixes this simply by restricting the size of the square.
> 
> Bug: webrtc:11415
> Change-Id: Iee14a1971997b4ae2fddef0a7af7c76a2509e879
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170042
> Commit-Queue: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Ali Tofigh <alito@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30732}

Bug: webrtc:11415
Change-Id: I0dc584858208f478434ebc6f9e31634595c4e5ad
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170116
Reviewed-by: Ali Tofigh <alito@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30779}
2020-03-12 17:09:22 +00:00
Artem Titov
b8996ddac0 Revert "Temporary debug logging for SingleProcessEncodedImageDataInjector"
This reverts commit 4f3c4fcb1f26606af9e7ce0420d1fa8fbc95d82f.

Reason for revert: bug is fixed, so temporary logging can be removed.

Original change's description:
> 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}

TBR=mbonadei@webrtc.org,titovartem@webrtc.org

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

Bug: None
Change-Id: I8f9587b4963bd089b3f870b43bd7a8b7e6a75b38
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170342
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30777}
2020-03-12 14:31:43 +00:00
Patrik Höglund
b8e69efcee Write protos as binary.
We need to write protos as "wb" and not "w", otherwise we get CRLF
on Windows which corrupts the proto.

Bug: chromium:1029452
Change-Id: Iabf841405134d7bc2523ac48219ca7cb9d8214c1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170320
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30772}
2020-03-12 09:43:57 +00:00
Artem Titov
6817394eac Fix: don't use recovered packets in UlpFEC recovery
Bug: b/141915452
Change-Id: I75324651694e5c3233bc3627269289d3f0a91514
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170225
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30760}
2020-03-11 12:49:11 +00:00
Mirko Bonadei
1230c8568e Revert "Fix for out-of-bounds write in square test frame generator."
This reverts commit 30026214b13535a9fe1c47f1463378fbf976c643.

Reason for revert: Speculative revert, breaks downstream test.

Original change's description:
> Fix for out-of-bounds write in square test frame generator.
> 
> The length is set on construction and includes an assumption on the
> image resolution, if the resolution changes, a square might be larger
> than what fits into the buffer, causing an out of bounds write. This
> CL fixes this simply by restricting the size of the square.
> 
> Bug: webrtc:11415
> Change-Id: Iee14a1971997b4ae2fddef0a7af7c76a2509e879
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170042
> Commit-Queue: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Ali Tofigh <alito@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30732}

TBR=srte@webrtc.org,alito@webrtc.org

Change-Id: Ia0056da04a6f6f817ccadfc38aabe0c5f94754cc
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:11415
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170115
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30743}
2020-03-10 16:19:02 +00:00
Sebastian Jansson
30026214b1 Fix for out-of-bounds write in square test frame generator.
The length is set on construction and includes an assumption on the
image resolution, if the resolution changes, a square might be larger
than what fits into the buffer, causing an out of bounds write. This
CL fixes this simply by restricting the size of the square.

Bug: webrtc:11415
Change-Id: Iee14a1971997b4ae2fddef0a7af7c76a2509e879
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170042
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Ali Tofigh <alito@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30732}
2020-03-09 18:55:04 +00:00
Patrik Höglund
afa2e5f18c Purge phoglund from most OWNERS files.
I'll hold on to the root OWNER for a bit longer for convenience.

Bug: None
Change-Id: I13303ba726fed612adc74008eeaaeadf9595e084
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170047
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30727}
2020-03-09 14:08:30 +00:00
Erik Språng
f87536c9de Reland "Reland "Refactors UlpFec and FlexFec to use a common interface.""
This is a reland of 49734dc0faa69616a58a1a95c7fc61a4610793cf

Patchset 2 contains a fix for the fuzzer set up. Since we now parse
an RtpPacket out of the fuzzer data, the header needs to be correct,
otherwise we fail before even reaching the FEC code that we actually
want to test.

Bug: webrtc:11340, chromium:1052323, chromium:1055974
TBR=stefan@webrtc.org

Original change's description:
> Reland "Refactors UlpFec and FlexFec to use a common interface."
>
> This is a reland of 11af1d7444fd7438766b7bc52cbd64752d72e32e
>
> Original change's description:
> > Refactors UlpFec and FlexFec to use a common interface.
> >
> > The new VideoFecGenerator is now injected into RtpSenderVideo,
> > and generalizes the usage.
> > This also prepares for being able to genera FEC in the RTP egress
> > module.
> >
> > Bug: webrtc:11340
> > Change-Id: I8aa873129b2fb4131eb3399ee88f6ea2747155a3
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168347
> > Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> > Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> > Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> > Commit-Queue: Erik Språng <sprang@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30515}
>
> Bug: webrtc:11340, chromium:1052323
> Change-Id: Id646047365f1c46cca9e6f3e8eefa5151207b4a0
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168608
> Commit-Queue: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30593}

Bug: webrtc:11340, chromium:1052323
Change-Id: Ib8925f44e2edfcfeadc95c845c3bfc23822604ed
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169222
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30724}
2020-03-09 13:41:35 +00:00
Nikita Zetilov
c5d8edb322 Remove old FakeVP8Encoder alias.
Bug: None
Change-Id: I834a9caad49d47898b826e6be491f663445b6b44
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169856
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Commit-Queue: Nikita Zetilov <zetilovn@google.com>
Cr-Commit-Position: refs/heads/master@{#30716}
2020-03-06 17:25:15 +00:00
Nikita Zetilov
8e9fd4857e Fix FakeVp8Encoder name.
Bug: None
Change-Id: Iaa11a452fcb6fb6f33d1396eb4e6fe9c050166ad
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169845
Commit-Queue: Nikita Zetilov <zetilovn@google.com>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30703}
2020-03-06 11:12:21 +00:00
Artem Titov
b1e0618e89 Add printout of supported codecs in PC test framework
Bug: None
Change-Id: Ib4fbbc3e782b8478ccf4eef72ebd74bc040b5f18
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169731
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30696}
2020-03-05 18:05:26 +00:00
Ilya Nikolaevskiy
0360dc490b Fix RtpReplayer so what vp9 fuzzer would work
Replayer isn't triggered in any pre- or post-submit checks
and is built only as a part of fuzzers. Therefore it got out of sync
with the requirement of Call::Config::trials being set.

Bug: chromium:1030755
Change-Id: I467a5fa19137020f6fc748b6adb6f82a8a88f9d1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169847
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30695}
2020-03-05 17:27:01 +00:00
Björn Terelius
987ef48258 Adds field trial to separate audio and video packets for delay-based overuse detection.
The decision to route audio packets to a separate overuse detector
is off by default and requires the field trial
WebRTC-Bwe-SeparateAudioPackets/enabled,packet_threshold:10,time_threshold:1000ms/
The parameters control the threshold for switching over to the
audio overuse detector if we stop receiving feedback for video.

Bug: webrtc:10932
Change-Id: Icdde35bc7a98b18b1a344bd2d620a890fd9421d9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168342
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30694}
2020-03-05 16:29:55 +00:00
Artem Titov
3c91b31162 Fix potential deadlock during release of quality analyzing codecs
Bug: webrtc:11407
Change-Id: I45637e39a03a385e0544d4de06786b9508b25ce8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169728
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30690}
2020-03-05 10:51:41 +00:00
Sebastian Jansson
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
Sebastian Jansson
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
Patrik Höglund
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
Danil Chapovalov
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
Artem Titov
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
Artem Titov
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
Sebastian Jansson
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
Harald Alvestrand
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
Alessio Bazzica
729310aa18 iSAC fixed|float encoder fuzzers
Bug: webrtc:11388
Change-Id: I5910492ef9471aa193aa50ef5e14b4b66cb6542a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169365
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30635}
2020-02-27 18:26:05 +00:00
Alessio Bazzica
02b76bd40b Opus Encoder fuzzer: separate target for FuzzAudioEncoder
Move FuzzAudioEncoder to a separate target to make it available for
other encoders.

Bug: webrtc:11388
Change-Id: I8b9a0f810791880eedb129b55eb33f154790e48f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169364
Commit-Queue: Alessio Bazzica <alessiob@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30634}
2020-02-27 16:13:15 +00:00
Sebastian Jansson
7c1ac76f52 Adds binary proto ANA support in scenario tests.
This makes it easier to reuse existing audio network adaptation
configurations in the scenario framework.

Bug: webrtc:9510
Change-Id: I06ab08684d449fef7fffe265d1078738d526a43d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169363
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30633}
2020-02-27 14:53:59 +00:00
Sebastian Jansson
8ad3427d7f Use the last video stream for scenario tests stats.
This makes slightly more sense when looking at video resolution etc.

Bug: webrtc:9510
Change-Id: I49d39cac23d2f5d7ca09f2a27152c7519ea639f1
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169344
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30632}
2020-02-27 14:52:54 +00:00
Danil Chapovalov
14273de88b Make ProcessThread be a TaskQueue implementation
That would allow to switch components from relying on ProcessThreads to
relying on TaskQueue one by one, without introducing new threads.

Bug: webrtc:6289
Change-Id: I18fe5d679d4d4d0ddf4a11900c9814eb570284d6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/167533
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30631}
2020-02-27 14:29:03 +00:00
Artem Titov
4a6f81829b Add ability to enable AV sync in PC level tests
Bug: webrtc:11381
Change-Id: I223ff0a2b81632ee7cbbac5b722bb6a7d5f72f7e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168959
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30629}
2020-02-27 14:22:23 +00:00
Sebastian Jansson
eed48b86ed Disable PeerScenarioQualityTest.PsnrIsCollected on windows.
Disabled due to flakiness.

Bug: webrtc:10839
Change-Id: I651aca6efef4083b4ee008956becab9aa8167121
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169361
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30626}
2020-02-27 13:18:25 +00:00
Mirta Dvornicic
4f34d78c85 Report available instead of encoding bitrate to VideoEncoderSelector.
The encoding bitrate might be limited depending on the current encoder.

Bug: webrtc:11341
Change-Id: I734fce12734b1e703e7948847cdb1365c08a137b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169123
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Commit-Queue: Mirta Dvornicic <mirtad@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30619}
2020-02-26 15:56:36 +00:00
Erik Språng
c310889ec7 Revert "Reland "Refactors UlpFec and FlexFec to use a common interface.""
This reverts commit 49734dc0faa69616a58a1a95c7fc61a4610793cf.

Reason for revert: Still something wrong with ulpfec fuzzer setup.

Original change's description:
> Reland "Refactors UlpFec and FlexFec to use a common interface."
> 
> This is a reland of 11af1d7444fd7438766b7bc52cbd64752d72e32e
> 
> Original change's description:
> > Refactors UlpFec and FlexFec to use a common interface.
> >
> > The new VideoFecGenerator is now injected into RtpSenderVideo,
> > and generalizes the usage.
> > This also prepares for being able to genera FEC in the RTP egress
> > module.
> >
> > Bug: webrtc:11340
> > Change-Id: I8aa873129b2fb4131eb3399ee88f6ea2747155a3
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168347
> > Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> > Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> > Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> > Commit-Queue: Erik Språng <sprang@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#30515}
> 
> Bug: webrtc:11340, chromium:1052323
> Change-Id: Id646047365f1c46cca9e6f3e8eefa5151207b4a0
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168608
> Commit-Queue: Erik Språng <sprang@webrtc.org>
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30593}

TBR=sprang@webrtc.org,stefan@webrtc.org

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

Bug: webrtc:11340, chromium:1052323
Change-Id: I920ce0a48a08768d7a98a563e2b66bd6eb8602b7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169121
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30616}
2020-02-26 09:37:31 +00:00
Danil Chapovalov
97b59f060c Reduce RtpFrameReferenceFinder fuzzer input to more reasonable value
frame_id is unwraped from a 16bit value.
Getting to int64_t boundaries would take more than 2^48 packets.
That scenario considered unrealistic and thus untested.

Bug: chromium:1053482
Change-Id: Ib3f52d4528b20915b2330773f616d9304f45cac6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168682
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30607}
2020-02-25 14:15:24 +00:00
Artem Titov
fcf4e2cd67 Fix potential memory exhaustion in DefaultVideoQualityAnalyzer
DefaultVideoQualityAnalyzer accumulates in flight frames in internal
queue to perform psnr/ssim computation. This queue can grow a lot if
test experience high frame loss. As a result of this, the analyzer
can use quite a lot of memory and cause OOM crashes.

This CL limits the size of the queue based on the assumption that after
a certain point a frame can be considered lost and so it is impossible
to calculate PSNR/SSIM.

Bug: webrtc:11373
Change-Id: Iaabcc8d1c3c9142dc58ea5f2f30f599864b088e8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168951
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30602}
2020-02-25 10:48:58 +00:00
Patrik Höglund
414da244f0 Add PerfResultsReporter.
This is the WebRTC equivalent of testing/perf/perf_result_reporter.h
in Chromium. That class was introduced because the PrintResult
functions are quite hard to use right. It was easy to mix up
metrics, modifiers and stories, for instance.

I choose to introduce this new class because I need to create a new
API for PrintResult anyway. For instance, the important bool isn't
really supported by histograms. Also I would like to restrict units
to an enum because you cannot make up your own units anymore.
We could also have had a strictly checked string type, but that's
bad API design. An enum is better because the compiler will check
that the unit is valid rather than at runtime.

Furthermore, down the line we can probably make each reporter write
protos directly to /tmp and merge them later, instead of having a
singleton which writes results at the end and keeps all test results
in memory. This abstraction makes it easy to make a clean and simple
implementation of just that.

Steps:
1) land this
2) start rewriting perf tests to use this class
3) nuke PrintResult functions
4) don't convert units to string, convert directly from Unit
   to proto::Unit
5) write protos directly from this class (either through
   a singleton or directly) and nuke the perf results writer
   abstraction.

Bug: chromium:1029452
Change-Id: Ia919c371a69309130c797fdf01ae5bd64345ab2e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168770
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30599}
2020-02-25 08:05:53 +00:00
Danil Chapovalov
ce515f7625 Add an integration test frame encryption works with DependencyDescriptor
Bug: webrtc:10342
Change-Id: I3a18c1fbe222eada7a484f8f62a0b5bad76eb073
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168888
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30595}
2020-02-24 16:01:04 +00:00
Erik Språng
49734dc0fa Reland "Refactors UlpFec and FlexFec to use a common interface."
This is a reland of 11af1d7444fd7438766b7bc52cbd64752d72e32e

Original change's description:
> Refactors UlpFec and FlexFec to use a common interface.
>
> The new VideoFecGenerator is now injected into RtpSenderVideo,
> and generalizes the usage.
> This also prepares for being able to genera FEC in the RTP egress
> module.
>
> Bug: webrtc:11340
> Change-Id: I8aa873129b2fb4131eb3399ee88f6ea2747155a3
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168347
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
> Commit-Queue: Erik Språng <sprang@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#30515}

Bug: webrtc:11340, chromium:1052323
Change-Id: Id646047365f1c46cca9e6f3e8eefa5151207b4a0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168608
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30593}
2020-02-24 14:20:27 +00:00
Patrik Höglund
c1cf4b5491 Improve comment in perf_test.h.
I think these functions are so hard to understand, so I tried to
make an as grounded example as possible.

Bug: chromium:1029452
Change-Id: I5d4284bc15b39cb94ba42d2c483a619ecf42fb91
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168945
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30590}
2020-02-24 11:47:28 +00:00
Tim Na
9526c557be Refactoring mock_transport to be used separately
Bug: webrtc:11251
Change-Id: I0a494c34c8d5c458b4d9b1b3616ae360d04df0d4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168980
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Commit-Queue: Tim Na <natim@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30584}
2020-02-21 17:02:52 +00:00