Entitlement rotation support
Updates also include: - Add APIs to query current Simulcrypt channel & stream status; - EMM format change (used only to carry fingerprinting and service blocking info); - Key fetcher example to use curl key fetcher.
This commit is contained in:
@@ -19,9 +19,8 @@ message CaDescriptorPrivateData {
|
||||
// Content ID.
|
||||
optional bytes content_id = 2;
|
||||
|
||||
// Entitlement key IDs for current content per track. Each track will allow up
|
||||
// to 2 entitlement key ids (odd and even entitlement keys).
|
||||
repeated bytes entitlement_key_ids = 3;
|
||||
// Deprecated.
|
||||
repeated bytes deprecated_entitlement_key_ids = 3;
|
||||
|
||||
// The groups ids this channel belongs to.
|
||||
repeated bytes group_ids = 4;
|
||||
@@ -78,6 +77,17 @@ message EcmMetaData {
|
||||
// Optional. The minimum age required to watch the content. The value
|
||||
// represents actual age, with 0 means no restriction.
|
||||
optional uint32 age_restriction = 2 [default = 0];
|
||||
// If specified, it means entitlement key rotation is enabled. The value will
|
||||
// be included in the license request. The server is expected to return
|
||||
// entitlement keys accordingly (e.g., keys for |entitlement_period_index| and
|
||||
// |entitlement_period_index| + 1).
|
||||
optional uint32 entitlement_period_index = 3;
|
||||
// Used only if entitlement key rotation is enabled. This parameter controls
|
||||
// the probability of requesting a new license by clients upon receiving this
|
||||
// ECM. The purpose is to spread out requests to avoid request storms. A
|
||||
// client will request a new license with possibility = 1 /
|
||||
// |entitlement_rotation_window_left|.
|
||||
optional uint32 entitlement_rotation_window_left = 4 [default = 1];
|
||||
}
|
||||
|
||||
message EcmKeyData {
|
||||
|
||||
Reference in New Issue
Block a user