diff options
author | scottfr@chromium.org <scottfr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-09 22:47:24 +0000 |
---|---|---|
committer | scottfr@chromium.org <scottfr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-09 22:47:24 +0000 |
commit | c93eb0a645fa854bd7d4337bc1bc17d2d28c5bc7 (patch) | |
tree | 7da349009a59bb4bc306c30f9a68ccb9d9d328b0 /media/base/media_log.cc | |
parent | 19c28bfec867442cc416fa5a3108418e01c714fb (diff) | |
download | chromium_src-c93eb0a645fa854bd7d4337bc1bc17d2d28c5bc7.zip chromium_src-c93eb0a645fa854bd7d4337bc1bc17d2d28c5bc7.tar.gz chromium_src-c93eb0a645fa854bd7d4337bc1bc17d2d28c5bc7.tar.bz2 |
Log PipelineImpl events to MediaLog.
BUG=
TEST=
Review URL: http://codereview.chromium.org/7584013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96090 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/media_log.cc')
-rw-r--r-- | media/base/media_log.cc | 68 |
1 files changed, 64 insertions, 4 deletions
diff --git a/media/base/media_log.cc b/media/base/media_log.cc index 38be126..15bca41 100644 --- a/media/base/media_log.cc +++ b/media/base/media_log.cc @@ -7,6 +7,7 @@ #include "base/atomic_sequence_num.h" #include "base/logging.h" #include "base/scoped_ptr.h" +#include "base/values.h" namespace media { @@ -16,16 +17,24 @@ static base::AtomicSequenceNumber media_log_count(base::LINKER_INITIALIZED); const char* MediaLog::EventTypeToString(MediaLogEvent::Type type) { switch (type) { - case MediaLogEvent::CREATING: - return "CREATING"; - case MediaLogEvent::DESTROYING: - return "DESTROYING"; + case MediaLogEvent::WEBMEDIAPLAYER_CREATED: + return "WEBMEDIAPLAYER_CREATED"; + case MediaLogEvent::WEBMEDIAPLAYER_DESTROYED: + return "WEBMEDIAPLAYER_DESTROYED"; + case MediaLogEvent::PIPELINE_CREATED: + return "PIPELINE_CREATED"; + case MediaLogEvent::PIPELINE_DESTROYED: + return "PIPELINE_DESTROYED"; case MediaLogEvent::LOAD: return "LOAD"; + case MediaLogEvent::SEEK: + return "SEEK"; case MediaLogEvent::PLAY: return "PLAY"; case MediaLogEvent::PAUSE: return "PAUSE"; + case MediaLogEvent::PIPELINE_STATE_CHANGED: + return "PIPELINE_STATE_CHANGED"; case MediaLogEvent::BUFFERED_EXTENTS_CHANGED: return "BUFFERED_EXTENTS_CHANGED"; } @@ -33,6 +42,43 @@ const char* MediaLog::EventTypeToString(MediaLogEvent::Type type) { return NULL; } +const char* MediaLog::PipelineStateToString(PipelineImpl::State state) { + switch (state) { + case PipelineImpl::kCreated: + return "created"; + case PipelineImpl::kInitDemuxer: + return "initDemuxer"; + case PipelineImpl::kInitAudioDecoder: + return "initAudioDecoder"; + case PipelineImpl::kInitAudioRenderer: + return "initAudioRenderer"; + case PipelineImpl::kInitVideoDecoder: + return "initVideoDecoder"; + case PipelineImpl::kInitVideoRenderer: + return "initVideoRenderer"; + case PipelineImpl::kPausing: + return "pausing"; + case PipelineImpl::kSeeking: + return "seeking"; + case PipelineImpl::kFlushing: + return "flushing"; + case PipelineImpl::kStarting: + return "starting"; + case PipelineImpl::kStarted: + return "started"; + case PipelineImpl::kEnded: + return "ended"; + case PipelineImpl::kStopping: + return "stopping"; + case PipelineImpl::kStopped: + return "stopped"; + case PipelineImpl::kError: + return "error"; + } + NOTREACHED(); + return NULL; +} + MediaLog::MediaLog() { id_ = media_log_count.GetNext(); } @@ -57,6 +103,20 @@ MediaLogEvent* MediaLog::CreateLoadEvent(const std::string& url) { return event.release(); } +MediaLogEvent* MediaLog::CreateSeekEvent(float seconds) { + scoped_ptr<MediaLogEvent> event(CreateEvent(MediaLogEvent::SEEK)); + event->params.SetDouble("seek_target", seconds); + return event.release(); +} + +MediaLogEvent* MediaLog::CreatePipelineStateChangedEvent( + PipelineImpl::State state) { + scoped_ptr<MediaLogEvent> event( + CreateEvent(MediaLogEvent::PIPELINE_STATE_CHANGED)); + event->params.SetString("pipeline_state", PipelineStateToString(state)); + return event.release(); +} + MediaLogEvent* MediaLog::CreateBufferedExtentsChangedEvent( size_t start, size_t current, size_t end) { scoped_ptr<MediaLogEvent> event( |