Media CAS Proxy SDK release: 16.5.0
This commit is contained in:
82
ubuntu/protos/public/security_profile.proto
Normal file
82
ubuntu/protos/public/security_profile.proto
Normal file
@@ -0,0 +1,82 @@
|
||||
// Copyright 2019 Google LLC. All rights reserved.
|
||||
//
|
||||
// Definitions of the protocol buffer messages for security profile level.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package video_widevine;
|
||||
|
||||
import "protos/public/device_common.proto";
|
||||
import "protos/public/device_security_profile_data.proto";
|
||||
|
||||
option java_outer_classname = "SecurityProfileProtos";
|
||||
option java_package = "com.google.video.widevine.protos";
|
||||
|
||||
message SecurityProfile {
|
||||
// TODO(hali): Remove this enum and use enum defined in
|
||||
// protos/internal/devcei_data.proto.
|
||||
enum DeviceState {
|
||||
DEVICE_STATE_UNKNOWN = 0;
|
||||
IN_TESTING = 1;
|
||||
RELEASED = 2;
|
||||
DELETED = 3;
|
||||
TEST_ONLY = 4;
|
||||
REVOKED = 5;
|
||||
PRE_RELEASE = 6;
|
||||
}
|
||||
|
||||
message ClientInfo {
|
||||
message ProductInfo {
|
||||
// The 'product_name' as specified in the
|
||||
// ClientIdentification.names_values. Optional.
|
||||
optional string product_name = 1;
|
||||
// The 'build_info' as specified in the
|
||||
// ClientIdentification.names_values. Optional.
|
||||
optional string build_info = 2;
|
||||
// The 'oem_crypto_security_patch_level' as specified in the
|
||||
// ClientIdentification.names_values. Optional.
|
||||
optional string oem_crypto_security_patch_level = 3;
|
||||
// Widevine device platform.
|
||||
optional string platform = 4;
|
||||
}
|
||||
// The 'device_name' as specified in the
|
||||
// ClientIdentification.names_values. Optional.
|
||||
optional string device_name = 1;
|
||||
// Product fields that are specified in the
|
||||
// ClientIdentification.names_values.
|
||||
optional ProductInfo product_info = 2;
|
||||
}
|
||||
|
||||
message DrmInfo {
|
||||
// Make/Model specified by the client.
|
||||
optional DeviceModel request_model_info = 1;
|
||||
// Widevine device system id.
|
||||
optional uint32 system_id = 2;
|
||||
// Output requirements
|
||||
optional OutputRequirement output = 3;
|
||||
// Security requirements
|
||||
optional SecurityRequirement security = 4;
|
||||
// Device status such as RELEASED or REVOKED.
|
||||
optional DeviceState device_model_state = 5;
|
||||
// ClientIdentification.names_values fields.
|
||||
optional ClientInfo client_info = 6;
|
||||
}
|
||||
|
||||
// Required. Widevine security profile name.
|
||||
optional string name = 1;
|
||||
// Optional. Widevine security profile level.
|
||||
optional SecurityProfileLevel level = 2;
|
||||
// Minimum output requirements for this profile.
|
||||
optional OutputRequirement min_output_requirements = 3;
|
||||
// Minimum security requirements for this profile.
|
||||
optional SecurityRequirement min_security_requirements = 4;
|
||||
// Name of content owner who owns this security profile.
|
||||
optional string owner = 5 [default = "Widevine"];
|
||||
// Special handling of devices to override the default capabilities of a
|
||||
// device.
|
||||
repeated DeviceException device_exceptions = 6;
|
||||
// Optional. Control time indicates the timestamps when this profile is
|
||||
// effective and when it is expired. For default DSPs provided by Widevine,
|
||||
// they are always being active and never expiring.
|
||||
optional ControlTime control_time = 7;
|
||||
}
|
||||
Reference in New Issue
Block a user