// Copyright 2015 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. #ifndef CHROMECAST_PUBLIC_MEDIA_CODEC_SUPPORT_SHLIB_H_ #define CHROMECAST_PUBLIC_MEDIA_CODEC_SUPPORT_SHLIB_H_ #include #include "chromecast_export.h" namespace chromecast { namespace media { // Provides information on which codecs are supported by a platform. // Note: these queries are made only in the renderer process. class CHROMECAST_EXPORT MediaCodecSupportShlib { public: // Possible values for 'is codec supported' query enum CodecSupport { // Codec is definitely supported on this platform. kSupported, // Codec is definitely not supported on this platform. kNotSupported, // No platform-specific constraints on codec's support. // Support is determined by cast_shell default behaviour (which // may include taking current HDMI-out capabilities into account). kDefault }; // Returns whether or not the given codec (passed in as a string // representation of the codec id conforming to RFC 6381) is supported. static CodecSupport IsSupported(const std::string& codec); }; } // namespace media } // namespace chromecast #endif // CHROMECAST_PUBLIC_MEDIA_CODEC_SUPPORT_SHLIB_H_