Merge "Add additional VTS drm tests for widevine" into oc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
70d15e286f
@@ -82,6 +82,9 @@ void WVCryptoPlugin::notifyResolution(uint32_t width, uint32_t height) {
|
|||||||
status_t WVCryptoPlugin::setMediaDrmSession(const Vector<uint8_t>& sessionId) {
|
status_t WVCryptoPlugin::setMediaDrmSession(const Vector<uint8_t>& sessionId) {
|
||||||
CdmSessionId cdmSessionId(reinterpret_cast<const char *>(sessionId.array()),
|
CdmSessionId cdmSessionId(reinterpret_cast<const char *>(sessionId.array()),
|
||||||
sessionId.size());
|
sessionId.size());
|
||||||
|
if (sessionId.size() == 0) {
|
||||||
|
return android::BAD_VALUE;
|
||||||
|
}
|
||||||
if (!mCDM->IsOpenSession(cdmSessionId)) {
|
if (!mCDM->IsOpenSession(cdmSessionId)) {
|
||||||
return android::ERROR_DRM_SESSION_NOT_OPENED;
|
return android::ERROR_DRM_SESSION_NOT_OPENED;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -302,6 +302,9 @@ status_t WVDrmPlugin::provideKeyResponse(
|
|||||||
}
|
}
|
||||||
|
|
||||||
status_t WVDrmPlugin::removeKeys(const Vector<uint8_t>& sessionId) {
|
status_t WVDrmPlugin::removeKeys(const Vector<uint8_t>& sessionId) {
|
||||||
|
if (!sessionId.size()) {
|
||||||
|
return android::BAD_VALUE;
|
||||||
|
}
|
||||||
CdmSessionId cdmSessionId(sessionId.begin(), sessionId.end());
|
CdmSessionId cdmSessionId(sessionId.begin(), sessionId.end());
|
||||||
|
|
||||||
CdmResponseType res = mCDM->RemoveKeys(cdmSessionId);
|
CdmResponseType res = mCDM->RemoveKeys(cdmSessionId);
|
||||||
@@ -322,6 +325,9 @@ status_t WVDrmPlugin::restoreKeys(const Vector<uint8_t>& sessionId,
|
|||||||
status_t WVDrmPlugin::queryKeyStatus(
|
status_t WVDrmPlugin::queryKeyStatus(
|
||||||
const Vector<uint8_t>& sessionId,
|
const Vector<uint8_t>& sessionId,
|
||||||
KeyedVector<String8, String8>& infoMap) const {
|
KeyedVector<String8, String8>& infoMap) const {
|
||||||
|
if (sessionId.size() == 0) {
|
||||||
|
return android::BAD_VALUE;
|
||||||
|
}
|
||||||
CdmSessionId cdmSessionId(sessionId.begin(), sessionId.end());
|
CdmSessionId cdmSessionId(sessionId.begin(), sessionId.end());
|
||||||
CdmQueryMap cdmLicenseInfo;
|
CdmQueryMap cdmLicenseInfo;
|
||||||
|
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ namespace widevine_vts {
|
|||||||
|
|
||||||
const int kHttpOk = 200;
|
const int kHttpOk = 200;
|
||||||
|
|
||||||
vector<uint8_t> WidevineVTSVendorModule_V1::getUUID() {
|
vector<uint8_t> WidevineVTSVendorModule_V1::getUUID() const {
|
||||||
uint8_t uuid[16] = {
|
uint8_t uuid[16] = {
|
||||||
0xED,0xEF,0x8B,0xA9,0x79,0xD6,0x4A,0xCE,
|
0xED,0xEF,0x8B,0xA9,0x79,0xD6,0x4A,0xCE,
|
||||||
0xA3,0xC8,0x27,0xDC,0xD5,0x1D,0x21,0xED
|
0xA3,0xC8,0x27,0xDC,0xD5,0x1D,0x21,0xED
|
||||||
@@ -84,11 +84,11 @@ namespace widevine_vts {
|
|||||||
}
|
}
|
||||||
|
|
||||||
vector<DrmHalVTSVendorModule_V1::ContentConfiguration>
|
vector<DrmHalVTSVendorModule_V1::ContentConfiguration>
|
||||||
WidevineVTSVendorModule_V1::getContentConfigurations() {
|
WidevineVTSVendorModule_V1::getContentConfigurations() const {
|
||||||
|
|
||||||
vector<DrmHalVTSVendorModule_V1::ContentConfiguration> configurations;
|
vector<DrmHalVTSVendorModule_V1::ContentConfiguration> configurations;
|
||||||
{
|
{
|
||||||
const string serverUrl = "https://proxy.uat.widevine.com/proxy";
|
const string serverUrl = "http://widevine-proxy.appspot.com/proxy";
|
||||||
const vector<uint8_t> initData = a2b_hex(
|
const vector<uint8_t> initData = a2b_hex(
|
||||||
"00000042" // blob size
|
"00000042" // blob size
|
||||||
"70737368" // "pssh"
|
"70737368" // "pssh"
|
||||||
@@ -98,14 +98,13 @@ namespace widevine_vts {
|
|||||||
"08011a0d7769646576696e655f746573" // pssh data...
|
"08011a0d7769646576696e655f746573" // pssh data...
|
||||||
"74220f73747265616d696e675f636c69"
|
"74220f73747265616d696e675f636c69"
|
||||||
"7031");
|
"7031");
|
||||||
vector<uint8_t> keyIdVec;
|
|
||||||
const vector<uint8_t> keyId = a2b_hex("371EA35E1A985D75D198A7F41020DC23");
|
const vector<uint8_t> keyId = a2b_hex("371EA35E1A985D75D198A7F41020DC23");
|
||||||
const vector<uint8_t> keyValue = a2b_hex("371EA35E1A985D75D198A7F41020DC23");
|
const vector<uint8_t> keyValue = a2b_hex("371EA35E1A985D75D198A7F41020DC23");
|
||||||
const vector<DrmHalVTSVendorModule_V1::ContentConfiguration::Key> keys = {
|
const vector<DrmHalVTSVendorModule_V1::ContentConfiguration::Key> keys = {
|
||||||
{
|
{
|
||||||
.isSecure = false,
|
.isSecure = false,
|
||||||
.keyId = keyId,
|
.keyId = keyId,
|
||||||
.keyValue = keyValue
|
.clearContentKey = keyValue
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ namespace widevine_vts {
|
|||||||
WidevineVTSVendorModule_V1() {}
|
WidevineVTSVendorModule_V1() {}
|
||||||
virtual ~WidevineVTSVendorModule_V1() {}
|
virtual ~WidevineVTSVendorModule_V1() {}
|
||||||
|
|
||||||
virtual vector<uint8_t> getUUID();
|
virtual vector<uint8_t> getUUID() const;
|
||||||
|
|
||||||
virtual vector<uint8_t> handleProvisioningRequest(const vector<uint8_t>&
|
virtual vector<uint8_t> handleProvisioningRequest(const vector<uint8_t>&
|
||||||
provisioningRequest, const std::string& url);
|
provisioningRequest, const std::string& url);
|
||||||
@@ -29,10 +29,11 @@ namespace widevine_vts {
|
|||||||
virtual vector<uint8_t> handleKeyRequest(const vector<uint8_t>&
|
virtual vector<uint8_t> handleKeyRequest(const vector<uint8_t>&
|
||||||
keyRequest, const std::string& serverUrl);
|
keyRequest, const std::string& serverUrl);
|
||||||
|
|
||||||
virtual std::vector<ContentConfiguration> getContentConfigurations();
|
virtual std::vector<ContentConfiguration>
|
||||||
|
getContentConfigurations() const;
|
||||||
|
|
||||||
// TODO: change to "widevine" when HAL service is available
|
// TODO: change to "widevine" when HAL service is available
|
||||||
virtual std::string getServiceName() {return "default";}
|
virtual std::string getServiceName() const {return "default";}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
WidevineVTSVendorModule_V1(const WidevineVTSVendorModule_V1&) = delete;
|
WidevineVTSVendorModule_V1(const WidevineVTSVendorModule_V1&) = delete;
|
||||||
|
|||||||
Reference in New Issue
Block a user