| Index: media/base/android/media_codec_player.h
|
| diff --git a/media/base/android/media_codec_player.h b/media/base/android/media_codec_player.h
|
| index b76d543620ba09f0295d6228b2b85d3bdd4ca913..7f98320c03b6adde2b399e48e7ab474ad12e8824 100644
|
| --- a/media/base/android/media_codec_player.h
|
| +++ b/media/base/android/media_codec_player.h
|
| @@ -155,6 +155,8 @@ class MEDIA_EXPORT MediaCodecPlayer : public MediaPlayerAndroid,
|
| typedef base::Callback<void(const base::TimeDelta& current_timestamp)>
|
| SeekDoneCallback;
|
|
|
| + typedef base::Callback<void(int)> ErrorCallback;
|
| +
|
| // Constructs a player with the given ID and demuxer. |manager| must outlive
|
| // the lifetime of this object.
|
| MediaCodecPlayer(int player_id,
|
| @@ -205,6 +207,12 @@ class MEDIA_EXPORT MediaCodecPlayer : public MediaPlayerAndroid,
|
| STATE_ERROR,
|
| };
|
|
|
| + enum StartStatus {
|
| + START_OK = 0,
|
| + START_BROWSER_SEEK_REQUIRED,
|
| + START_FAILED,
|
| + };
|
| +
|
| // Cached values for the manager.
|
| struct MediaMetadata {
|
| base::TimeDelta duration;
|
| @@ -244,8 +252,6 @@ class MEDIA_EXPORT MediaCodecPlayer : public MediaPlayerAndroid,
|
|
|
| // Operations called from the state machine.
|
| void SetState(PlayerState new_state);
|
| - void SetPendingSurface(gfx::ScopedJavaSurface surface);
|
| - bool HasPendingSurface() const;
|
| void SetPendingStart(bool need_to_start);
|
| bool HasPendingStart() const;
|
| void SetPendingSeek(base::TimeDelta timestamp);
|
| @@ -254,7 +260,8 @@ class MEDIA_EXPORT MediaCodecPlayer : public MediaPlayerAndroid,
|
| bool HasAudio() const;
|
| void SetDemuxerConfigs(const DemuxerConfigs& configs);
|
| void StartPrefetchDecoders();
|
| - void StartPlaybackDecoders();
|
| + void StartPlaybackOrBrowserSeek();
|
| + StartStatus StartPlaybackDecoders();
|
| void StopDecoders();
|
| void RequestToStopDecoders();
|
| void RequestDemuxerSeek(base::TimeDelta seek_time,
|
| @@ -287,6 +294,7 @@ class MEDIA_EXPORT MediaCodecPlayer : public MediaPlayerAndroid,
|
| TimeUpdateCallback time_update_cb_;
|
| base::Closure completion_cb_;
|
| SeekDoneCallback seek_done_cb_;
|
| + ErrorCallback error_cb_;
|
|
|
| // A callback that updates metadata cache and calls the manager.
|
| MetadataChangedCallback metadata_changed_cb_;
|
| @@ -298,7 +306,7 @@ class MEDIA_EXPORT MediaCodecPlayer : public MediaPlayerAndroid,
|
|
|
| // Error callback is posted by decoders or by this class itself if we cannot
|
| // configure or start decoder.
|
| - base::Closure error_cb_;
|
| + base::Closure internal_error_cb_;
|
|
|
| // Total duration reported by demuxer.
|
| base::TimeDelta duration_;
|
|
|