// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "media/filters/decoder_stream.h" #include "base/bind.h" #include "base/callback_helpers.h" #include "base/location.h" #include "base/logging.h" #include "base/single_thread_task_runner.h" #include "base/trace_event/trace_event.h" #include "media/base/bind_to_current_loop.h" #include "media/base/decoder_buffer.h" #include "media/base/media_log.h" #include "media/base/timestamp_constants.h" #include "media/base/video_decoder.h" #include "media/base/video_frame.h" #include "media/filters/decrypting_demuxer_stream.h" namespace media { // TODO(rileya): Devise a better way of specifying trace/UMA/etc strings for // templated classes such as this. template static const char* GetTraceString(); #define FUNCTION_DVLOG(level) \ DVLOG(level) << __FUNCTION__ << "<" << GetStreamTypeString() << ">" template <> const char* GetTraceString() { return "DecoderStream