OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "components/cdm/renderer/external_clear_key_key_system_properties.h" | 5 #include "components/cdm/renderer/external_clear_key_key_system_properties.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "media/base/eme_constants.h" | 8 #include "media/base/eme_constants.h" |
| 9 #include "media/media_features.h" |
9 #include "ppapi/features/features.h" | 10 #include "ppapi/features/features.h" |
10 | 11 |
11 namespace cdm { | 12 namespace cdm { |
12 | 13 |
13 #if BUILDFLAG(ENABLE_PEPPER_CDMS) | 14 #if BUILDFLAG(ENABLE_PEPPER_CDMS) |
14 const char kExternalClearKeyPepperType[] = "application/x-ppapi-clearkey-cdm"; | 15 const char kExternalClearKeyPepperType[] = "application/x-ppapi-clearkey-cdm"; |
15 #endif | 16 #endif |
16 | 17 |
17 ExternalClearKeyProperties::ExternalClearKeyProperties( | 18 ExternalClearKeyProperties::ExternalClearKeyProperties( |
18 const std::string& key_system_name) | 19 const std::string& key_system_name) |
19 : key_system_name_(key_system_name) {} | 20 : key_system_name_(key_system_name) {} |
20 | 21 |
21 ExternalClearKeyProperties::~ExternalClearKeyProperties() {} | 22 ExternalClearKeyProperties::~ExternalClearKeyProperties() {} |
22 | 23 |
23 std::string ExternalClearKeyProperties::GetKeySystemName() const { | 24 std::string ExternalClearKeyProperties::GetKeySystemName() const { |
24 return key_system_name_; | 25 return key_system_name_; |
25 } | 26 } |
26 | 27 |
27 bool ExternalClearKeyProperties::IsSupportedInitDataType( | 28 bool ExternalClearKeyProperties::IsSupportedInitDataType( |
28 media::EmeInitDataType init_data_type) const { | 29 media::EmeInitDataType init_data_type) const { |
29 switch (init_data_type) { | 30 switch (init_data_type) { |
30 case media::EmeInitDataType::WEBM: | 31 case media::EmeInitDataType::WEBM: |
31 case media::EmeInitDataType::KEYIDS: | 32 case media::EmeInitDataType::KEYIDS: |
32 return true; | 33 return true; |
33 | 34 |
34 case media::EmeInitDataType::CENC: | 35 case media::EmeInitDataType::CENC: |
35 #if defined(USE_PROPRIETARY_CODECS) | 36 #if BUILDFLAG(USE_PROPRIETARY_CODECS) |
36 return true; | 37 return true; |
37 #else | 38 #else |
38 return false; | 39 return false; |
39 #endif // defined(USE_PROPRIETARY_CODECS) | 40 #endif // BUILDFLAG(USE_PROPRIETARY_CODECS) |
40 | 41 |
41 case media::EmeInitDataType::UNKNOWN: | 42 case media::EmeInitDataType::UNKNOWN: |
42 return false; | 43 return false; |
43 } | 44 } |
44 NOTREACHED(); | 45 NOTREACHED(); |
45 return false; | 46 return false; |
46 } | 47 } |
47 | 48 |
48 media::SupportedCodecs ExternalClearKeyProperties::GetSupportedCodecs() const { | 49 media::SupportedCodecs ExternalClearKeyProperties::GetSupportedCodecs() const { |
49 #if defined(USE_PROPRIETARY_CODECS) | 50 #if BUILDFLAG(USE_PROPRIETARY_CODECS) |
50 return media::EME_CODEC_MP4_ALL | media::EME_CODEC_WEBM_ALL; | 51 return media::EME_CODEC_MP4_ALL | media::EME_CODEC_WEBM_ALL; |
51 #else | 52 #else |
52 return media::EME_CODEC_WEBM_ALL; | 53 return media::EME_CODEC_WEBM_ALL; |
53 #endif | 54 #endif |
54 } | 55 } |
55 | 56 |
56 media::EmeConfigRule ExternalClearKeyProperties::GetRobustnessConfigRule( | 57 media::EmeConfigRule ExternalClearKeyProperties::GetRobustnessConfigRule( |
57 media::EmeMediaType media_type, | 58 media::EmeMediaType media_type, |
58 const std::string& requested_robustness) const { | 59 const std::string& requested_robustness) const { |
59 return requested_robustness.empty() ? media::EmeConfigRule::SUPPORTED | 60 return requested_robustness.empty() ? media::EmeConfigRule::SUPPORTED |
(...skipping 21 matching lines...) Expand all Loading... |
81 return media::EmeFeatureSupport::NOT_SUPPORTED; | 82 return media::EmeFeatureSupport::NOT_SUPPORTED; |
82 } | 83 } |
83 | 84 |
84 #if BUILDFLAG(ENABLE_PEPPER_CDMS) | 85 #if BUILDFLAG(ENABLE_PEPPER_CDMS) |
85 std::string ExternalClearKeyProperties::GetPepperType() const { | 86 std::string ExternalClearKeyProperties::GetPepperType() const { |
86 return kExternalClearKeyPepperType; | 87 return kExternalClearKeyPepperType; |
87 } | 88 } |
88 #endif | 89 #endif |
89 | 90 |
90 } // namespace cdm | 91 } // namespace cdm |
OLD | NEW |