Package: android.hardware.drm@1.1

types

Properties

HdcpLevel

enum HdcpLevel: uint32_t

HDCP specifications are defined by Digital Content Protection LLC(DCP). "HDCP Specification Rev.2.2 Interface Independent Adaptation" "HDCP 2.2 on HDMI Specification"

Details
Members
HDCP_UNKNOWN
Unable to determine the HDCP level
HDCP_NONE
No HDCP, output is unprotected
HDCP_V1
HDCP version 1.0
HDCP_V2
HDCP version 2.0 Type 1.
HDCP_V2_1
HDCP version 2.1 Type 1.
HDCP_V2_2
HDCP version 2.2 Type 1.
HDCP_NO_OUTPUT
No digital output, implicitly secure

KeyRequestType

enum KeyRequestType: @1.0::KeyRequestType

KeyRequestTypes(in addition to those from 1.0)which allow an app to determine the type of a key request returned from getKeyRequest.

Details
Members
NONE
Keys are already loaded.No key request is needed.
UPDATE
Keys have previously been loaded.An additional(non-renewal)license request is needed.

SecurityLevel

enum SecurityLevel: uint32_t
Details
Members
UNKNOWN
Unable to determine the security level
SW_SECURE_CRYPTO
Software-based whitebox crypto
SW_SECURE_DECODE
Software-based whitebox crypto and an obfuscated decoder
HW_SECURE_CRYPTO
DRM key management and crypto operations are performed within a hardware backed trusted execution environment
HW_SECURE_DECODE
DRM key management, crypto operations and decoding of content are performed within a hardware backed trusted execution environment
HW_SECURE_ALL
DRM key management, crypto operations, decoding of content and all handling of the media(compressed and uncompressed)is handled within a hardware backed trusted execution environment.

DrmMetricGroup

struct DrmMetricGroup {enum ValueType; struct Attribute }; struct Value }; struct Metric }; vec metrics}

This message contains plugin-specific metrics made available to the client.The message is used for making vendor-specific metrics available to an application.The framework is not consuming any of the information.

Metrics are grouped in instances of DrmMetricGroup.Each group contains multiple instances of Metric.

Example:

Capture the timing information of a buffer copy event, "buf_copy", broken out by the "size" of the buffer.

DrmMetricGroup{metrics[0 ]{name:"buf_copy" attributes[0 ]{name:"size" type:INT64_TYPE int64Value:1024}values[0 ]{componentName:"operation_count" type:INT64_TYPE int64Value:75}values[1 ]{component_name:"average_time_seconds" type:DOUBLE_TYPE doubleValue:0.00000042}} }

Details
Members
ValueType
Used to discriminate the type of value being stored in the structs below.
}
A detail about the metric being captured.The fields of an Attribute are opaque to the framework.
}
A value of the metric.A metric may have multiple values.The component name may be left empty if there is only supposed to be one value for the given metric.The fields of the Value are opaque to the framework.
}
The metric being captured.A metric must have a name and at least one value.A metric may have 0 or more attributes.The fields of a Metric are opaque to the framework.
metrics
The list of metrics to be captured.

SecureStopRelease

struct SecureStopRelease {vec opaqueData}

Encapsulates a secure stop release opaque object

Details
Members
opaqueData