7 #ifndef MEDIA_BASE_KEY_SOURCE_H_
8 #define MEDIA_BASE_KEY_SOURCE_H_
13 #include "packager/base/memory/scoped_ptr.h"
14 #include "packager/media/base/protection_system_specific_info.h"
15 #include "packager/media/base/status.h"
17 namespace edash_packager {
20 const uint8_t kWidevineSystemId[] = {0xed, 0xef, 0x8b, 0xa9, 0x79, 0xd6,
21 0x4a, 0xce, 0xa3, 0xc8, 0x27, 0xdc,
22 0xd5, 0x1d, 0x21, 0xed};
28 std::vector<ProtectionSystemSpecificInfo> key_system_info;
29 std::vector<uint8_t> key_id;
30 std::vector<uint8_t> key;
31 std::vector<uint8_t> iv;
38 TRACK_TYPE_UNKNOWN = 0,
42 TRACK_TYPE_UNSPECIFIED = 4,
43 NUM_VALID_TRACK_TYPES = 4
53 const std::string& policy);
63 virtual Status FetchKeys(
const std::vector<std::vector<uint8_t>>& key_ids);
105 const std::string& key_id_hex,
106 const std::string& key_hex,
107 const std::string& pssh_data_hex,
108 const std::string& iv_hex);
120 explicit KeySource(scoped_ptr<EncryptionKey> encryption_key);
122 scoped_ptr<EncryptionKey> encryption_key_;
130 #endif // MEDIA_BASE_KEY_SOURCE_H_