Commit graph

15 commits

Author SHA1 Message Date
Andrey Logvin
1f0f59f02f Add ValueOrDefault to RTCStatsMember
Bug: webrtc:10430
Change-Id: I0d0d7e3664f7b027c7efe3166559f7b35bef0194
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177245
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Andrey Logvin <landrey@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31525}
2020-06-15 16:06:43 +00:00
Mirko Bonadei
6dd488b2e5 RTC_EXPORT RTCStatsMember's specialized members.
Without this, on some build configurations the symbols of the
specialized members don't get exported as explained at:
https://bugs.chromium.org/p/chromium/issues/detail?id=1026078#c10

Bug: chromium:1026078
Change-Id: I0c3058a82d60e6de5e401dbec5bb8501b7bbd8b5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/160046
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29846}
2019-11-20 13:53:37 +00:00
Mirko Bonadei
759f161182 Use explicit template decl/def for RTCNonStandardStatsMember.
This should fix the error raised by lld-link while testing the WebRTC
component build (see [1]).

[1] - https://ci.chromium.org/p/chromium/builders/try/win_chromium_compile_dbg_ng/436729

Bug: webrtc:9419
Change-Id: Ia239f544432c55ae69e2da474b8284143c94a003
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/159697
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29786}
2019-11-13 11:12:40 +00:00
Mirko Bonadei
f47c2ab889 RTC_EXPORT webrtc::RTCNonStandardStatsMember<T>.
Since webrtc::RTCNonStandardStatsMember<T> extends some explicit
template initializations, its symbols need to be exported as well.

Example of an lld-link error:
https://ci.chromium.org/p/chromium/builders/try/win_chromium_compile_dbg_ng/435974

Bug: webrtc:9419
Change-Id: I48bd484b821b17a214e0180e78ba34c38e247947
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/159693
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29780}
2019-11-12 21:19:11 +00:00
Mirko Bonadei
62a19d0798 RTC_EXPORT RTCStatsMember::StaticType and VideoFrame::Builder.
Bug: webrtc:9419
Change-Id: I093a00926af5f5169e14d2680a65c8cbda6cbfba
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/159542
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29760}
2019-11-11 19:40:25 +00:00
Mirko Bonadei
1e6aa1f8bf Remove RTC_EXPORT from RTCStatsMember<T> template declaration.
Starting from [1], explicit template declaration/definition is in use
for this template so there is no need to RTC_EXPORT its declaration.
Doing so leads to this error on clang-cl:

../../third_party/webrtc\api/stats/rtc_stats.h(372,1): error: explicit instantiation declaration should not be 'dllexport' [-Werror,-Wdllexport-explicit-instantiation-decl]
WEBRTC_DECLARE_RTCSTATSMEMBER(bool);
^
../../third_party/webrtc\api/stats/rtc_stats.h(369,3): note: expanded from macro 'WEBRTC_DECLARE_RTCSTATSMEMBER'
  extern template class RTC_EXPORT_TEMPLATE_DECLARE(RTC_EXPORT)  \
  ^
../../third_party/webrtc\api/stats/rtc_stats.h(287,7): note: attribute is here
class RTC_EXPORT RTCStatsMember : public RTCStatsMemberInterface {
      ^
../..\third_party/webrtc/rtc_base/system/rtc_export.h(24,31): note: expanded from macro 'RTC_EXPORT'

Full log: https://ci.chromium.org/p/chromium/builders/try/win_chromium_compile_dbg_ng/430931

[1] - https://webrtc-review.googlesource.com/c/src/+/158795

Bug: webrtc:9419
Change-Id: I9f0893ae26b45049f186e19f862a1d138a320a24
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/158891
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29703}
2019-11-06 10:26:45 +00:00
Mirko Bonadei
054f18513e Use template instantiation declaration/definition for RTCStatsMember<T>.
This CL works around an "Explicit specialization after instantiation
error" when building with clang-cl and is_component_build=true (see
crbug.com/1018579). On top of that it uses "template instantiation
declarations/declarations" in order to avoid to instantiate the
template in clients code.

TBR: hbos@webrtc.org
Bug: webrtc:9419, chromium:1018579
Change-Id: I1b2862de678586afc81e8f7a407947322f8a06c4
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/158795
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Yves Gerey <yvesg@google.com>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29683}
2019-11-04 16:24:37 +00:00
Jonas Olsson
a4d873786f Format almost everything.
This CL was generated by running

git ls-files | grep -P "(\.h|\.cc)$" | grep -v 'sdk/' | grep -v 'rtc_base/ssl_' | \
grep -v 'fake_rtc_certificate_generator.h' | grep -v 'modules/audio_device/win/' | \
grep -v 'system_wrappers/source/clock.cc' | grep -v 'rtc_base/trace_event.h' | \
grep -v 'modules/audio_coding/codecs/ilbc/' | grep -v 'screen_capturer_mac.h' | \
grep -v 'spl_inl_mips.h' | grep -v 'data_size_unittest.cc' | grep -v 'timestamp_unittest.cc' \
| xargs clang-format -i ; git cl format

Most of these changes are clang-format grouping and reordering includes
differently.

Bug: webrtc:9340
Change-Id: Ic83ddbc169bfacd21883e381b5181c3dd4fe8a63
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/144051
Commit-Queue: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28505}
2019-07-08 13:45:15 +00:00
Henrik Boström
646fda0212 Implement RTCMediaSourceStats and friends in standard getStats().
This implements RTCAudioSourceStats and RTCVideoSourceStats, both
inheriting from abstract dictionary RTCMediaSourceStats:
https://w3c.github.io/webrtc-stats/#dom-rtcmediasourcestats

All members are implemented except for the total "frames" counter:
- trackIdentifier
- kind
- width
- height
- framesPerSecond

This means to make googFrameWidthInput, googFrameHeightInput and
googFrameRateInput obsolete.

Implemented using the same code path as the goog stats, there are
some minor bugs that should be fixed in the future, but not this CL:
1. We create media-source objects on a per-track attachment basis.
   If the same track is attached multiple times this results in
   multiple media-source objects, but the spec says it should be on a
   per-source basis.
2. framesPerSecond is only calculated after connecting (when we have a
   sender with SSRC), but if collected on a per-source basis the source
   should be able to tell us the FPS whether or not we are sending it.

Bug: webrtc:10453
Change-Id: I23705a79f15075dca2536275934af1904a7f0d39
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/137804
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28028}
2019-05-22 16:03:41 +00:00
Jakob Ivarsson
aa023e2553 Add test-only group id.
Bug: chromium:943076
Change-Id: Ife855fe59fe5e358bc94e4bb0da704ee2647dbd9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/129900
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Commit-Queue: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27356}
2019-03-29 15:53:16 +00:00
Jakob Ivarsson
2293622f02 Add group_ids to RTCStatsMemberInterface.
Bug: chromium:943076
Change-Id: I1bd40cbbd121dbc3c961650926d9a28fe90f6883
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/128769
Commit-Queue: Jakob Ivarsson‎ <jakobi@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27235}
2019-03-22 11:45:51 +00:00
Jakob Ivarsson
758d946106 Add origin trial ids to non-standard stats members.
Bug: chromium:943076
Change-Id: I2d8211d3acd844cf602ed1c7de08bb7441263950
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/128420
Commit-Queue: Jakob Ivarsson‎ <jakobi@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27186}
2019-03-19 16:53:47 +00:00
Nico Weber
22f9925b3e webrtc: Remove semicolons.
Bug: chromium:926235
Change-Id: I66c10ab3df38adf87152d1f18cc8162afedca7e4
Reviewed-on: https://webrtc-review.googlesource.com/c/123560
Commit-Queue: Tommi <tommi@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26780}
2019-02-20 16:02:59 +00:00
Steve Anton
10542f21c8 (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries
Mechanically generated by running this command:

tools_webrtc/do-renames.sh update all-renames.txt && git cl format

Then manually updating:

tools_webrtc/sanitizers/tsan_suppressions_webrtc.cc

Bug: webrtc:10159
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Change-Id: I54824cd91dada8fc3ee3d098f971bc319d477833
Reviewed-on: https://webrtc-review.googlesource.com/c/115653
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26226}
2019-01-11 17:11:39 +00:00
Steve Anton
1c05765831 (3) Rename files to snake_case: move the files
Mechanically generated with this command:

tools_webrtc/do-rename.sh move all-renames.txt

Bug: webrtc:10159
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Change-Id: I8b05b6eab9b9d18b29c2199bbea239e9add1e690
Reviewed-on: https://webrtc-review.googlesource.com/c/115481
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26225}
2019-01-11 17:05:20 +00:00
Renamed from api/stats/rtcstats.h (Browse further)