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

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: Fix CR nits Created 9 years, 4 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
« no previous file with comments | « webkit/glue/media/web_data_source_factory.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 346 matching lines...) Expand 10 before | Expand all | Expand 10 after
357 // Also we want to be notified of |main_loop_| destruction. 357 // Also we want to be notified of |main_loop_| destruction.
358 main_loop_->AddDestructionObserver(this); 358 main_loop_->AddDestructionObserver(this);
359 359
360 // Creates the proxy. 360 // Creates the proxy.
361 proxy_ = new Proxy(main_loop_, this); 361 proxy_ = new Proxy(main_loop_, this);
362 web_video_renderer->SetWebMediaPlayerImplProxy(proxy_); 362 web_video_renderer->SetWebMediaPlayerImplProxy(proxy_);
363 proxy_->SetVideoRenderer(web_video_renderer); 363 proxy_->SetVideoRenderer(web_video_renderer);
364 364
365 // Set our pipeline callbacks. 365 // Set our pipeline callbacks.
366 pipeline_->Init( 366 pipeline_->Init(
367 NewCallback(proxy_.get(), 367 base::Bind(&WebMediaPlayerImpl::Proxy::PipelineEndedCallback,
368 &WebMediaPlayerImpl::Proxy::PipelineEndedCallback), 368 proxy_.get()),
369 NewCallback(proxy_.get(), 369 base::Bind(&WebMediaPlayerImpl::Proxy::PipelineErrorCallback,
370 &WebMediaPlayerImpl::Proxy::PipelineErrorCallback), 370 proxy_.get()),
371 NewCallback(proxy_.get(), 371 base::Bind(&WebMediaPlayerImpl::Proxy::NetworkEventCallback,
372 &WebMediaPlayerImpl::Proxy::NetworkEventCallback)); 372 proxy_.get()));
373 373
374 // A simple data source that keeps all data in memory. 374 // A simple data source that keeps all data in memory.
375 scoped_ptr<media::DataSourceFactory> simple_data_source_factory( 375 scoped_ptr<media::DataSourceFactory> simple_data_source_factory(
376 SimpleDataSource::CreateFactory(MessageLoop::current(), frame, 376 SimpleDataSource::CreateFactory(MessageLoop::current(), frame,
377 proxy_->GetBuildObserver())); 377 proxy_->GetBuildObserver()));
378 378
379 // A sophisticated data source that does memory caching. 379 // A sophisticated data source that does memory caching.
380 scoped_ptr<media::DataSourceFactory> buffered_data_source_factory( 380 scoped_ptr<media::DataSourceFactory> buffered_data_source_factory(
381 BufferedDataSource::CreateFactory(MessageLoop::current(), frame, 381 BufferedDataSource::CreateFactory(MessageLoop::current(), frame,
382 proxy_->GetBuildObserver())); 382 proxy_->GetBuildObserver()));
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
454 setVolume(GetClient()->volume()); 454 setVolume(GetClient()->volume());
455 // Get the preload value. 455 // Get the preload value.
456 setPreload(GetClient()->preload()); 456 setPreload(GetClient()->preload());
457 457
458 // Initialize the pipeline. 458 // Initialize the pipeline.
459 SetNetworkState(WebKit::WebMediaPlayer::Loading); 459 SetNetworkState(WebKit::WebMediaPlayer::Loading);
460 SetReadyState(WebKit::WebMediaPlayer::HaveNothing); 460 SetReadyState(WebKit::WebMediaPlayer::HaveNothing);
461 pipeline_->Start( 461 pipeline_->Start(
462 filter_collection_.release(), 462 filter_collection_.release(),
463 url.spec(), 463 url.spec(),
464 NewCallback(proxy_.get(), 464 base::Bind(&WebMediaPlayerImpl::Proxy::PipelineInitializationCallback,
465 &WebMediaPlayerImpl::Proxy::PipelineInitializationCallback)); 465 proxy_.get()));
466 466
467 media_log_->Load(url.spec()); 467 media_log_->Load(url.spec());
468 } 468 }
469 469
470 void WebMediaPlayerImpl::cancelLoad() { 470 void WebMediaPlayerImpl::cancelLoad() {
471 DCHECK(MessageLoop::current() == main_loop_); 471 DCHECK(MessageLoop::current() == main_loop_);
472 } 472 }
473 473
474 void WebMediaPlayerImpl::play() { 474 void WebMediaPlayerImpl::play() {
475 DCHECK(MessageLoop::current() == main_loop_); 475 DCHECK(MessageLoop::current() == main_loop_);
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
522 paused_time_ = seek_time; 522 paused_time_ = seek_time;
523 } 523 }
524 524
525 seeking_ = true; 525 seeking_ = true;
526 526
527 proxy_->DemuxerFlush(); 527 proxy_->DemuxerFlush();
528 528
529 // Kick off the asynchronous seek! 529 // Kick off the asynchronous seek!
530 pipeline_->Seek( 530 pipeline_->Seek(
531 seek_time, 531 seek_time,
532 NewCallback(proxy_.get(), 532 base::Bind(&WebMediaPlayerImpl::Proxy::PipelineSeekCallback,
533 &WebMediaPlayerImpl::Proxy::PipelineSeekCallback)); 533 proxy_.get()));
534 } 534 }
535 535
536 void WebMediaPlayerImpl::setEndTime(float seconds) { 536 void WebMediaPlayerImpl::setEndTime(float seconds) {
537 DCHECK(MessageLoop::current() == main_loop_); 537 DCHECK(MessageLoop::current() == main_loop_);
538 538
539 // TODO(hclam): add method call when it has been implemented. 539 // TODO(hclam): add method call when it has been implemented.
540 return; 540 return;
541 } 541 }
542 542
543 void WebMediaPlayerImpl::setRate(float rate) { 543 void WebMediaPlayerImpl::setRate(float rate) {
(...skipping 499 matching lines...) Expand 10 before | Expand all | Expand 10 after
1043 } 1043 }
1044 } 1044 }
1045 1045
1046 WebKit::WebMediaPlayerClient* WebMediaPlayerImpl::GetClient() { 1046 WebKit::WebMediaPlayerClient* WebMediaPlayerImpl::GetClient() {
1047 DCHECK(MessageLoop::current() == main_loop_); 1047 DCHECK(MessageLoop::current() == main_loop_);
1048 DCHECK(client_); 1048 DCHECK(client_);
1049 return client_; 1049 return client_;
1050 } 1050 }
1051 1051
1052 } // namespace webkit_glue 1052 } // namespace webkit_glue
OLDNEW
« no previous file with comments | « webkit/glue/media/web_data_source_factory.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698