Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 86e363c1 authored by Ayushi Khopkar's avatar Ayushi Khopkar
Browse files

Create two variants of libstagefright_mpeg2support library

A flag ENABLE_CRYPTO is defined to selectively enable crypto dependencies
for libstagefright_mpeg2support

A library libtagefright_mpeg2support_nocrypto is created that has all the
crypto dependencies removed and is made available to apex

Test: Build libtagefright_mpeg2support_nocrypto
Test: Build libstagefright_mpeg2support
Bug: 159070321

Change-Id: Id4a9fb446181fd04b9fce1ed8a27f5b9862a3bc7
parent c1d40b64
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -37,7 +37,7 @@ cc_library {
        "libstagefright_esds",
        "libstagefright_foundation_without_imemory",
        "libstagefright_mpeg2extractor",
        "libstagefright_mpeg2support",
        "libstagefright_mpeg2support_nocrypto",
        "libutils",
    ],

+29 −4
Original line number Diff line number Diff line
cc_library_static {
    name: "libstagefright_mpeg2support",
cc_defaults {
    name: "libstagefright_mpeg2support_defaults",

    srcs: [
        "AnotherPacketSource.cpp",
        "ATSParser.cpp",
        "CasManager.cpp",
        "ESQueue.cpp",
        "HlsSampleDecryptor.cpp",
    ],

    include_dirs: [
@@ -28,7 +27,6 @@ cc_library_static {
    },

    shared_libs: [
        "libcrypto",
        "libhidlmemory",
        "android.hardware.cas.native@1.0",
        "android.hidl.memory@1.0",
@@ -50,3 +48,30 @@ cc_library_static {

    min_sdk_version: "29",
}


cc_library_static {
    name: "libstagefright_mpeg2support",
    defaults: [
        "libstagefright_mpeg2support_defaults",
    ],
    cflags: [
        "-DENABLE_CRYPTO",
    ],
    shared_libs: [
        "libcrypto",
    ],
    srcs: [
        "HlsSampleDecryptor.cpp",
    ],
}

cc_library_static {
    name: "libstagefright_mpeg2support_nocrypto",
    defaults: [
        "libstagefright_mpeg2support_defaults",
    ],
    apex_available: [
        "com.android.media",
    ],
}
+4 −4
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@
#include <inttypes.h>
#include <netinet/in.h>

#ifndef __ANDROID_APEX__
#ifdef ENABLE_CRYPTO
#include "HlsSampleDecryptor.h"
#endif

@@ -55,10 +55,10 @@ ElementaryStreamQueue::ElementaryStreamQueue(Mode mode, uint32_t flags)
    // Create the decryptor anyway since we don't know the use-case unless key is provided
    // Won't decrypt if key info not available (e.g., scanner/extractor just parsing ts files)
    mSampleDecryptor = isSampleEncrypted() ?
#ifdef __ANDROID_APEX__
        new SampleDecryptor
#else
#ifdef ENABLE_CRYPTO
        new HlsSampleDecryptor
#else
        new SampleDecryptor
#endif
        : NULL;
}