7 #ifndef MEDIA_BASE_KEY_SOURCE_H_
8 #define MEDIA_BASE_KEY_SOURCE_H_
12 #include "packager/base/memory/scoped_ptr.h"
13 #include "packager/media/base/status.h"
15 namespace edash_packager {
22 std::vector<uint8_t> key_id;
23 std::vector<uint8_t> key;
24 std::vector<uint8_t> pssh;
25 std::vector<uint8_t> iv;
32 TRACK_TYPE_UNKNOWN = 0,
36 TRACK_TYPE_UNSPECIFIED = 4,
37 NUM_VALID_TRACK_TYPES = 4
47 const std::string& policy);
90 virtual std::string
UUID();
108 const std::string& key_id_hex,
109 const std::string& key_hex,
110 const std::string& pssh_data_hex,
111 const std::string& iv_hex);
125 const std::vector<uint8_t>& pssh_data);
128 explicit KeySource(scoped_ptr<EncryptionKey> encryption_key);
130 scoped_ptr<EncryptionKey> encryption_key_;
138 #endif // MEDIA_BASE_KEY_SOURCE_H_