syntax = "proto2"; package android.os.statsd.media; import "frameworks/proto_logging/stats/atom_field_options.proto"; import "frameworks/proto_logging/stats/enums/media/drm/enums.proto"; option java_package = "com.android.os.media"; /** * Logs when a MediaDrm object is created. * * Logged from: * frameworks/av/drm/libmediadrm/DrmHal.cpp */ message MediaDrmCreated { // Crypto scheme & UUID. // Please see https://dashif.org/identifiers/content_protection/. optional android.media.drm.DrmScheme scheme = 1; optional int64 uuid_lsb = 2; optional int64 uuid_msb = 3; // App uid. optional int32 uid = 4 [(is_uid) = true]; // DRM library (MediaDrm, NdkMediaDrm, or MediaPlayer). optional android.media.drm.IDrmFrontend frontend = 5; // MediaDrm#PROPERTY_VERSION. optional string version = 6; } /** * Logs when a MediaDrm object encountered an error. * * Logged from: * frameworks/av/drm/libmediadrm/DrmHal.cpp */ message MediaDrmErrored { // Crypto scheme & UUID. // Please see https://dashif.org/identifiers/content_protection/. optional android.media.drm.DrmScheme scheme = 1; optional int64 uuid_lsb = 2; optional int64 uuid_msb = 3; // App uid. optional int32 uid = 4 [(is_uid) = true]; // DRM library (MediaDrm, NdkMediaDrm, or MediaPlayer). optional android.media.drm.IDrmFrontend frontend = 5; // MediaDrm#PROPERTY_VERSION. optional string version = 6; // Base64 encoding of a randomly generated, globally unique 128 bit number // tied to a MediaDrm object; it has no device or user association. optional string object_nonce = 7; // Base64 encoding of a randomly generated, globally unique 128 bit number // tied to a MediaDrm session; it has no device or user association. optional string session_nonce = 8; // Security level of the opened session. optional android.media.drm.SecurityLevel security_level = 9; // The API that triggered the error. optional android.media.drm.DrmApi api = 10; // The encountered framework error. optional android.media.drm.Status error_code = 11; // Underlying plugin-specific (content decryption module) error. optional int32 cdm_err = 12; // Underlying OEM-specific error. optional int32 oem_err = 13; // Plugin-specific (cdm) error context. optional int32 error_context = 14; } /** * Logs when a MediaDrm session is opened. * * Logged from: * frameworks/av/drm/libmediadrm/DrmHal.cpp */ message MediaDrmSessionOpened { // Crypto scheme & UUID. // Please see https://dashif.org/identifiers/content_protection/. optional android.media.drm.DrmScheme scheme = 1; optional int64 uuid_lsb = 2; optional int64 uuid_msb = 3; // App uid. optional int32 uid = 4 [(is_uid) = true]; // DRM library (MediaDrm, NdkMediaDrm, or MediaPlayer). optional android.media.drm.IDrmFrontend frontend = 5; // MediaDrm#PROPERTY_VERSION. optional string version = 6; // Base64 encoding of a randomly generated, globally unique 128 bit number // tied to a MediaDrm object; it has no device or user association. optional string object_nonce = 7; // Input security level to MediaDrm#openSession. optional android.media.drm.SecurityLevel requested_security_level = 8; // Actual security level of the opened session. optional android.media.drm.SecurityLevel opened_security_level = 9; } /** * Logs when a MediaDrm session is closed. * * Logged from: * frameworks/av/drm/libmediadrm/DrmHal.cpp */ message MediaDrmSessionClosed { // Crypto scheme & UUID. // Please see https://dashif.org/identifiers/content_protection/. optional android.media.drm.DrmScheme scheme = 1; optional int64 uuid_lsb = 2; optional int64 uuid_msb = 3; // App uid. optional int32 uid = 4 [(is_uid) = true]; // DRM library (MediaDrm, NdkMediaDrm, or MediaPlayer). optional android.media.drm.IDrmFrontend frontend = 5; // MediaDrm#PROPERTY_VERSION. optional string version = 6; // Base64 encoding of a randomly generated, globally unique 128 bit number // tied to a MediaDrm object; it has no device or user association. optional string object_nonce = 7; // Base64 encoding of a randomly generated, globally unique 128 bit number // tied to a MediaDrm session; it has no device or user association. optional string session_nonce = 8; // Security level of the opened session. optional android.media.drm.SecurityLevel opened_security_level = 9; // Duration between session open-close in milliseconds. optional int64 session_lifespan_ms = 10; }