192 Commits

Author SHA1 Message Date
Mirko Bonadei
a8829eb5f3 macro cleanup: "(const override)" -> "(const, override)"
Bug: None
Change-Id: Iffd5db39b1a5ae70b403193b40054df04cf5600b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/362800
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Auto-Submit: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43065}
2024-09-22 18:30:29 +00:00
Florent Castelli
8037fc6ffa Migrate absl::optional to std::optional
Bug: webrtc:342905193
No-Try: True
Change-Id: Icc968be43b8830038ea9a1f5f604307220457807
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/361021
Auto-Submit: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42911}
2024-09-02 12:16:47 +00:00
Helmut Januschka
abb638899e remove deprecated <codecvt>
Bug: chromium:358567090
Change-Id: I0480e8962ee38425406ad167f43d666b57418f5b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/360142
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Helmut Januschka <helmut@januschka.com>
Cr-Commit-Position: refs/heads/main@{#42827}
2024-08-22 10:37:00 +00:00
Jeremy Leconte
53291d49b2 Add 'SkipNextFrame' to the FrameGeneratorInterface.
Also fix PRESUBMIT.py following https://webrtc-review.googlesource.com/c/src/+/358160.

Change-Id: I00682209607a184448255cf5ad8fd213fda7f4af
Bug: b/355120692
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/358320
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#42711}
2024-08-01 14:38:52 +00:00
Philipp Hancke
4158678b46 Split "helpers" from SSL target to "crypto_random" and rename
since it contains helpers mostly related to cryptographically secure random numbers and strings.

BUG=webrtc:339300437

Change-Id: I10db939534b25dc792ac1600a4721d1b84521880
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/352620
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@meta.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42441}
2024-06-07 06:41:51 +00:00
philipel
25468d2405 Update y4m header parser.
Bug: none
Change-Id: Ice21cbb3532c608ac829c898c656170ea45f35bb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/346260
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42024}
2024-04-09 13:06:11 +00:00
Danil Chapovalov
c230da0f1b In IvfVideoFrameGenerator test helper allow to pass webrtc::Environment at construction
To reuse same environment in video encoder and thus avoid creating duplicated environment.

Bug: webrtc:15860, b/326933307
Change-Id: I1c56966301a9b453d615c45626407fede2a6d8b5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/344143
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41956}
2024-03-22 16:39:54 +00:00
Per K
0fa90887c5 Deprecate VideoFrame::timestamp() and set_timestamp
Instead, add rtp_timestamp and set_rtp_timestamp.

Bug: webrtc:13756
Change-Id: Ic4266394003e0d49e525d71f4d830f5e518299cc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/342781
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41894}
2024-03-13 11:08:37 +00:00
Danil Chapovalov
4f63ea423f Deprecate VP8Decoder::Create
Migrate remaining usages inside webrtc (all are test only) to CreateVp8Decoder

Bug: webrtc:15791
Change-Id: I6a8317a8761953208ba746ac785fa1606217e6f5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/340300
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41792}
2024-02-23 13:31:53 +00:00
Dor Hen
4efc830e53 Provide test output path with OutputPathWithRandomDirectory 1/n
First commit in a series of commits to wire up the test output path utility that adds a random directory in the path, for problematic tests that run in concurrent execution environments.

Bug: webrtc:15833
Change-Id: I5e5b3940007be773d77dbbfc953efa810e4e3ea9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/339522
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41738}
2024-02-15 07:35:00 +00:00
Dor Hen
94c3328b61 Provide unified solution for dir name randomization in tests
This approach actually wraps the unique identifier generation into the
function that provides the output path for a test.
This way we don't need to add `CreateRandomUuid()` everywhere that we
have `test::OutputPath` and instead just rename to
`test::OutputPathRandomDir`

Bug: webrtc:15833
Change-Id: Ic9b69b5b599727f07b2906569a84a40edeecd1a0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/338645
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41730}
2024-02-14 07:12:03 +00:00
Dor Hen
5ba4f2ab58 Make file/directory related tests safe for concurrent execution
Providing unique identifiers for files and directories created as part
of unit tests.

Bug: webrtc:15833
Change-Id: If2835c362c47a111aa99b0e3c6ad6a33be061978
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/338260
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#41704}
2024-02-09 08:13:38 +00:00
Sergey Silkin
8c16f1f49d Fix ping-pong mode on single frame sequences
Bug: webrtc:14852
Change-Id: Icc1226460dd8d09aa26edd65b89ef5b38debb31f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/324285
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40988}
2023-10-23 10:52:21 +00:00
qwu16
ae82df718c Add codec name H265 to support H265 in WebRTC
Bug: webrtc:13485
Change-Id: I352b15a65867f0d56fc8e9a9e03081bd3258108e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/316283
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40773}
2023-09-20 09:25:32 +00:00
Tony Herre
55b593fb6b Remove EncodedFrame::MissingFrame and start removing Decode() param
Remove EncodedFrame::MissingFrame, as it was always false in actual
in-use code anyway, and remove usages of the Decode missing_frames param
within WebRTC. Uses/overrides in other projects will be cleaned up
shortly, allowing that variant to be removed from the interface.

Bug: webrtc:15444
Change-Id: Id299d82e441a351deff81c0f2812707a985d23d8
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/317802
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Auto-Submit: Tony Herre <herre@google.com>
Commit-Queue: Tony Herre <herre@google.com>
Cr-Commit-Position: refs/heads/main@{#40662}
2023-08-30 10:38:35 +00:00
Jianhui Dai
9e5defcf74 Implement Y4mFrameGenerator::ChangeResolution()
This CL implements `ChangeResolution()` to let `Y4mFrameGenerator`
generate I420 frame with resolution other than y4m input by scaling. The
code is mostly copied from `IvfVideoFrameGenerator`.

The test case is also added for this change.

Bug: webrtc:15210
Change-Id: I690e427a545a72d93ed39b77fd0f602054a30508
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/311521
Commit-Queue: Jianhui J Dai <jianhui.j.dai@intel.com>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40426}
2023-07-13 00:42:18 +00:00
Jianhui Dai
cc6042d876 Let IvfVideoFrameGenerator support AV1 codec
This CL adds dav1d decoder into `IvfVideoFrameGenerator` to support IVF
input with AV1 codec.

Bug: webrtc:15210
Change-Id: I4cbc93fa62fdc346f3c647bbf26f033bf0cc34ba
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/311340
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jianhui J Dai <jianhui.j.dai@intel.com>
Cr-Commit-Position: refs/heads/main@{#40402}
2023-07-06 04:06:29 +00:00
Florent Castelli
5278b39fab Add H264Encoder::Create()
Most of the usage of the H264Encoder::Create(codec) method passes a
simple codec with just the H264 codec name. This simplified the call
sites in many places and removes references to the codec types.

Bug: webrtc:15214
Change-Id: I4039c0be4ce6e3147c14c7853df4635f344b7d70
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/307222
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40214}
2023-06-02 17:40:26 +00:00
Jared Siskin
7220ee97aa Format the rest
git ls-files | grep -e  "\(\.h\|\.cc\)$" | grep -vE "^(rtc_base|sdk|modules|api|call|common_audio|examples|media|net|p2p|pc)/" | xargs clang-format -i ; git cl format
after landing: add to .git-blame-ignore-revs

Bug: webrtc:15082
Change-Id: I9c7fc4e6fbb023809fb22a89a78be713de6990d3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/302063
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39978}
2023-05-03 12:56:39 +00:00
Mirko Bonadei
b5f2c7edda Make Y4mFrameGenerator read FPS from file format.
Bug: b/269577953
Change-Id: Ied0072e1fdfbfb4d2b11e74a814c0718cad01d66
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294862
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39401}
2023-02-27 14:19:04 +00:00
Mirko Bonadei
b337c40e58 Introduce Y4mFrameGenerator.
Bug: b/269577953
Change-Id: Id28a395235cc88cb5422dd9754483fbac3e50807
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/294100
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39344}
2023-02-20 11:25:26 +00:00
Mirko Bonadei
f1e392214d Make frame generators return the target resolution.
Bug: b/269577953
Change-Id: Ib3db0017becb8a6a680997f59e0f9050a42a3a79
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/293940
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39331}
2023-02-17 13:20:32 +00:00
Sergey Silkin
1985b5a927 Refactor YUV frame reader
Purposes of this refactoring:
1. Add functionality for reading a specified frame.
2. Change resolution and frame rate on per-frame basis.

Both features are needed for https://webrtc-review.googlesource.com/c/src/+/283525

Bug: b/261160916
Change-Id: I6d60e62dbc3913c43b5c1b491690f5cb4a8632dd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/285483
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38829}
2022-12-06 16:23:48 +00:00
Christoffer Jansson
987ebe6b49 Add Fuchsia filesystem specific handling
This unlocks many tests, at least locally.

Bug: b/232740856
Change-Id: Icd8d099aabf6f81906d7c6b3b40f47b501496c6b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/284141
Reviewed-by: Andrey Logvin <landrey@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38695}
2022-11-21 10:27:26 +00:00
Artem Titov
2068d0daa7 [PCLF] Add ability to provide custom VideoFrameWriter
Bug: b/240540204
Change-Id: Ica85954ea61b7caf4e2d726895b6a439b47d7bbb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/278800
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38368}
2022-10-12 14:08:00 +00:00
Artem Titov
b984c07dab Fix y4m frame reader to support any resolution
Bug: b/240540204
Change-Id: I7069bb0105ea3c6aa66e9d73f5f63ac5ec470733
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/278620
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38337}
2022-10-10 14:13:24 +00:00
Mirko Bonadei
9d9c2d5795 Make header files self contained.
This CL adds #includes to header files in order to make them
self contained after the preprocessor pass.

Bug: b/251890128
Change-Id: I81c3ba38fb8ab8a2bbd151ba99aa871fae9f1b1b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/278422
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38327}
2022-10-08 08:38:36 +00:00
Artem Titov
cc6aae7a4c Remove unused perf_result_reporter.(h|cc)
Bug: b/246095034
Change-Id: If2618749522f2f0e1b2765f3e0bfc3d43687169f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/276627
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38191}
2022-09-25 09:34:13 +00:00
Markus Handell
2cfc1af78a Update rtc::Event::Wait call sites to use TimeDelta.
Bug: webrtc:14366
Change-Id: I949c1d26f030696b18153afef977633c9a5bd4cf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/272003
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37835}
2022-08-19 10:07:28 +00:00
Ali Tofigh
98bfd99151 Use consistent syntax for constructing std::strings from absl::string_views
Bug: webrtc:13579
Change-Id: Ifaf9901972a39217accd9ef0111f01de9f074058
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/269080
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Ali Tofigh <alito@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37602}
2022-07-23 00:18:31 +00:00
Artem Titov
e4bda7d008 [PCLF] Add video writer which accounts for freezes
Bug: b/237997865
Change-Id: I6d6e3faa48e6bddbe298ead7b1350dd3c70481b2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/268545
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37543}
2022-07-18 11:48:16 +00:00
Artem Titov
63ee39d0be Revert "Add a prefix for objc category."
This reverts commit 181ea6e414c5982015ce161e6368120be3658ec4.

Reason for revert: Breaks downstream project. Kári will help to land it next week.

Original change's description:
> Add a prefix for objc category.
>
> According to the Google Objective-C style [1], category names should
> start with an appropriate prefix. WebRTC has some category definitions
> for system interfaces, but it doesn't use prefixes.
>
> $ otool -ov WebRTC.framework/WebRTC | grep -E "^[0-9a-z]{16} 0x[0-9a-z]+ __OBJC_._CATEGORY" | grep -v "_RTC"
> 0000000002160840 0x217c3c0 __OBJC_$_CATEGORY_UIDevice_$_H264Profile
> 0000000002160850 0x21808b8 __OBJC_$_CATEGORY_AVCaptureSession_$_DevicePosition
> 0000000002160858 0x2180968 __OBJC_$_CATEGORY_NSString_$_StdString
> 0000000002160860 0x21809c8 __OBJC_$_CATEGORY_NSString_$_AbslStringView
>
> To avoid conflicts, prefix the names and methods of those categories.
> Also remove sdk/objc/Framework/Classes/Common/NSString+StdString.h as
> it is not used by any other files.
>
> [1] https://google.github.io/styleguide/objcguide.html#category-naming
>
> Bug: webrtc:13884
> Change-Id: I2cf2742af198ab4e0bfb15c0476d72971e50ceee
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/262341
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Commit-Queue: Daniel.L (Byoungchan) Lee <daniel.l@hpcnt.com>
> Reviewed-by: Artem Titov <titovartem@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#36880}

Bug: webrtc:13884
Change-Id: I85257088e4a3a62e01ff925ab5e77af83b078ef3
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/262420
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Auto-Submit: Artem Titov <titovartem@webrtc.org>
Owners-Override: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36885}
2022-05-13 14:47:54 +00:00
Byoungchan Lee
181ea6e414 Add a prefix for objc category.
According to the Google Objective-C style [1], category names should
start with an appropriate prefix. WebRTC has some category definitions
for system interfaces, but it doesn't use prefixes.

$ otool -ov WebRTC.framework/WebRTC | grep -E "^[0-9a-z]{16} 0x[0-9a-z]+ __OBJC_._CATEGORY" | grep -v "_RTC"
0000000002160840 0x217c3c0 __OBJC_$_CATEGORY_UIDevice_$_H264Profile
0000000002160850 0x21808b8 __OBJC_$_CATEGORY_AVCaptureSession_$_DevicePosition
0000000002160858 0x2180968 __OBJC_$_CATEGORY_NSString_$_StdString
0000000002160860 0x21809c8 __OBJC_$_CATEGORY_NSString_$_AbslStringView

To avoid conflicts, prefix the names and methods of those categories.
Also remove sdk/objc/Framework/Classes/Common/NSString+StdString.h as
it is not used by any other files.

[1] https://google.github.io/styleguide/objcguide.html#category-naming

Bug: webrtc:13884
Change-Id: I2cf2742af198ab4e0bfb15c0476d72971e50ceee
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/262341
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Daniel.L (Byoungchan) Lee <daniel.l@hpcnt.com>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36880}
2022-05-13 13:20:34 +00:00
Peter Kasting
662d7f11d5 Fixes to support building in -std=c++20 mode.
* Structs with user-declared constructors are no longer considered
  aggregates, so remove the declarations when possible
* Types of both arguments to "==" must match to avoid "ambiguous
  function call" warning
* Various types of math involving enums are deprecated, so replace with
  constexprs where necessary
* ABSL_CONST_INIT must be used on definition as well as declaration
* volatile memory may no longer be read from and written to by the same
  operator, so replace e.g. "n++" with "n = n + 1"
* Replace an outdated check for no_unique_address support with
  __has_cpp_attribute
* std::result_of(f(x)) has been removed, replace with
  std::invoke_result(f, x)

Bug: chromium:1284275
Change-Id: I77b366ab1da7eb2c1e4c825b2714417c31ee5903
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/261221
Auto-Submit: Peter Kasting <pkasting@chromium.org>
Reviewed-by: Tomas Gunnarsson <tommi@google.com>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36786}
2022-05-05 17:15:58 +00:00
Ali Tofigh
3cdd653d66 Minor cleanups in testsupport/file_utils
Bug: webrtc:13579
Change-Id: Ic7915a3520a0f16d0e57cb5e9ffa290524f6bf39
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256810
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Ali Tofigh <alito@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36339}
2022-03-25 14:26:34 +00:00
Ali Tofigh
1d6de1499c Adopt absl::string_view in testsupport/file_utils*
Bug: webrtc:13579
Change-Id: I5b710cfd218c44be01a7a42c2b281739081881e6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/256280
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Ali Tofigh <alito@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36332}
2022-03-25 10:34:54 +00:00
Sergey Silkin
18454b7720 Replace printf with RTC_LOG in YUV readers/writers
Bug: none
Change-Id: I70027a850b750067e0f7622fccfa724406974a1a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/251866
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Reviewed-by: Andrey Logvin <landrey@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36028}
2022-02-18 11:37:41 +00:00
Ali Tofigh
62238097c9 Remove top-level const from parameters in function declarations.
This is a safe cleanup change since top-level const applied to
parameters in function declarations (that are not also
definitions) are ignored by the compiler. Hence, such changes do
not change the type of the declared functions and are simply
no-ops.

Bug: webrtc:13610
Change-Id: Ibafb92c45119a6d8bdb6f9109aa8dad6385163a9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/249086
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Ali Tofigh <alito@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35802}
2022-01-26 11:05:25 +00:00
Mirko Bonadei
d2637a3436 Remove dependency on std::sort implementation detail.
When adding samples to the counter in the test body, most of them get
added at the same time (rtc::TimeMicros()). This means that the
comparator [2] is not able to sort them explicitly (for the comparator
they are equal).

PerfTest.TestGetPerfResultsHistogramsWithStatsCounter was relying on
std::sort implementation being stable, but it is not. If stability is
needed, std::stable_sort should be used so this CL switches
::webrtc::test:GetSortedSamples() to std::stable_sort.

[1] - https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/api/numerics/samples_stats_counter.cc;l=31;drc=9d777620236ec76754cfce19f6e82dd18e52d22c
[2] - https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/test/testsupport/perf_test.cc;l=51-55;drc=a2e3d80cf6f8833ec6f2c5f8e69c2a58a52ddd62

Bug: None
Change-Id: I99a44720ce3ad577f0cdb42aa633bd73d62aeaff
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/242961
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Tomas Gunnarsson <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35600}
2021-12-30 19:43:39 +00:00
Jeremy Leconte
a2e3d80cf6 Revert "Reland "Use gtest_parallel with 1 worker for webrtc_perf_tests.""
This reverts commit c31fc2a941d417286e1a56d6f18d5051c99d06d9.

Reason for revert: Fix is not working properly.

Original change's description:
> Reland "Use gtest_parallel with 1 worker for webrtc_perf_tests."
>
> This is a reland of 258ed1a38ad9d4f0da798c40b6976eff2dce864f
>
> Original change's description:
> > Use gtest_parallel with 1 worker for webrtc_perf_tests.
> >
> > This will enable test results to be uploaded to ResultDB.
> >
> > Bug: b/197492097
> > Change-Id: Iec28520c4cd8f35fcff2cbd105a4b851ef41b9fc
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/239641
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Reviewed-by: Christoffer Jansson <jansson@google.com>
> > Commit-Queue: Jeremy Leconte <jleconte@google.com>
> > Cr-Commit-Position: refs/heads/main@{#35458}
>
> Bug: b/197492097
> No-Presubmit: True
> Change-Id: Iea90f5698c83791d39c0f6da666c1d1eb274edd3
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/239645
> Commit-Queue: Jeremy Leconte <jleconte@google.com>
> Reviewed-by: Andrey Logvin <landrey@webrtc.org>
> Reviewed-by: Christoffer Jansson <jansson@webrtc.org>
> Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
> Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/main@{#35483}

TBR=mbonadei@webrtc.org,gustaf@webrtc.org,jansson@google.com,jansson@webrtc.org,jakobi@webrtc.org,landrey@webrtc.org,jleconte@google.com,jleconte@webrtc.org,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com

Change-Id: Iee9b67db99545a1e6c707bc03faaf55afc90cbbf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: b/197492097
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/240182
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Owners-Override: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35486}
2021-12-07 12:04:08 +00:00
Jeremy Leconte
c31fc2a941 Reland "Use gtest_parallel with 1 worker for webrtc_perf_tests."
This is a reland of 258ed1a38ad9d4f0da798c40b6976eff2dce864f

Original change's description:
> Use gtest_parallel with 1 worker for webrtc_perf_tests.
>
> This will enable test results to be uploaded to ResultDB.
>
> Bug: b/197492097
> Change-Id: Iec28520c4cd8f35fcff2cbd105a4b851ef41b9fc
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/239641
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Christoffer Jansson <jansson@google.com>
> Commit-Queue: Jeremy Leconte <jleconte@google.com>
> Cr-Commit-Position: refs/heads/main@{#35458}

Bug: b/197492097
No-Presubmit: True
Change-Id: Iea90f5698c83791d39c0f6da666c1d1eb274edd3
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/239645
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Andrey Logvin <landrey@webrtc.org>
Reviewed-by: Christoffer Jansson <jansson@webrtc.org>
Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35483}
2021-12-07 10:08:16 +00:00
Artem Titov
d3251968d1 Prepare to rename RTC_NOTREACHED to RTC_DCHECK_NOTREACHED
Add implementation of RTC_DCHECK_NOTREACHED equal to the RTC_NOTREACHED.
The new macros will replace the old one when old one's usage will be
removed. The idea of the renaming to provide a clear signal that this
is debug build only macros and will be stripped in the production build.

Bug: webrtc:9065
Change-Id: I4c35d8b03e74a4b3fd1ae75dba2f9c05643101db
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237802
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35348}
2021-11-15 21:44:59 +00:00
Danil Chapovalov
b6f19d7dfd Reland "Update remaining usage of VideoDecoder::InitDecode to Configure"
This reverts commit d6da4c23ccda5733f4d8bad3268b539d0c9fc3b7.

Reason for revert: downstream project adjusted

Original change's description:
> Revert "Update remaining usage of VideoDecoder::InitDecode to Configure"
>
> This reverts commit ca0a08ab600c8d7d00b94492122946ad837b1ef7.
>
> Reason for revert: Breaks downstream project.
>
> Original change's description:
> > Update remaining usage of VideoDecoder::InitDecode to Configure
> >
> > Bug: webrtc:13045
> > Change-Id: I5253fddfd613cf0228fc3cd861b91e56558dd34a
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228947
> > Reviewed-by: Erik Språng <sprang@webrtc.org>
> > Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#34777}
>
> TBR=danilchap@webrtc.org,sprang@webrtc.org,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com
>
> Change-Id: I1868700a43b5aa4b37e9bcba5af233d24526c974
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:13045
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229024
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#34780}

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

Bug: webrtc:13045
Change-Id: I5a44e7126f9f2e405f3be6b84698de53b23203a2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229183
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34795}
2021-08-18 15:58:40 +00:00
Mirko Bonadei
d6da4c23cc Revert "Update remaining usage of VideoDecoder::InitDecode to Configure"
This reverts commit ca0a08ab600c8d7d00b94492122946ad837b1ef7.

Reason for revert: Breaks downstream project.

Original change's description:
> Update remaining usage of VideoDecoder::InitDecode to Configure
>
> Bug: webrtc:13045
> Change-Id: I5253fddfd613cf0228fc3cd861b91e56558dd34a
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228947
> Reviewed-by: Erik Språng <sprang@webrtc.org>
> Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#34777}

TBR=danilchap@webrtc.org,sprang@webrtc.org,webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com

Change-Id: I1868700a43b5aa4b37e9bcba5af233d24526c974
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:13045
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229024
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34780}
2021-08-17 09:35:28 +00:00
Danil Chapovalov
ca0a08ab60 Update remaining usage of VideoDecoder::InitDecode to Configure
Bug: webrtc:13045
Change-Id: I5253fddfd613cf0228fc3cd861b91e56558dd34a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228947
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34777}
2021-08-17 08:48:30 +00:00
Artem Titov
1ee563d5e0 Use backticks not vertical bars to denote variables in comments for /test
Bug: webrtc:12338
Change-Id: I2a33903a79194bb092a17ea1e1505bf2a3377d8b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227027
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34558}
2021-07-27 12:50:31 +00:00
Mirko Bonadei
190244bb59 Remove all #include <assert.h>/<cassert> and usage in Obj-C code.
This CL completes the removal of assert() and relative headers from
the codebase (excluded
//examples/objc/AppRTCMobile/third_party/SocketRocket which is in a
third_party sub-directory).

Bug: webrtc:6779
Change-Id: I93ed57168d2c0e011626873d66529488c5f484f2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/225546
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34528}
2021-07-22 14:00:26 +00:00
Mirko Bonadei
25ab3228f3 Replace assert() with RTC_DCHECK().
CL partially auto-generated with:

git grep -l "\bassert(" | grep "\.[c|h]" | \
  xargs sed -i 's/\bassert(/RTC_DCHECK(/g'

And with:

git grep -l "RTC_DCHECK(false)" |  \
  xargs sed -i 's/RTC_DCHECK(false)/RTC_NOTREACHED()/g'

With some manual changes to include "rtc_base/checks.h" where
needed.

A follow-up CL will remove assert() from Obj-C code as well
and remove the #include of <assert.h>.

The choice to replace with RTC_DCHECK is because assert()
is because RTC_DCHECK has similar behavior as assert()
based on NDEBUG.

This CL also contains manual changes to switch from
basic RTC_DCHECK to other (preferred) versions like
RTC_DCHECK_GT (and similar).

Bug: webrtc:6779
Change-Id: I00bed8886e03d685a2f42324e34aef2c9b7a63b0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224846
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34442}
2021-07-09 07:49:43 +00:00
Christoffer Jansson
2c4d24308f Add ARM64 for min expected PSNR score for the M1 Mac.
Bug: webrtc:12882
Change-Id: Ieb3f942c9e640bbb329219b41a00a0bf43dd3849
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/224087
Reviewed-by: Andrey Logvin <landrey@google.com>
Reviewed-by: Andrey Logvin <landrey@webrtc.org>
Commit-Queue: Christoffer Jansson <jansson@google.com>
Cr-Commit-Position: refs/heads/master@{#34390}
2021-06-30 07:20:59 +00:00
Artem Titov
eecc4f5e7c Fix: when SamplesStatsCounter is empty it's not propagated to the Histogram perf output
Bug: None
Change-Id: I5664c39ed702b8ca581d28a08900f7a7d435d6ac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/212610
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33512}
2021-03-20 14:05:59 +00:00