185 Commits

Author SHA1 Message Date
Harald Alvestrand
ef5b21e637 Deprecate and remove usage for WARNING log level
Bug: webrtc:13362
Change-Id: Ida112158e4ac5f667e533a0ebfedb400c84df4d9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/239124
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35425}
2021-11-27 22:21:54 +00:00
Artem Titov
646a90784e [DVQA] Remove old constructor from StatsKey
Bug: b/205824594
Change-Id: I081ca48978ce498c56f47022e28fa0a66846765f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238667
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35405}
2021-11-23 12:30:02 +00:00
Artem Titov
8ef7da78b3 [DVQA] Remove sender from DVQA StatsKey
Sender isn't actually require to identify the stream, so specifying it
every time is useless. This CL removes sender from StatsKey object and
introduces StreamsInfo object which contains all required metadata about
streams that are seen by DVQA.

Bug: b/205824594
Change-Id: I5b6be3865a30fd5980ff6e7e50906abe70a632ee
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238562
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35399}
2021-11-22 14:42:13 +00:00
Artem Titov
7ec990de37 Fix flakky test: ensure that DVQA was executed for some time.
It will ensure that clock moved forward, so clock related metrics as
CPU usage will be also calculated correctly. We should dig into it deeper
to fix the root cause later.

Example failure:
https://ci.chromium.org/ui/p/webrtc/builders/try/win_asan/44610/overview

Bug: b/205824594
Change-Id: If1ebcf6a2b88ba0054479be292cca8f50506e741
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238381
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35379}
2021-11-18 15:05:05 +00:00
Artem Titov
9c14573d4e Add method to return frames history from DVQA.
Bug: b/205824594
Change-Id: Ie388aa4b61538cf97e714b1c5d28b01c72739ebd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/238162
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35364}
2021-11-17 11:12:05 +00:00
Niels Möller
13d163654a Delete support for has_internal_source
Bug: webrtc:12875
Change-Id: I9683e71e1fe5b24802033ffcb32a531ca685fc6f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/179220
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35353}
2021-11-16 11:29:40 +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
Harald Alvestrand
97597c0f51 Remove usage of INFO alias for LS_INFO in log messages
Bug: webrtc:13362
Change-Id: Ifda893861a036a85c045cd366f9eab33c62ebde0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/237221
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35310}
2021-11-04 13:46:17 +00:00
Artem Titov
46536e3da4 Fix: DefaultVideoQualityAnalyzerFramesComparator::Stop() may not block
DefaultVideoQualityAnalyzerFramesComparator::Stop() may not block until
all frames comparisons are processed in case when new comparison was
added after worker thread checked for available comparisons and Stop()
was invoked before worker thread checked the state_.

Bug: webrtc:13277, webrtc:13240
Change-Id: Ic16fdc01e43c04529cd83e5d9ef66d7573973cfd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/235205
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35212}
2021-10-14 18:50:09 +00:00
Artem Titov
034abc9581 [DVQA] Enforce state checks before any API calls
Bug: b/199244618
Change-Id: I356cc95688f9a46b943e51585583927b01d8cd0f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231461
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#34948}
2021-09-08 11:42:59 +00:00
Artem Titov
8177f58dde [PCLF] Add support for dumping video with multiple receivers
Bug: b/197896468
Change-Id: I7896246eedb2e9efe847df4dddfc8ef05f7d152b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/230424
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#34866}
2021-08-30 10:09:05 +00:00
Artem Titov
6eb30e40af [DVQA] Tolerate receiving frames which were considerer as dropped before
It can happen that SFU will resend the frame which was before
considered as dropped during stream switching.

Bug: b/197740434
Change-Id: I95a67e6e637f6005a24df15875b50133a6e8eaaf
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/230423
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#34865}
2021-08-30 10:04:36 +00:00
Artem Titov
cdab136fce [DVQA] Remove old dropped_by_encoder and dropped_before_encoder stats fields
Bug: None
Change-Id: I1717eaddb1703890c79b02d109a1e4623bfc5259
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229983
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#34840}
2021-08-24 19:40:26 +00:00
Artem Titov
f1e9061325 [DVQA] Remove old API aliases
Bug: b/196348200
Change-Id: I56a86e9044363be217900746f54798fb05739ed4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229862
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#34837}
2021-08-24 12:28:26 +00:00
Artem Titov
4c4c744818 [DVQA] Move video quality analyzer from webrtc::webrtc_pc_e2e to webrtc
Bug: b/196348200
Change-Id: I581fc25cc29a1384a4f7f298134ee6d0b60e68cd
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229382
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34824}
2021-08-23 13:48:25 +00:00
Artem Titov
34cc986b4e [DVQA] Add detailed printout of when frame was dropped
Bug: b/196229820
Change-Id: I5ed463f1cc9694db7b9a0a0564a5b1784d6ba724
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229381
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34811}
2021-08-19 19:42:31 +00:00
Artem Titov
8d8bc62265 Propogate already collected stats for frames in flight in DVQA to comparisons
Bug: b/196229820
Change-Id: Ic1417bfe8de4fb83ce8527be28f99616148677c6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229186
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34805}
2021-08-19 14:44:11 +00:00
Artem Titov
9d8c3d9010 Use separate queue for alive frames when self view is enabled in DVQA
Bug: b/195652126
Change-Id: Ief1c6ba5216147e0dbfe280e7c001902e1a4d6fc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/229100
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34790}
2021-08-17 19:51:40 +00:00
Artem Titov
82c3a6f3a7 Extract frames comparator out from DVQA
Bug: b/196229820
Change-Id: Iaea04feadf0ed9cd734dd31e7ccca915fb7c585a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228645
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34776}
2021-08-17 08:40:28 +00:00
Danil Chapovalov
d08930d5fb Migrate test VideoDecoders to new VideoDecoder::Configure
Bug: webrtc:13045
Change-Id: I3b66270de59b441bf8b92bc10f67f59f05e9995e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228436
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34742}
2021-08-12 15:41:03 +00:00
Artem Titov
40f7a5bab0 Extract CPU measurer from DVQA
Bug: b/196229820
Change-Id: I1f8f21ea5864f9ba98365e4699572fabd8cb1ece
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228560
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34741}
2021-08-12 15:28:44 +00:00
Artem Titov
8b18304e66 Extract internal DVQA shared objects for future split
Bug: b/196229820
Change-Id: I6bb4be2656d1686a5f30721378605b39d5c391ca
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228522
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34737}
2021-08-12 14:42:43 +00:00
Artem Titov
a17ec76351 Extract various DVQA stats related objects into its own header
Bug: b/196229820
Change-Id: I238e49532a6bfd71eee8b6b60dfbb1645c8234ac
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228438
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34736}
2021-08-12 11:58:57 +00:00
Artem Titov
647d326438 Add tracking of video encoder/decoder used for stream in DVQA
Bug: b/196035476
Change-Id: I882f2236c9522f06ad60332ab2a4bb9226b1bd8e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228423
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/master@{#34732}
2021-08-12 08:49:57 +00:00
Artem Titov
897bf9bff1 Fix frame counters for peers added in the middle of the call
Bug: b/196035476
Change-Id: Ie49ab247a2ff8bda680e4586f7316af8eaa8fe56
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228429
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34724}
2021-08-11 14:13:25 +00:00
Artem Titov
cfea2182f8 Use backticks not vertical bars to denote variables in comments
Bug: webrtc:12338
Change-Id: I89c8b3a328d04203177522cbdfd9e606fd4bce4c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/228246
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34696}
2021-08-10 10:40:03 +00:00
Artem Titov
a1aa9d732c Allow DVQA analyse selft stream for peer
Bug: b/195652126
Change-Id: Ie65e238028b932866a39aeec3797ac576c5f6c1c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227769
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34656}
2021-08-05 21:31:49 +00:00
Artem Titov
ba1beba7cd Fix DVQA to tolerate the case when frame was fully received before beeing encoded
Bug: b/194482121
Change-Id: Ie9268291242168021860e4e84b62634507a8128d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227701
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34652}
2021-08-05 10:48:51 +00:00
Artem Titov
024200483d Make VideoFrameTrackingIdInjector implement EncodedImageDataPropagator
Bug: b/194993473
Change-Id: I722788f64067a5317707f4752e1667b9a9e7cdc7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227223
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34595}
2021-07-29 20:14:22 +00:00
Artem Titov
fbca6b426e Introduce a single interface for data injector and extractor in PCLF
Bug: b/194993473
Change-Id: I59e2ea6aa232cd1399aa76753df1f90094340b8a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227222
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34594}
2021-07-29 17:55:13 +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
Markus Handell
ad5037b4a8 Reland "Refactor the PlatformThread API."
This reverts commit 793bac569fdf1be16cbf24d7871d20d00bbec81b.

Reason for revert: rare compilation error fixed

Original change's description:
> Revert "Refactor the PlatformThread API."
>
> This reverts commit c89fdd716c4c8af608017c76f75bf27e4c3d602e.
>
> Reason for revert: Causes rare compilation error on win-libfuzzer-asan trybot.
> See https://ci.chromium.org/p/chromium/builders/try/win-libfuzzer-asan-rel/713745?
>
> Original change's description:
> > Refactor the PlatformThread API.
> >
> > PlatformThread's API is using old style function pointers, causes
> > casting, is unintuitive and forces artificial call sequences, and
> > is additionally possible to misuse in release mode.
> >
> > Fix this by an API face lift:
> > 1. The class is turned into a handle, which can be empty.
> > 2. The only way of getting a non-empty PlatformThread is by calling
> > SpawnJoinable or SpawnDetached, clearly conveying the semantics to the
> > code reader.
> > 3. Handles can be Finalized, which works differently for joinable and
> > detached threads:
> >   a) Handles for detached threads are simply closed where applicable.
> >   b) Joinable threads are joined before handles are closed.
> > 4. The destructor finalizes handles. No explicit call is needed.
> >
> > Fixed: webrtc:12727
> > Change-Id: Id00a0464edf4fc9e552b6a1fbb5d2e1280e88811
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/215075
> > Commit-Queue: Markus Handell <handellm@webrtc.org>
> > Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> > Reviewed-by: Tommi <tommi@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#33923}
>
> # Not skipping CQ checks because original CL landed > 1 day ago.
>
> TBR=handellm@webrtc.org
>
> Bug: webrtc:12727
> Change-Id: Ic0146be8866f6dd3ad9c364fb8646650b8e07419
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/217583
> Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
> Reviewed-by: Markus Handell <handellm@webrtc.org>
> Commit-Queue: Guido Urdaneta <guidou@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33936}

# Not skipping CQ checks because this is a reland.

Bug: webrtc:12727
Change-Id: Ifd6f44eac72fed84474277a1be03eb84d2f4376e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/217881
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Markus Handell <handellm@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33950}
2021-05-07 14:14:43 +00:00
Guido Urdaneta
793bac569f Revert "Refactor the PlatformThread API."
This reverts commit c89fdd716c4c8af608017c76f75bf27e4c3d602e.

Reason for revert: Causes rare compilation error on win-libfuzzer-asan trybot.
See https://ci.chromium.org/p/chromium/builders/try/win-libfuzzer-asan-rel/713745?

Original change's description:
> Refactor the PlatformThread API.
>
> PlatformThread's API is using old style function pointers, causes
> casting, is unintuitive and forces artificial call sequences, and
> is additionally possible to misuse in release mode.
>
> Fix this by an API face lift:
> 1. The class is turned into a handle, which can be empty.
> 2. The only way of getting a non-empty PlatformThread is by calling
> SpawnJoinable or SpawnDetached, clearly conveying the semantics to the
> code reader.
> 3. Handles can be Finalized, which works differently for joinable and
> detached threads:
>   a) Handles for detached threads are simply closed where applicable.
>   b) Joinable threads are joined before handles are closed.
> 4. The destructor finalizes handles. No explicit call is needed.
>
> Fixed: webrtc:12727
> Change-Id: Id00a0464edf4fc9e552b6a1fbb5d2e1280e88811
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/215075
> Commit-Queue: Markus Handell <handellm@webrtc.org>
> Reviewed-by: Harald Alvestrand <hta@webrtc.org>
> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
> Reviewed-by: Tommi <tommi@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#33923}

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

TBR=handellm@webrtc.org

Bug: webrtc:12727
Change-Id: Ic0146be8866f6dd3ad9c364fb8646650b8e07419
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/217583
Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
Reviewed-by: Markus Handell <handellm@webrtc.org>
Commit-Queue: Guido Urdaneta <guidou@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33936}
2021-05-06 14:22:57 +00:00
Markus Handell
c89fdd716c Refactor the PlatformThread API.
PlatformThread's API is using old style function pointers, causes
casting, is unintuitive and forces artificial call sequences, and
is additionally possible to misuse in release mode.

Fix this by an API face lift:
1. The class is turned into a handle, which can be empty.
2. The only way of getting a non-empty PlatformThread is by calling
SpawnJoinable or SpawnDetached, clearly conveying the semantics to the
code reader.
3. Handles can be Finalized, which works differently for joinable and
detached threads:
  a) Handles for detached threads are simply closed where applicable.
  b) Joinable threads are joined before handles are closed.
4. The destructor finalizes handles. No explicit call is needed.

Fixed: webrtc:12727
Change-Id: Id00a0464edf4fc9e552b6a1fbb5d2e1280e88811
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/215075
Commit-Queue: Markus Handell <handellm@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33923}
2021-05-05 09:59:07 +00:00
Johannes Kron
f7de74c58c Use Timestamp to represent packet receive timestamps
Before this CL, timestamps of received packets were rounded
to the nearest millisecond and stored as int64_t. Due to the
rounding it sometimes happened that timestamps later in the
pipeline that are not rounded seem to occur even before the
video frame was received.

Change-Id: I92d8f3540b23baae2d4a1dc6a7cb3f58bcdaad18
Bug: webrtc:12722
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/216398
Reviewed-by: Chen Xing <chxg@google.com>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Johannes Kron <kron@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33916}
2021-05-04 13:16:54 +00:00
philipel
dab3ce8f29 Reland "Removed VideoDecoderFactory::LegacyCreateVideoDecoder and VideoReceiveStream::Config::stream_id."
This reverts commit 49c293f03d8f593aa3aca282577fcb14daa63207.

Reason for revert: Downstream updated

Original change's description:
> Revert "Removed VideoDecoderFactory::LegacyCreateVideoDecoder and VideoReceiveStream::Config::stream_id."
>
> This reverts commit 4ba1044bae750ab8ee47b359c21f672386b7c3cd.
>
> Reason for revert: Downstream projects require some updates.
>
> Original change's description:
> > Removed VideoDecoderFactory::LegacyCreateVideoDecoder and VideoReceiveStream::Config::stream_id.
> > 
> > Bug: webrtc:9106
> > Change-Id: I7fa84095732c33d136a9354ae4f09266cffcf877
> > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180020
> > Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
> > Commit-Queue: Philip Eliasson <philipel@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#31793}
>
> TBR=henrika@webrtc.org,magjed@webrtc.org,philipel@webrtc.org,mflodman@webrtc.org
>
> Change-Id: I8c980266334cc9871b9076713da3c4df8f73f8ce
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:9106
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180344
> Reviewed-by: Philip Eliasson <philipel@webrtc.org>
> Commit-Queue: Philip Eliasson <philipel@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31794}

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

Bug: webrtc:9106
Change-Id: I52923c0f3952832c50a7d73b466775b8c5d541cb
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/216329
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33884}
2021-04-30 11:40:38 +00:00
Andrey Logvin
e644c09ff3 Update bug in TODO since the original one was separated
Bug: webrtc:11789
Change-Id: I72a04e206dd990d1e90d4b6890e583ff48da1ff9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/216325
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33851}
2021-04-27 15:06:39 +00:00
Mirko Bonadei
c5bac77159 Add rendered_frames metric to DVQA.
Bug: None
Change-Id: I7990667275cc27a2a9e78398788d10c1b93ddf2c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/215927
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33803}
2021-04-21 15:40:45 +00:00
Markus Handell
97c4458c8f PlatformThread: add support for detached threads.
The change introduces support for detachable PlatformThreads, for which
the Stop() call doesn't wait until the thread has finished executing.

The change also introduces rtc::ThreadAttributes that carries priority
and detachability thread attributes. It additionally refactors all
known use to use the new semantics.

Bug: b:181572711, webrtc:12659
Change-Id: Id96e87c2a0dafabc8047767d241fd5da4505d14c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/214704
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33796}
2021-04-21 07:44:31 +00:00
Andrey Logvin
067dce7acc Fix processing of dropped frame for runtime added participant
Bug: webrtc:12247
Change-Id: I0fe5cad8f755bda899e81b31e255f24816bf33bc
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/215061
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33698}
2021-04-12 20:22:36 +00:00
Jeremy Leconte
2e3832e0d0 Add a VideoFrameTrackingIdInjector based on the RTP header extension.
Bug: webrtc:12630
Change-Id: I74601cab31deff2978db0b8bfcbf562c975fa48b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/213352
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33601}
2021-03-31 11:59:06 +00:00
Jeremy Leconte
79020414fd Remove unused webrtc_pc_e2e::IdGenerator.
The generated id was used to distinguish which encoder/decoder is injecting/extracting data.
This feature is currently not used.

Bug: webrtc:12630
Change-Id: Ie11fed7f7a3d1f1bc0eb0ad6e51b48170f512c2b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/213343
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/master@{#33598}
2021-03-31 09:38:01 +00:00
Jeremy Leconte
b258c56267 Send and Receive VideoFrameTrackingid RTP header extension.
Bug: webrtc:12594
Change-Id: I2372a361e55d0fdadf9847081644b6a3359a2928
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/212283
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Christoffer Rodbro <crodbro@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/master@{#33570}
2021-03-25 21:57:29 +00:00
Andrey Logvin
175b723ce9 Add clarification comment about removing FrameInFlight objects in case of to adding a peer in runtime
RuntimeParticipantsAdding covers the described behaviour: "EXPECT_EQ(frames_in_flight_sizes.back().value, 0)"

Bug: webrtc:12247
Change-Id: I296c607d3b7fb9f337b887347e60ccfc0e042143
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203524
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33563}
2021-03-25 14:01:12 +00:00
Artem Titov
484acf2723 Add ability to configure sampling rate for input/output video dumps in PC level framework
Bug: b/179986638
Change-Id: I9ab960840e4b8f912abe4fb79cfd9278f4d4562a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208760
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33350}
2021-02-26 11:24:52 +00:00
Artem Titov
42dd9bc077 Add documentation about DefaultVideoQualityAnalyzer
Bug: None
Change-Id: I614e75f3e43ecd7b69206ef861569872c93c57d7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/208402
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33308}
2021-02-22 10:12:12 +00:00
Andrey Logvin
ee8c275fd9 Make DVQA CPU usage tests more stable
Bug: None
Change-Id: Id6febf0bb0dfceb09bdc9beea0887a62d091d15d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/204484
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33106}
2021-01-29 16:30:29 +00:00
Artem Titov
08f46909a8 Protect DefaultVideoQualityAnalyzer::peers_ with lock
Protect DefaultVideoQualityAnalyzer::peers_ with lock, because it's now
accessed from multiple threads.

Bug: webrtc:12247
Change-Id: I41932afe678979f6da9e8d0d5fe2e1ffef0fb513
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203880
Reviewed-by: Andrey Logvin <landrey@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33073}
2021-01-26 10:35:47 +00:00
Artem Titov
c57089a97a Add new peer to injector when adding it to analyzer. Removed unused injector
Bug: webrtc:12247
Change-Id: I735f2b69a8239633bfddca48efd45fe4886c1598
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/203820
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Andrey Logvin <landrey@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33072}
2021-01-26 10:08:16 +00:00
Erik Språng
c12f625938 Adds VideoDecoder::GetDecoderInfo()
This adds a new way to poll decoder metadata.
A default implementation still delegates to the old methods.
Root call site is updates to not use the olds methods.

Follow-ups will dismantle usage of the olds methods in wrappers.

Bug: webrtc:12271
Change-Id: Id0fa6863c96ff9e3b849da452d6540e7c5da4512
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/196520
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32976}
2021-01-14 13:33:22 +00:00