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

Unified Diff: media/tools/player_x11/player_x11.cc

Issue 12262058: Revert r180578, r180591, and r180604 from 1410 branch. (Closed) Base URL: svn://svn.chromium.org/chrome/branches/1410/src/
Patch Set: Created 7 years, 10 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
« no previous file with comments | « media/media.gyp ('k') | webkit/media/webmediaplayer_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/tools/player_x11/player_x11.cc
===================================================================
--- media/tools/player_x11/player_x11.cc (revision 182591)
+++ media/tools/player_x11/player_x11.cc (working copy)
@@ -44,6 +44,8 @@
media::AudioManager* g_audio_manager = NULL;
+media::VideoRendererBase* g_video_renderer = NULL;
+
scoped_refptr<media::FileDataSource> CreateFileDataSource(
const std::string& file_path) {
scoped_refptr<media::FileDataSource> file_data_source(
@@ -81,15 +83,18 @@
}
typedef base::Callback<void(media::VideoFrame*)> PaintCB;
-void Paint(MessageLoop* message_loop, const PaintCB& paint_cb,
- const scoped_refptr<media::VideoFrame>& video_frame) {
+void Paint(MessageLoop* message_loop, const PaintCB& paint_cb) {
if (message_loop != MessageLoop::current()) {
message_loop->PostTask(FROM_HERE, base::Bind(
- &Paint, message_loop, paint_cb, video_frame));
+ &Paint, message_loop, paint_cb));
return;
}
- paint_cb.Run(video_frame);
+ scoped_refptr<media::VideoFrame> video_frame;
+ g_video_renderer->GetCurrentFrame(&video_frame);
+ if (video_frame)
+ paint_cb.Run(video_frame);
+ g_video_renderer->PutCurrentFrame(video_frame);
}
static void OnBufferingState(media::Pipeline::BufferingState buffering_state) {}
@@ -111,19 +116,18 @@
message_loop));
// Create our video renderer and save a reference to it for painting.
- scoped_ptr<media::VideoRenderer> video_renderer(new media::VideoRendererBase(
+ g_video_renderer = new media::VideoRendererBase(
message_loop,
media::SetDecryptorReadyCB(),
base::Bind(&Paint, paint_message_loop, paint_cb),
base::Bind(&SetOpaque),
- true));
- collection->SetVideoRenderer(video_renderer.Pass());
+ true);
+ collection->AddVideoRenderer(g_video_renderer);
- scoped_ptr<media::AudioRenderer> audio_renderer(new media::AudioRendererImpl(
+ collection->AddAudioRenderer(new media::AudioRendererImpl(
message_loop,
new media::NullAudioSink(),
media::SetDecryptorReadyCB()));
- collection->SetAudioRenderer(audio_renderer.Pass());
// Create the pipeline and start it.
*pipeline = new media::Pipeline(message_loop, new media::MediaLog());
« no previous file with comments | « media/media.gyp ('k') | webkit/media/webmediaplayer_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698