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

Side by Side Diff: webkit/glue/webmediaplayer_impl.cc

Issue 7484054: Migrate Pipeline & PipelineImpl to PipelineStatusCB. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "webkit/glue/webmediaplayer_impl.h" 5 #include "webkit/glue/webmediaplayer_impl.h"
6 6
7 #include <limits> 7 #include <limits>
8 #include <string> 8 #include <string>
9 9
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after
353 // Also we want to be notified of |main_loop_| destruction. 353 // Also we want to be notified of |main_loop_| destruction.
354 main_loop_->AddDestructionObserver(this); 354 main_loop_->AddDestructionObserver(this);
355 355
356 // Creates the proxy. 356 // Creates the proxy.
357 proxy_ = new Proxy(main_loop_, this); 357 proxy_ = new Proxy(main_loop_, this);
358 web_video_renderer->SetWebMediaPlayerImplProxy(proxy_); 358 web_video_renderer->SetWebMediaPlayerImplProxy(proxy_);
359 proxy_->SetVideoRenderer(web_video_renderer); 359 proxy_->SetVideoRenderer(web_video_renderer);
360 360
361 // Set our pipeline callbacks. 361 // Set our pipeline callbacks.
362 pipeline_->Init( 362 pipeline_->Init(
363 NewCallback(proxy_.get(), 363 base::Bind(&WebMediaPlayerImpl::Proxy::PipelineEndedCallback,
364 &WebMediaPlayerImpl::Proxy::PipelineEndedCallback), 364 proxy_.get()),
365 NewCallback(proxy_.get(), 365 base::Bind(&WebMediaPlayerImpl::Proxy::PipelineErrorCallback,
366 &WebMediaPlayerImpl::Proxy::PipelineErrorCallback), 366 proxy_.get()),
367 NewCallback(proxy_.get(), 367 base::Bind(&WebMediaPlayerImpl::Proxy::NetworkEventCallback,
368 &WebMediaPlayerImpl::Proxy::NetworkEventCallback)); 368 proxy_.get()));
369 369
370 // A simple data source that keeps all data in memory. 370 // A simple data source that keeps all data in memory.
371 scoped_ptr<media::DataSourceFactory> simple_data_source_factory( 371 scoped_ptr<media::DataSourceFactory> simple_data_source_factory(
372 SimpleDataSource::CreateFactory(MessageLoop::current(), frame, 372 SimpleDataSource::CreateFactory(MessageLoop::current(), frame,
373 proxy_->GetBuildObserver())); 373 proxy_->GetBuildObserver()));
374 374
375 // A sophisticated data source that does memory caching. 375 // A sophisticated data source that does memory caching.
376 scoped_ptr<media::DataSourceFactory> buffered_data_source_factory( 376 scoped_ptr<media::DataSourceFactory> buffered_data_source_factory(
377 BufferedDataSource::CreateFactory(MessageLoop::current(), frame, 377 BufferedDataSource::CreateFactory(MessageLoop::current(), frame,
378 proxy_->GetBuildObserver())); 378 proxy_->GetBuildObserver()));
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
449 setVolume(GetClient()->volume()); 449 setVolume(GetClient()->volume());
450 // Get the preload value. 450 // Get the preload value.
451 setPreload(GetClient()->preload()); 451 setPreload(GetClient()->preload());
452 452
453 // Initialize the pipeline. 453 // Initialize the pipeline.
454 SetNetworkState(WebKit::WebMediaPlayer::Loading); 454 SetNetworkState(WebKit::WebMediaPlayer::Loading);
455 SetReadyState(WebKit::WebMediaPlayer::HaveNothing); 455 SetReadyState(WebKit::WebMediaPlayer::HaveNothing);
456 pipeline_->Start( 456 pipeline_->Start(
457 filter_collection_.release(), 457 filter_collection_.release(),
458 url.spec(), 458 url.spec(),
459 NewCallback(proxy_.get(), 459 base::Bind(&WebMediaPlayerImpl::Proxy::PipelineInitializationCallback,
460 &WebMediaPlayerImpl::Proxy::PipelineInitializationCallback)); 460 proxy_.get()));
461 } 461 }
462 462
463 void WebMediaPlayerImpl::cancelLoad() { 463 void WebMediaPlayerImpl::cancelLoad() {
464 DCHECK(MessageLoop::current() == main_loop_); 464 DCHECK(MessageLoop::current() == main_loop_);
465 } 465 }
466 466
467 void WebMediaPlayerImpl::play() { 467 void WebMediaPlayerImpl::play() {
468 DCHECK(MessageLoop::current() == main_loop_); 468 DCHECK(MessageLoop::current() == main_loop_);
469 469
470 paused_ = false; 470 paused_ = false;
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
511 paused_time_ = seek_time; 511 paused_time_ = seek_time;
512 } 512 }
513 513
514 seeking_ = true; 514 seeking_ = true;
515 515
516 proxy_->DemuxerFlush(); 516 proxy_->DemuxerFlush();
517 517
518 // Kick off the asynchronous seek! 518 // Kick off the asynchronous seek!
519 pipeline_->Seek( 519 pipeline_->Seek(
520 seek_time, 520 seek_time,
521 NewCallback(proxy_.get(), 521 base::Bind(&WebMediaPlayerImpl::Proxy::PipelineSeekCallback,
522 &WebMediaPlayerImpl::Proxy::PipelineSeekCallback)); 522 proxy_.get()));
523 } 523 }
524 524
525 void WebMediaPlayerImpl::setEndTime(float seconds) { 525 void WebMediaPlayerImpl::setEndTime(float seconds) {
526 DCHECK(MessageLoop::current() == main_loop_); 526 DCHECK(MessageLoop::current() == main_loop_);
527 527
528 // TODO(hclam): add method call when it has been implemented. 528 // TODO(hclam): add method call when it has been implemented.
529 return; 529 return;
530 } 530 }
531 531
532 void WebMediaPlayerImpl::setRate(float rate) { 532 void WebMediaPlayerImpl::setRate(float rate) {
(...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after
1027 } 1027 }
1028 } 1028 }
1029 1029
1030 WebKit::WebMediaPlayerClient* WebMediaPlayerImpl::GetClient() { 1030 WebKit::WebMediaPlayerClient* WebMediaPlayerImpl::GetClient() {
1031 DCHECK(MessageLoop::current() == main_loop_); 1031 DCHECK(MessageLoop::current() == main_loop_);
1032 DCHECK(client_); 1032 DCHECK(client_);
1033 return client_; 1033 return client_;
1034 } 1034 }
1035 1035
1036 } // namespace webkit_glue 1036 } // namespace webkit_glue
OLDNEW
« media/base/pipeline_impl_unittest.cc ('K') | « media/base/pipeline_status.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698