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

Commit b0bd8841 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 7537076 from e002ca80 to sc-release

Change-Id: I8f74c9aa5b7268f7b66ddda4db1722eb5cd29fa7
parents 9ff692dc e002ca80
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -39,6 +39,7 @@ cc_defaults {

    static_libs: [
        "liblog",
        "libstagefright_foundation_colorutils_ndk",
        "libstagefright_foundation",
        "libmediandk_format",
        "libmedia_ndkformatpriv",
+1 −0
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@ cc_library {
    ],

    static_libs: [
        "libstagefright_foundation_colorutils_ndk",   // for mainline-safe ColorUtils
        "libstagefright_foundation",
        "libstagefright_metadatautils",
        "libwebm",
+9 −3
Original line number Diff line number Diff line
@@ -1126,7 +1126,9 @@ status_t MPEG4Extractor::parseChunk(off64_t *offset, int depth) {
                    void *data;
                    size_t size;

                    if (AMediaFormat_getBuffer(mLastTrack->meta, AMEDIAFORMAT_KEY_CSD_2, &data, &size)) {
                    if (AMediaFormat_getBuffer(mLastTrack->meta, AMEDIAFORMAT_KEY_CSD_2,
                                               &data, &size)
                        && size >= 5) {
                        const uint8_t *ptr = (const uint8_t *)data;
                        const uint8_t profile = ptr[2] >> 1;
                        const uint8_t bl_compatibility_id = (ptr[4]) >> 4;
@@ -1163,8 +1165,12 @@ status_t MPEG4Extractor::parseChunk(off64_t *offset, int depth) {
                            mLastTrack->next = track_b;
                            track_b->next = NULL;

                            auto id = track_b->meta->mFormat->findEntryByName(AMEDIAFORMAT_KEY_CSD_2);
                            track_b->meta->mFormat->removeEntryAt(id);
                            // we want to remove the csd-2 key from the metadata, but
                            // don't have an AMediaFormat_* function to do so. Settle
                            // for replacing this csd-2 with an empty csd-2.
                            uint8_t emptybuffer[8] = {};
                            AMediaFormat_setBuffer(track_b->meta, AMEDIAFORMAT_KEY_CSD_2,
                                                   emptybuffer, 0);

                            if (4 == profile || 7 == profile || 8 == profile ) {
                                AMediaFormat_setString(track_b->meta,
+1 −0
Original line number Diff line number Diff line
@@ -51,6 +51,7 @@ cc_test {
        "libstagefright_esds",
        "libstagefright_mpeg2support",
        "libstagefright_mpeg2extractor",
        "libstagefright_foundation_colorutils_ndk",
        "libstagefright_foundation",
        "libstagefright_metadatautils",

+64 −0
Original line number Diff line number Diff line
@@ -85,6 +85,7 @@ cc_defaults {
        "AudioPresentationInfo.cpp",
        "ByteUtils.cpp",
        "ColorUtils.cpp",
        "ColorUtils_fill.cpp",
        "FoundationUtils.cpp",
        "MediaBuffer.cpp",
        "MediaBufferBase.cpp",
@@ -148,3 +149,66 @@ cc_library_static {
        "-DNO_IMEMORY",
    ],
}

// this gets linked into extractors in media mainline module
// so must be ndk api 29 so that it runs on >=Q
cc_library_static {
    name: "libstagefright_foundation_colorutils_ndk",
    host_supported: true,
    vendor_available: true,

    target: {
        darwin: {
            enabled: false,
        },
    },

    shared_libs: [
        "liblog",
        "libutils",             // for sp<>
        // actually invokes this, but called from folks who already load it
        // "libmediandk",
    ],

    header_libs: [
        // this is only needed for the vendor variant that removes libbinder, but vendor
        // target below does not allow adding header_libs.
        "libbinder_headers",
        "libstagefright_foundation_headers",
        "media_ndk_headers",
        "media_plugin_headers",
    ],

    local_include_dirs: [
        "include/media/stagefright/foundation",
    ],

    cflags: [
        "-Werror",
        "-Wall",
    ],

    srcs: [
        "ColorUtils_ndk.cpp",
        "ColorUtils_fill.cpp",
    ],

    clang: true,

    sanitize: {
        misc_undefined: [
            "unsigned-integer-overflow",
            "signed-integer-overflow",
        ],
        cfi: true,
    },

    min_sdk_version: "29",
    apex_available: [
        "//apex_available:platform",
        "com.android.media",
        "com.android.media.swcodec",
    ],

}
Loading