Add widevine vendor apex
Bug: 243699259 Change-Id: Ie1ff0aa9c82f19e0c5412508ac6b67d9083c0cab
This commit is contained in:
@@ -268,7 +268,6 @@ cc_binary {
|
|||||||
|
|
||||||
init_rc: ["src/android.hardware.drm-service.widevine.rc"],
|
init_rc: ["src/android.hardware.drm-service.widevine.rc"],
|
||||||
vintf_fragments: ["manifest_android.hardware.drm-service.widevine.xml"],
|
vintf_fragments: ["manifest_android.hardware.drm-service.widevine.xml"],
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
@@ -290,8 +289,7 @@ cc_binary {
|
|||||||
shared_libs: ["libbinder_ndk"],
|
shared_libs: ["libbinder_ndk"],
|
||||||
|
|
||||||
init_rc: ["src/android.hardware.drm-service-lazy.widevine.rc"],
|
init_rc: ["src/android.hardware.drm-service-lazy.widevine.rc"],
|
||||||
vintf_fragments: ["manifest_android.hardware.drm-service.widevine.xml"],
|
vintf_fragments: ["manifest_android.hardware.drm-service-lazy.widevine.xml"],
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
@@ -371,7 +369,6 @@ cc_library_static {
|
|||||||
],
|
],
|
||||||
|
|
||||||
srcs: cdm_util_src_files,
|
srcs: cdm_util_src_files,
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
@@ -537,13 +534,12 @@ cc_library_shared {
|
|||||||
owner: "widevine",
|
owner: "widevine",
|
||||||
|
|
||||||
proprietary: true,
|
proprietary: true,
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
phony {
|
phony {
|
||||||
name: "android.hardware.drm@latest-service.widevine",
|
name: "android.hardware.drm@latest-service.widevine",
|
||||||
required: [
|
required: [
|
||||||
"android.hardware.drm-service.widevine",
|
"com.google.android.widevine",
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
74
libwvdrmengine/apex/Android.bp
Normal file
74
libwvdrmengine/apex/Android.bp
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
// Copyright (C) 2022 The Android Open Source Project
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
|
soong_config_module_type {
|
||||||
|
name: "widevine_apex_defaults",
|
||||||
|
module_type: "apex_defaults",
|
||||||
|
config_namespace: "ANDROID",
|
||||||
|
bool_variables: ["TARGET_ENABLE_MEDIADRM_64"],
|
||||||
|
properties: ["compile_multilib"],
|
||||||
|
}
|
||||||
|
|
||||||
|
widevine_apex_defaults {
|
||||||
|
name: "com.google.android.widevine-defaults",
|
||||||
|
compile_multilib: "prefer32",
|
||||||
|
soong_config_variables: {
|
||||||
|
TARGET_ENABLE_MEDIADRM_64: {
|
||||||
|
compile_multilib: "first",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
apex {
|
||||||
|
name: "com.google.android.widevine",
|
||||||
|
vendor: true,
|
||||||
|
manifest: "apex_manifest.json",
|
||||||
|
prebuilts: [
|
||||||
|
"com.google.android.widevine.rc",
|
||||||
|
"widevine-linker-config",
|
||||||
|
],
|
||||||
|
defaults: [
|
||||||
|
"com.google.android.widevine-defaults",
|
||||||
|
],
|
||||||
|
binaries: ["android.hardware.drm-service.widevine"],
|
||||||
|
// TODO(b/239054171) embed vintf_fragment in the apex.
|
||||||
|
vintf_fragments: ["com.google.android.widevine.xml"],
|
||||||
|
file_contexts: "file_contexts",
|
||||||
|
use_vndk_as_stable: true,
|
||||||
|
key: "com.google.android.widevine.key",
|
||||||
|
certificate: ":com.google.android.widevine.certificate",
|
||||||
|
updatable: false,
|
||||||
|
}
|
||||||
|
|
||||||
|
linker_config {
|
||||||
|
name: "widevine-linker-config",
|
||||||
|
src: "linker.config.json",
|
||||||
|
installable: false,
|
||||||
|
}
|
||||||
|
|
||||||
|
apex_key {
|
||||||
|
name: "com.google.android.widevine.key",
|
||||||
|
public_key: "com.google.android.widevine.avbpubkey",
|
||||||
|
private_key: "com.google.android.widevine.pem",
|
||||||
|
}
|
||||||
|
|
||||||
|
android_app_certificate {
|
||||||
|
name: "com.google.android.widevine.certificate",
|
||||||
|
certificate: "com.google.android.widevine",
|
||||||
|
}
|
||||||
|
|
||||||
|
prebuilt_etc {
|
||||||
|
name: "com.google.android.widevine.rc",
|
||||||
|
src: "com.google.android.widevine.rc",
|
||||||
|
}
|
||||||
4
libwvdrmengine/apex/apex_manifest.json
Normal file
4
libwvdrmengine/apex/apex_manifest.json
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"name": "com.google.android.widevine",
|
||||||
|
"version": 1
|
||||||
|
}
|
||||||
BIN
libwvdrmengine/apex/com.google.android.widevine.avbpubkey
Normal file
BIN
libwvdrmengine/apex/com.google.android.widevine.avbpubkey
Normal file
Binary file not shown.
52
libwvdrmengine/apex/com.google.android.widevine.pem
Normal file
52
libwvdrmengine/apex/com.google.android.widevine.pem
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
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
|
||||||
|
NeDaCQSbZnEP9SYC+JZstmKE/Uwqyw==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
BIN
libwvdrmengine/apex/com.google.android.widevine.pk8
Normal file
BIN
libwvdrmengine/apex/com.google.android.widevine.pk8
Normal file
Binary file not shown.
10
libwvdrmengine/apex/com.google.android.widevine.rc
Normal file
10
libwvdrmengine/apex/com.google.android.widevine.rc
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
on apex-ready
|
||||||
|
mkdir /data/vendor/mediadrm 0770 media mediadrm
|
||||||
|
|
||||||
|
service vendor.drm-widevine-hal /apex/com.google.android.widevine/bin/hw/android.hardware.drm-service.widevine
|
||||||
|
interface aidl android.hardware.drm::IDrmFactory/widevine
|
||||||
|
class hal
|
||||||
|
user media
|
||||||
|
group media mediadrm drmrpc system
|
||||||
|
ioprio rt 4
|
||||||
|
task_profiles ProcessCapacityHigh
|
||||||
35
libwvdrmengine/apex/com.google.android.widevine.x509.pem
Normal file
35
libwvdrmengine/apex/com.google.android.widevine.x509.pem
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIGJzCCBA+gAwIBAgIUCgS86NBn7DoD3rVyOm1iQAcTfPowDQYJKoZIhvcNAQEL
|
||||||
|
BQAwgaExCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
|
||||||
|
DA1Nb3VudGFpbiBWaWV3MRAwDgYDVQQKDAdBbmRyb2lkMRAwDgYDVQQLDAdBbmRy
|
||||||
|
b2lkMR0wGwYDVQQDDBRjb20uYW5kcm9pZC53aWRldmluZTEiMCAGCSqGSIb3DQEJ
|
||||||
|
ARYTYW5kcm9pZEBhbmRyb2lkLmNvbTAgFw0yMjA4MzAyMDQ0MjhaGA80NzYwMDcy
|
||||||
|
NjIwNDQyOFowgaExCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYw
|
||||||
|
FAYDVQQHDA1Nb3VudGFpbiBWaWV3MRAwDgYDVQQKDAdBbmRyb2lkMRAwDgYDVQQL
|
||||||
|
DAdBbmRyb2lkMR0wGwYDVQQDDBRjb20uYW5kcm9pZC53aWRldmluZTEiMCAGCSqG
|
||||||
|
SIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQAD
|
||||||
|
ggIPADCCAgoCggIBALj/ULAiAD/wWpFRG/MjnnCFB5qNaEzIPs9xXtxCtR8P2/q2
|
||||||
|
05VXiEK2uXWUoFSsyfdV7q5wX+B9lRnHAdVRWf2odf7G0/aM9h7F/Vtr5H1Yb9JU
|
||||||
|
gFArhgcpbFVFxuFyjdTiIdJYFzZxoT/IctDHsGNAFscvcQtzOKk3Plg0Sr6105QE
|
||||||
|
AZqw3HqZDmnjijgAq1Sc3dznx0DI7B57d3mMMvL/JTQfiwbqKGK6VHFoMYlKUrmD
|
||||||
|
xDJ4g8iEnVG1RIyoxiGgItbNIQQjh44t9nndDFJC+wIcrv++t8wcYEvkI8wFkCuw
|
||||||
|
hG8v8/p0lpqo/OPQNBbWSaGOHVMmdQO2dQ5YEwBZOHJ23i654RI8VHgfhm4PH1B7
|
||||||
|
b0Qav27Bs0YDJPY6PUrEFgTo2299r4qCfGChxXD6r0WeVqD6lTCkeV76NtQOmBnO
|
||||||
|
1ZQ2xOhj1NCn7SCHH7GHbHbgBI84sVerUWETtb9+ZpSLItgzho1Fb3XDp9u244kO
|
||||||
|
pUN5qgPFaipSe4LjZf0r9iXGMXYgQTi+OlUqrYcHR7Oz9SaWCQoqk7J92Pskd7dB
|
||||||
|
mFZF7ghuKAYSQf6jYCSux60OEtK6jN3sTJW50Zb7Qnz9U0nKoaN2xzmuHR41XKUq
|
||||||
|
Z0sh4EFYj3kcLeQhSnWPZ65s2t784uYfV1/0i5eHwxj6rLA+1VWQr4evf0k/AgMB
|
||||||
|
AAGjUzBRMB0GA1UdDgQWBBQqjWyCvgqoov7Ko/eidxfa9+TBJzAfBgNVHSMEGDAW
|
||||||
|
gBQqjWyCvgqoov7Ko/eidxfa9+TBJzAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3
|
||||||
|
DQEBCwUAA4ICAQA+sElhd7fMrhtWNaxFajWqhtDjfg2lxRjl4txYITyMC6ITtvuD
|
||||||
|
3Wi2c9VxDQj3x8M7L1eWEfq5pZOgzrm1wqhgKc0jbpdplm4QdfatdsDWVGPauxmK
|
||||||
|
C2ZGpPsHwIXgzZ0Zj9gi8Lk6xVN2HAS2aDsaOWhmT1mwkDwW9oMpEQK2ZGA7YHgH
|
||||||
|
/HsvolI5BAO9XDqdBUMi9+VwfMNGeCSfc1iMb+kDZbVThMHI4yKf6ikIuGgjr0En
|
||||||
|
G0Q0/ME38vN0c3LWz+Xgy2oHPEEn2NAOAdFSA4NpjR/BEkZk1rJb1jyyfsuFnKbF
|
||||||
|
0MkrNxnUfsn1tUxdGBT13+BEOMNGB30PoV4U6PsKkH4juFJ0LraSzWpggFy6YGFi
|
||||||
|
qOJ8hgwrmdC5mWxSDmi4GfeoUacsSppBld1H4lUAwbpJykbr1cNI6ZzuaO6o01DB
|
||||||
|
u2FmqVEAnItMhTeR0uOsiNJUPX8l/GmpxS7Uh2gzGaTHRPzReCGNVzcGIvez4OEQ
|
||||||
|
mRNFjdmNjAVGph+Pa2mqj+n7aItgOmPWKArtrGaNxPTgvWV/8GAQanfhwNN3NgPn
|
||||||
|
wtRdQtwXYv365DnRu3RHmOtQkAZcOOeYybFTntSxnylVvaSJds+4+K7mhQulr1oY
|
||||||
|
vqbbKP1DY8WOFBVjURDX7BiJDM1EnOOpWdEGbpVL7D1vx/hhvFSWbWm5BQ==
|
||||||
|
-----END CERTIFICATE-----
|
||||||
22
libwvdrmengine/apex/com.google.android.widevine.xml
Normal file
22
libwvdrmengine/apex/com.google.android.widevine.xml
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Copyright (C) 2022 The Android Open Source Project
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
-->
|
||||||
|
<manifest version="1.0" type="device">
|
||||||
|
<hal format="aidl">
|
||||||
|
<name>android.hardware.drm</name>
|
||||||
|
<version>1</version>
|
||||||
|
<fqname>IDrmFactory/widevine</fqname>
|
||||||
|
</hal>
|
||||||
|
</manifest>
|
||||||
3
libwvdrmengine/apex/file_contexts
Normal file
3
libwvdrmengine/apex/file_contexts
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
(/.*)? u:object_r:vendor_file:s0
|
||||||
|
/bin/hw/android\.hardware\.drm-service\.widevine u:object_r:hal_drm_widevine_exec:s0
|
||||||
|
/etc(/.*)? u:object_r:vendor_configs_file:s0
|
||||||
3
libwvdrmengine/apex/linker.config.json
Normal file
3
libwvdrmengine/apex/linker.config.json
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"permittedPaths": ["/vendor/${LIB}"]
|
||||||
|
}
|
||||||
@@ -77,5 +77,4 @@ cc_library_static {
|
|||||||
],
|
],
|
||||||
|
|
||||||
proprietary: true,
|
proprietary: true,
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ using namespace wvoec3;
|
|||||||
using video_widevine::ProvisioningResponse;
|
using video_widevine::ProvisioningResponse;
|
||||||
using wvcdm::kLevel3;
|
using wvcdm::kLevel3;
|
||||||
using wvcdm::kLevelDefault;
|
using wvcdm::kLevelDefault;
|
||||||
|
using namespace std;
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
@@ -931,7 +932,19 @@ class Adapter {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
if (level1_library_ == nullptr) {
|
if (level1_library_ == nullptr) {
|
||||||
level1_library_ = dlopen(library_name.c_str(), RTLD_NOW);
|
vector<string> library_paths = {"/vendor/", "/system/", "/odm/"};
|
||||||
|
string sub_dir;
|
||||||
|
#if __LP64__
|
||||||
|
sub_dir = "lib64/";
|
||||||
|
#else
|
||||||
|
sub_dir = "lib/";
|
||||||
|
#endif
|
||||||
|
|
||||||
|
for (auto& path : library_paths) {
|
||||||
|
level1_library_ = dlopen((path + sub_dir + library_name).c_str(), RTLD_NOW);
|
||||||
|
if (level1_library_) break;
|
||||||
|
}
|
||||||
|
|
||||||
if (level1_library_ == nullptr) {
|
if (level1_library_ == nullptr) {
|
||||||
LOGW("Could not load %s. Falling back to L3. %s", library_name.c_str(),
|
LOGW("Could not load %s. Falling back to L3. %s", library_name.c_str(),
|
||||||
dlerror());
|
dlerror());
|
||||||
|
|||||||
@@ -74,5 +74,4 @@ cc_library_static {
|
|||||||
proprietary: true,
|
proprietary: true,
|
||||||
|
|
||||||
owner: "widevine",
|
owner: "widevine",
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,22 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Copyright (C) 2022 The Android Open Source Project
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
-->
|
||||||
|
<manifest version="1.0" type="device">
|
||||||
|
<hal format="aidl">
|
||||||
|
<name>android.hardware.drm</name>
|
||||||
|
<version>1</version>
|
||||||
|
<fqname>IDrmFactory/widevine</fqname>
|
||||||
|
</hal>
|
||||||
|
</manifest>
|
||||||
Reference in New Issue
Block a user