Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1038)

Unified Diff: media/blink/video_frame_compositor.cc

Issue 2159323002: Add tracing AutoOpenCloseEvent. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/blink/video_frame_compositor.cc
diff --git a/media/blink/video_frame_compositor.cc b/media/blink/video_frame_compositor.cc
index 3cf2a1cb22d85b54c9f9e6859097e5ac3693c4c7..f664a4be503ec1792fd3ad3e7dd64ef3313353c5 100644
--- a/media/blink/video_frame_compositor.cc
+++ b/media/blink/video_frame_compositor.cc
@@ -8,7 +8,14 @@
#include "base/message_loop/message_loop.h"
#include "base/time/default_tick_clock.h"
#include "base/trace_event/trace_event.h"
+#include "base/trace_event/trace_event_impl.h"
+#include "base/trace_event/trace_log.h"
#include "media/base/video_frame.h"
+#include "base/trace_event/vfc_persistent_async_event.h"
+
+
+#include <sstream>
+#include <string>
namespace media {
@@ -37,6 +44,12 @@ VideoFrameCompositor::VideoFrameCompositor(
last_interval_(base::TimeDelta::FromSecondsD(1.0 / 60)),
callback_(nullptr) {
background_rendering_timer_.SetTaskRunner(compositor_task_runner_);
+ const void* this_address = static_cast<const void*>(this);
+ std::stringstream s;
benjhayden 2016/08/10 18:30:00 Chrome has a handy StringPrintf library, but Persi
+ s << this_address;
+ video_id_ = s.str();
+ persistent_async_ = new base::trace_event::VFCPersistentAsyncEvent();
+ base::trace_event::TraceLog::GetInstance()->AddEnabledStateObserver(persistent_async_);
}
VideoFrameCompositor::~VideoFrameCompositor() {
@@ -105,7 +118,7 @@ bool VideoFrameCompositor::HasCurrentFrame() {
}
void VideoFrameCompositor::Start(RenderCallback* callback) {
- TRACE_EVENT0("media", "VideoFrameCompositor::Start");
+ persistent_async_->Start(video_id_);
// Called from the media thread, so acquire the callback under lock before
// returning in case a Stop() call comes in before the PostTask is processed.
@@ -118,7 +131,7 @@ void VideoFrameCompositor::Start(RenderCallback* callback) {
}
void VideoFrameCompositor::Stop() {
- TRACE_EVENT0("media", "VideoFrameCompositor::Stop");
+ persistent_async_->Stop(video_id_);
// Called from the media thread, so release the callback under lock before
// returning to avoid a pending UpdateCurrentFrame() call occurring before

Powered by Google App Engine
This is Rietveld 408576698