Index: media/filters/clockless_video_frame_scheduler.cc |
diff --git a/media/filters/clockless_video_frame_scheduler.cc b/media/filters/clockless_video_frame_scheduler.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..b37d430776378739733d8e44308ac006bfc768e4 |
--- /dev/null |
+++ b/media/filters/clockless_video_frame_scheduler.cc |
@@ -0,0 +1,34 @@ |
+// Copyright 2014 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "media/filters/clockless_video_frame_scheduler.h" |
+ |
+#include "base/bind.h" |
+#include "base/location.h" |
+#include "base/message_loop/message_loop_proxy.h" |
+#include "media/base/video_frame.h" |
+ |
+namespace media { |
+ |
+ClocklessVideoFrameScheduler::ClocklessVideoFrameScheduler( |
+ const DisplayCB& display_cb) |
+ : display_cb_(display_cb) { |
+} |
+ |
+ClocklessVideoFrameScheduler::~ClocklessVideoFrameScheduler() { |
+} |
+ |
+void ClocklessVideoFrameScheduler::ScheduleVideoFrame( |
+ const scoped_refptr<VideoFrame>& frame, |
+ base::TimeTicks /* wall_ticks */, |
+ const DoneCB& done_cb) { |
+ display_cb_.Run(frame); |
+ base::MessageLoopProxy::current()->PostTask( |
+ FROM_HERE, base::Bind(done_cb, frame, DISPLAYED)); |
+} |
+ |
+void ClocklessVideoFrameScheduler::Reset() { |
+} |
+ |
+} // namespace media |