Added CDM support for Watermarking reporting.
[ Merge of http://go/wvgerrit/148552 ] Extended the CDM layer to report OEMCrypto's watermarking support. The reporting of watermarking comes in three (3) mechanisms: 1) ClientCapabilities in license requests 2) CryptoSession metrics when queried to OEMCrypto 3) String property query by apps If OEMCrypto implementents OEMCrypto_GetWatermarkingSupport(), then the reported watermarking support by the CDM will match that of OEMCrypto. If OEMCrypto does not implement OEMCrypto_GetWatermarkingSupport() or an error occurs, it is assumed that OEMCrypto does not support watermarking, and the CDM will report "Not Supported". Bug: 226443788 Test: run_x86_64_tests request_license_test and license_unittest Change-Id: Id929a356c395e6bcf45d371ee6887eec40d35329
This commit is contained in:
@@ -795,6 +795,28 @@ CdmResponseType CdmEngine::QueryStatus(RequestedSecurityLevel security_level,
|
||||
}
|
||||
return NO_ERROR;
|
||||
}
|
||||
if (query_token == QUERY_KEY_WATERMARKING_SUPPORT) {
|
||||
CdmWatermarkingSupport support;
|
||||
if (!crypto_session->GetWatermarkingSupport(security_level, &support)) {
|
||||
// Assume not supported.
|
||||
support = kWatermarkingNotSupported;
|
||||
}
|
||||
switch (support) {
|
||||
case kWatermarkingNotSupported:
|
||||
*query_response = QUERY_VALUE_NOT_SUPPORTED;
|
||||
break;
|
||||
case kWatermarkingConfigurable:
|
||||
*query_response = QUERY_VALUE_CONFIGURABLE;
|
||||
break;
|
||||
case kWatermarkingAlwaysOn:
|
||||
*query_response = QUERY_VALUE_ALWAYS_ON;
|
||||
break;
|
||||
default:
|
||||
LOGW("Unknown watermarking support: %d", static_cast<int>(support));
|
||||
return UNKNOWN_ERROR;
|
||||
}
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
CdmResponseType status;
|
||||
M_TIME(status = crypto_session->Open(security_level),
|
||||
|
||||
Reference in New Issue
Block a user