Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / chromecast / public / media_codec_support_shlib.h
blob168ecd81f6c80a74a6ed8be333f8d00b076e4312
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROMECAST_PUBLIC_MEDIA_CODEC_SUPPORT_SHLIB_H_
6 #define CHROMECAST_PUBLIC_MEDIA_CODEC_SUPPORT_SHLIB_H_
8 #include <string>
10 #include "chromecast_export.h"
12 namespace chromecast {
13 namespace media {
15 // Provides information on which codecs are supported by a platform.
16 // Note: these queries are made only in the renderer process.
17 class CHROMECAST_EXPORT MediaCodecSupportShlib {
18 public:
19 // Possible values for 'is codec supported' query
20 enum CodecSupport {
21 // Codec is definitely supported on this platform.
22 kSupported,
23 // Codec is definitely not supported on this platform.
24 kNotSupported,
25 // No platform-specific constraints on codec's support.
26 // Support is determined by cast_shell default behaviour (which
27 // may include taking current HDMI-out capabilities into account).
28 kDefault
31 // Returns whether or not the given codec (passed in as a string
32 // representation of the codec id conforming to RFC 6381) is supported.
33 static CodecSupport IsSupported(const std::string& codec);
36 } // namespace media
37 } // namespace chromecast
39 #endif // CHROMECAST_PUBLIC_MEDIA_CODEC_SUPPORT_SHLIB_H_