#include "third_party/blink/renderer/platform/peerconnection/webrtc_decoding_info_handler.h"
#include <utility>
#include <vector>
#include "base/containers/contains.h"
#include "base/logging.h"
#include "third_party/blink/public/platform/platform.h"
#include "third_party/blink/renderer/platform/peerconnection/audio_codec_factory.h"
#include "third_party/blink/renderer/platform/peerconnection/video_codec_factory.h"
#include "third_party/blink/renderer/platform/wtf/text/string_hash.h"
#include "third_party/webrtc/api/audio_codecs/audio_decoder_factory.h"
#include "third_party/webrtc/api/audio_codecs/audio_format.h"
#include "third_party/webrtc/api/scoped_refptr.h"
#include "third_party/webrtc/api/video_codecs/sdp_video_format.h"
#include "third_party/webrtc/api/video_codecs/video_decoder_factory.h"
#include "ui/gfx/color_space.h"
namespace blink {
WebrtcDecodingInfoHandler* WebrtcDecodingInfoHandler::Instance() { … }
WebrtcDecodingInfoHandler::WebrtcDecodingInfoHandler()
: … { … }
WebrtcDecodingInfoHandler::WebrtcDecodingInfoHandler(
std::unique_ptr<webrtc::VideoDecoderFactory> video_decoder_factory,
rtc::scoped_refptr<webrtc::AudioDecoderFactory> audio_decoder_factory)
: … { … }
WebrtcDecodingInfoHandler::~WebrtcDecodingInfoHandler() = default;
void WebrtcDecodingInfoHandler::DecodingInfo(
const std::optional<webrtc::SdpAudioFormat> sdp_audio_format,
const std::optional<webrtc::SdpVideoFormat> sdp_video_format,
const bool video_spatial_scalability,
OnMediaCapabilitiesDecodingInfoCallback callback) const { … }
}