OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef CHROMECAST_MEDIA_BASE_KEY_SYSTEMS_COMMON_H_ | 5 #ifndef CHROMECAST_MEDIA_BASE_KEY_SYSTEMS_COMMON_H_ |
6 #define CHROMECAST_MEDIA_BASE_KEY_SYSTEMS_COMMON_H_ | 6 #define CHROMECAST_MEDIA_BASE_KEY_SYSTEMS_COMMON_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
| 9 #include <utility> |
| 10 #include <vector> |
| 11 |
| 12 #include "base/compiler_specific.h" |
| 13 #include "media/base/android/media_client_android.h" |
9 | 14 |
10 namespace chromecast { | 15 namespace chromecast { |
11 namespace media { | 16 namespace media { |
12 | 17 |
13 #if defined(PLAYREADY_CDM_AVAILABLE) | 18 #if defined(PLAYREADY_CDM_AVAILABLE) |
14 extern const char kChromecastPlayreadyKeySystem[]; | 19 extern const char kChromecastPlayreadyKeySystem[]; |
15 #endif // defined(PLAYREADY_CDM_AVAILABLE) | 20 #endif // defined(PLAYREADY_CDM_AVAILABLE) |
16 | 21 |
17 enum CastKeySystem { | 22 enum CastKeySystem { |
18 KEY_SYSTEM_NONE = 0, | 23 KEY_SYSTEM_NONE = 0, |
19 KEY_SYSTEM_CLEAR_KEY, | 24 KEY_SYSTEM_CLEAR_KEY, |
20 KEY_SYSTEM_PLAYREADY, | 25 KEY_SYSTEM_PLAYREADY, |
21 KEY_SYSTEM_WIDEVINE | 26 KEY_SYSTEM_WIDEVINE |
22 }; | 27 }; |
23 | 28 |
24 // Translates a key system string into a CastKeySystem, calling into the | 29 // Translates a key system string into a CastKeySystem, calling into the |
25 // platform for known key systems if needed. | 30 // platform for known key systems if needed. |
26 CastKeySystem GetKeySystemByName(const std::string& key_system_name); | 31 CastKeySystem GetKeySystemByName(const std::string& key_system_name); |
27 | 32 |
28 // Translates a platform-specific key system string into a CastKeySystem. | 33 // Translates a platform-specific key system string into a CastKeySystem. |
29 // TODO(gunsch): Remove when prefixed EME is removed. | 34 // TODO(gunsch): Remove when prefixed EME is removed. |
30 CastKeySystem GetPlatformKeySystemByName(const std::string& key_system_name); | 35 CastKeySystem GetPlatformKeySystemByName(const std::string& key_system_name); |
31 | 36 |
| 37 // Translates a platform-specific key system string into a CastKeySystem. |
| 38 // TODO(gunsch): Remove when prefixed EME is removed. |
| 39 #if defined(OS_ANDROID) |
| 40 std::vector<::media::MediaClientAndroid::KeySystemUuidMap::value_type> |
| 41 GetPlatformKeySystemUUIDMappings(); |
| 42 #endif |
| 43 |
32 } // namespace media | 44 } // namespace media |
33 } // namespace chromecast | 45 } // namespace chromecast |
34 | 46 |
35 #endif // CHROMECAST_MEDIA_BASE_KEY_SYSTEMS_COMMON_H_ | 47 #endif // CHROMECAST_MEDIA_BASE_KEY_SYSTEMS_COMMON_H_ |
OLD | NEW |