Chromium Code Reviews| Index: components/cdm/renderer/external_clear_key_key_system_properties.h |
| diff --git a/components/cdm/renderer/external_clear_key_key_system_properties.h b/components/cdm/renderer/external_clear_key_key_system_properties.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..da46c6af273a8f3929c13d1604ba6dd7d4df96c8 |
| --- /dev/null |
| +++ b/components/cdm/renderer/external_clear_key_key_system_properties.h |
| @@ -0,0 +1,48 @@ |
| +// Copyright 2016 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 COMPONENTS_CDM_RENDERER_EXTERNAL_CLEAR_KEY_KEY_SYSTEM_PROPERTIES_H_ |
| +#define COMPONENTS_CDM_RENDERER_EXTERNAL_CLEAR_KEY_KEY_SYSTEM_PROPERTIES_H_ |
| + |
| +#include <string> |
| + |
| +#include "build/build_config.h" |
| +#include "media/base/key_system_properties.h" |
| + |
| +namespace cdm { |
| + |
| +#if defined(ENABLE_PEPPER_CDMS) |
| +static const char kExternalClearKeyPepperType[]; |
| +#endif |
| + |
| +// KeySystemProperties implementation for external Clear Key key systems. |
| +class ExternalClearKeyProperties : public media::KeySystemProperties { |
| + public: |
| + explicit ExternalClearKeyProperties(const std::string& key_system_name); |
| + ~ExternalClearKeyProperties() override; |
| + |
| + std::string GetKeySystemName() const override; |
| + bool IsSupportedInitDataType( |
| + media::EmeInitDataType init_data_type) const override; |
| + media::SupportedCodecs GetSupportedCodecs() const override; |
| + media::EmeConfigRule GetRobustnessConfigRule( |
| + media::EmeMediaType media_type, |
| + const std::string& requested_robustness) const override; |
| + media::EmeSessionTypeSupport GetPersistentLicenseSessionSupport() |
| + const override; |
| + media::EmeSessionTypeSupport GetPersistentReleaseMessageSessionSupport() |
| + const override; |
| + media::EmeFeatureSupport GetPersistentStateSupport() const override; |
| + media::EmeFeatureSupport GetDistinctiveIdentifierSupport() const override; |
| +#if defined(ENABLE_PEPPER_CDMS) |
| + std::string GetPepperType() const override; |
|
jrummell
2016/08/24 20:36:52
media::KeySystemProperties always specifies GetPep
xhwang
2016/08/24 23:31:03
There's a default implementation for this where it
|
| +#endif |
| + |
| + private: |
| + const std::string key_system_name_; |
| +}; |
| + |
| +} // namespace cdm |
| + |
| +#endif // COMPONENTS_CDM_RENDERER_EXTERNAL_CLEAR_KEY_KEY_SYSTEM_PROPERTIES_H_ |