Bug 1903098 - (fix-cd09858f4a) disable perfetto usage to avoid new third_party library.

This commit is contained in:
Michael Froman 2024-06-21 16:28:24 -05:00
Родитель aef60819a6
Коммит d3d0fa392d
3 изменённых файлов: 66 добавлений и 5 удалений

2
third_party/libwebrtc/BUILD.gn поставляемый
Просмотреть файл

@ -279,6 +279,7 @@ config("rtc_prod_config") {
}
group("tracing") {
if (!build_with_mozilla) {
all_dependent_configs = [ "//third_party/perfetto/gn:public_config" ]
if (rtc_use_perfetto) {
if (build_with_chromium) {
@ -295,6 +296,7 @@ group("tracing") {
[ "//third_party/perfetto/include/perfetto/tracing" ]
}
}
}
if (rtc_use_perfetto) {
rtc_library("webrtc_libperfetto") {

Просмотреть файл

@ -103,9 +103,9 @@ void VCMDecodedFrameCallback::Decoded(VideoFrame& decodedImage,
absl::optional<int32_t> decode_time_ms,
absl::optional<uint8_t> qp) {
RTC_DCHECK(_receiveCallback) << "Callback must not be null at this point";
TRACE_EVENT(
"webrtc", "VCMDecodedFrameCallback::Decoded",
perfetto::TerminatingFlow::ProcessScoped(decodedImage.rtp_timestamp()));
TRACE_EVENT_INSTANT1("webrtc", "VCMDecodedFrameCallback::Decoded",
TRACE_EVENT_SCOPE_GLOBAL, "timestamp",
decodedImage.rtp_timestamp());
// TODO(holmer): We should improve this so that we can handle multiple
// callbacks from one call to Decode().
absl::optional<FrameInfo> frame_info;
@ -293,8 +293,8 @@ int32_t VCMGenericDecoder::Decode(const VCMEncodedFrame& frame, Timestamp now) {
int32_t VCMGenericDecoder::Decode(const EncodedImage& frame,
Timestamp now,
int64_t render_time_ms) {
TRACE_EVENT("webrtc", "VCMGenericDecoder::Decode",
perfetto::Flow::ProcessScoped(frame.RtpTimestamp()));
TRACE_EVENT1("webrtc", "VCMGenericDecoder::Decode", "timestamp",
frame.RtpTimestamp());
FrameInfo frame_info;
frame_info.rtp_timestamp = frame.RtpTimestamp();
frame_info.decode_start = now;

59
third_party/libwebrtc/moz-patch-stack/0119.patch поставляемый Normal file
Просмотреть файл

@ -0,0 +1,59 @@
From: Michael Froman <mfroman@mozilla.com>
Date: Fri, 21 Jun 2024 16:28:00 -0500
Subject: Bug 1903098 - (fix-cd09858f4a) disable perfetto usage to avoid new
third_party library.
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/b050c455caa1d24a0cfa4933ac8cd82c9cd3c347
---
BUILD.gn | 2 ++
modules/video_coding/generic_decoder.cc | 10 +++++-----
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/BUILD.gn b/BUILD.gn
index 306bf453fc..ef99dfb402 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -279,6 +279,7 @@ config("rtc_prod_config") {
}
group("tracing") {
+if (!build_with_mozilla) {
all_dependent_configs = [ "//third_party/perfetto/gn:public_config" ]
if (rtc_use_perfetto) {
if (build_with_chromium) {
@@ -295,6 +296,7 @@ group("tracing") {
[ "//third_party/perfetto/include/perfetto/tracing" ]
}
}
+}
if (rtc_use_perfetto) {
rtc_library("webrtc_libperfetto") {
diff --git a/modules/video_coding/generic_decoder.cc b/modules/video_coding/generic_decoder.cc
index 0bfc628d2c..0a9920a176 100644
--- a/modules/video_coding/generic_decoder.cc
+++ b/modules/video_coding/generic_decoder.cc
@@ -103,9 +103,9 @@ void VCMDecodedFrameCallback::Decoded(VideoFrame& decodedImage,
absl::optional<int32_t> decode_time_ms,
absl::optional<uint8_t> qp) {
RTC_DCHECK(_receiveCallback) << "Callback must not be null at this point";
- TRACE_EVENT(
- "webrtc", "VCMDecodedFrameCallback::Decoded",
- perfetto::TerminatingFlow::ProcessScoped(decodedImage.rtp_timestamp()));
+ TRACE_EVENT_INSTANT1("webrtc", "VCMDecodedFrameCallback::Decoded",
+ TRACE_EVENT_SCOPE_GLOBAL, "timestamp",
+ decodedImage.rtp_timestamp());
// TODO(holmer): We should improve this so that we can handle multiple
// callbacks from one call to Decode().
absl::optional<FrameInfo> frame_info;
@@ -293,8 +293,8 @@ int32_t VCMGenericDecoder::Decode(const VCMEncodedFrame& frame, Timestamp now) {
int32_t VCMGenericDecoder::Decode(const EncodedImage& frame,
Timestamp now,
int64_t render_time_ms) {
- TRACE_EVENT("webrtc", "VCMGenericDecoder::Decode",
- perfetto::Flow::ProcessScoped(frame.RtpTimestamp()));
+ TRACE_EVENT1("webrtc", "VCMGenericDecoder::Decode", "timestamp",
+ frame.RtpTimestamp());
FrameInfo frame_info;
frame_info.rtp_timestamp = frame.RtpTimestamp();
frame_info.decode_start = now;