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

Commit 44ade918 authored by Andreas Huber's avatar Andreas Huber Committed by Android Git Automerger
Browse files

am c56e81c8: Merge "DO NOT MERGE: Properly construct the ESDS metadata even if...

am c56e81c8: Merge "DO NOT MERGE: Properly construct the ESDS metadata even if sizeof(codec-specific-data) != 2" into honeycomb-mr2

* commit 'c56e81c88706d79ce51a314b5bfd3e247ca6f86c':
  DO NOT MERGE: Properly construct the ESDS metadata even if sizeof(codec-specific-data) != 2
parents 9e9bcb2c 70361bfe
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -660,7 +660,8 @@ static void addESDSFromAudioSpecificInfo(
        // AudioSpecificInfo (with size prefix) follows
    };

    CHECK(asiSize < 128);
    // Make sure all sizes can be coded in a single byte.
    CHECK(asiSize + 22 - 2 < 128);
    size_t esdsSize = sizeof(kStaticESDS) + asiSize + 1;
    uint8_t *esds = new uint8_t[esdsSize];
    memcpy(esds, kStaticESDS, sizeof(kStaticESDS));
@@ -668,6 +669,11 @@ static void addESDSFromAudioSpecificInfo(
    *ptr++ = asiSize;
    memcpy(ptr, asi, asiSize);

    // Increment by codecPrivateSize less 2 bytes that are accounted for
    // already in lengths of 22/17
    esds[1] += asiSize - 2;
    esds[6] += asiSize - 2;

    meta->setData(kKeyESDS, 0, esds, esdsSize);

    delete[] esds;