diff options
Diffstat (limited to 'chromium/media/base/android/demuxer_stream_player_params.cc')
-rw-r--r-- | chromium/media/base/android/demuxer_stream_player_params.cc | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/chromium/media/base/android/demuxer_stream_player_params.cc b/chromium/media/base/android/demuxer_stream_player_params.cc index 5c2a11fc284..ae656f8911c 100644 --- a/chromium/media/base/android/demuxer_stream_player_params.cc +++ b/chromium/media/base/android/demuxer_stream_player_params.cc @@ -26,4 +26,84 @@ DemuxerData::DemuxerData() : type(DemuxerStream::UNKNOWN) {} DemuxerData::~DemuxerData() {} +namespace { + +#undef RETURN_STRING +#define RETURN_STRING(x) \ + case x: \ + return #x; + +const char* AsString(AudioCodec codec) { + switch (codec) { + RETURN_STRING(kUnknownAudioCodec); + RETURN_STRING(kCodecAAC); + RETURN_STRING(kCodecMP3); + RETURN_STRING(kCodecPCM); + RETURN_STRING(kCodecVorbis); + RETURN_STRING(kCodecFLAC); + RETURN_STRING(kCodecAMR_NB); + RETURN_STRING(kCodecAMR_WB); + RETURN_STRING(kCodecPCM_MULAW); + RETURN_STRING(kCodecGSM_MS); + RETURN_STRING(kCodecPCM_S16BE); + RETURN_STRING(kCodecPCM_S24BE); + RETURN_STRING(kCodecOpus); + RETURN_STRING(kCodecPCM_ALAW); + RETURN_STRING(kCodecALAC); + } + NOTREACHED(); + return nullptr; // crash early +} + +const char* AsString(VideoCodec codec) { + switch (codec) { + RETURN_STRING(kUnknownVideoCodec); + RETURN_STRING(kCodecH264); + RETURN_STRING(kCodecVC1); + RETURN_STRING(kCodecMPEG2); + RETURN_STRING(kCodecMPEG4); + RETURN_STRING(kCodecTheora); + RETURN_STRING(kCodecVP8); + RETURN_STRING(kCodecVP9); + } + NOTREACHED(); + return nullptr; // crash early +} + +#undef RETURN_STRING + +} // namespace (anonymous) + } // namespace media + +std::ostream& operator<<(std::ostream& os, const media::AccessUnit& au) { + os << "status:" << au.status << (au.is_end_of_stream ? " EOS" : "") + << (au.is_key_frame ? " KEY_FRAME" : "") << " pts:" << au.timestamp + << " size:" << au.data.size(); + return os; +} + +std::ostream& operator<<(std::ostream& os, const media::DemuxerConfigs& conf) { + os << "duration:" << conf.duration; + + if (conf.audio_codec == media::kUnknownAudioCodec && + conf.video_codec == media::kUnknownVideoCodec) { + os << " no audio, no video"; + return os; + } + + if (conf.audio_codec != media::kUnknownAudioCodec) { + os << " audio:" << media::AsString(conf.audio_codec) + << " channels:" << conf.audio_channels + << " rate:" << conf.audio_sampling_rate + << (conf.is_audio_encrypted ? " encrypted" : ""); + } + + if (conf.video_codec != media::kUnknownVideoCodec) { + os << " video:" << media::AsString(conf.video_codec) << " " + << conf.video_size.width() << "x" << conf.video_size.height() + << (conf.is_video_encrypted ? " encrypted" : ""); + } + + return os; +} |