7 #ifndef MEDIA_BASE_KEY_SOURCE_H_
8 #define MEDIA_BASE_KEY_SOURCE_H_
13 #include "packager/media/base/protection_system_specific_info.h"
14 #include "packager/status.h"
21 enum class EmeInitDataType {
31 MAX = WIDEVINE_CLASSIC
38 std::vector<ProtectionSystemSpecificInfo> key_system_info;
39 std::vector<uint8_t> key_id;
40 std::vector<uint8_t> key;
41 std::vector<uint8_t> iv;
54 virtual Status
FetchKeys(EmeInitDataType init_data_type,
55 const std::vector<uint8_t>& init_data) = 0;
62 virtual Status
GetKey(
const std::string& stream_label,
70 virtual Status
GetKey(
const std::vector<uint8_t>& key_id,
81 const std::string& stream_label,
91 #endif // MEDIA_BASE_KEY_SOURCE_H_