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

Unified Diff: services/media/factory_service/media_player_impl.h

Issue 2085593002: Motown: Change player state machine to support preroll (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 4 years, 6 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: services/media/factory_service/media_player_impl.h
diff --git a/services/media/factory_service/media_player_impl.h b/services/media/factory_service/media_player_impl.h
index 1f915e8839a63c50fb912e586c22c7b41db9e6eb..e87d84552f05e9a817b6ee32ff8c01370ac63225 100644
--- a/services/media/factory_service/media_player_impl.h
+++ b/services/media/factory_service/media_player_impl.h
@@ -51,7 +51,8 @@ class MediaPlayerImpl : public MediaFactoryService::Product<MediaPlayer>,
// Internal state.
enum class State {
kWaiting, // Waiting for some work to complete.
- kPaused,
+ kFlushed,
+ kPrimed,
kPlaying,
};
@@ -77,12 +78,6 @@ class MediaPlayerImpl : public MediaFactoryService::Product<MediaPlayer>,
// Takes action based on current state.
void Update();
- // Handles seeking in paused state.
- void WhenPausedAndSeeking();
-
- // Handles seeking in paused state with flushed pipeline.
- void WhenFlushedAndSeeking();
-
// Sets the timeline transform. transform_subject_time_ is used for the
// subject_time, and the effective_reference_time is now plus
// kMinimumLeadTime.
@@ -118,8 +113,7 @@ class MediaPlayerImpl : public MediaFactoryService::Product<MediaPlayer>,
TimelineConsumerPtr timeline_consumer_;
std::vector<std::unique_ptr<Stream>> streams_;
State state_ = State::kWaiting;
- State target_state_ = State::kPaused;
- bool flushed_ = true;
+ State target_state_ = State::kFlushed;
kulakowski 2016/06/20 23:04:09 target_state_ can't take on all the values in Stat
bool end_of_stream_ = false;
int64_t target_position_ = kUnspecifiedTime;
int64_t transform_subject_time_ = kUnspecifiedTime;

Powered by Google App Engine
This is Rietveld 408576698