blob: 168ecd81f6c80a74a6ed8be333f8d00b076e4312 [file] [log] [blame]
// 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 <string>
#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_