| Index: media/base/media_log.cc
|
| diff --git a/media/base/media_log.cc b/media/base/media_log.cc
|
| index 6bcbcd710bda8cbe9c8a44edd41ee030e116ebdc..ea5ba003e67b5bb038cc76343eddc3bfd5e047f6 100644
|
| --- a/media/base/media_log.cc
|
| +++ b/media/base/media_log.cc
|
| @@ -6,6 +6,7 @@
|
|
|
| #include "base/atomic_sequence_num.h"
|
| #include "base/logging.h"
|
| +#include "base/values.h"
|
|
|
| namespace media {
|
|
|
| @@ -15,16 +16,61 @@ 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";
|
| + }
|
| + NOTREACHED();
|
| + 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;
|
| @@ -42,6 +88,18 @@ void MediaLog::Load(const std::string& url) {
|
| AddEvent(event);
|
| }
|
|
|
| +void MediaLog::Seek(float seconds) {
|
| + MediaLogEvent* event = CreateEvent(MediaLogEvent::SEEK);
|
| + event->params.SetDouble("seek_target", seconds);
|
| + AddEvent(event);
|
| +}
|
| +
|
| +void MediaLog::SetPipelineState(PipelineImpl::State state) {
|
| + MediaLogEvent* event = CreateEvent(MediaLogEvent::PIPELINE_STATE_CHANGED);
|
| + event->params.SetString("pipeline_state", PipelineStateToString(state));
|
| + AddEvent(event);
|
| +}
|
| +
|
| void MediaLog::AddEventOfType(MediaLogEvent::Type type) {
|
| MediaLogEvent* event = CreateEvent(type);
|
| AddEvent(event);
|
|
|