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

Commit 137de764 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Code review cleanup" into main am: 91bed2e4

parents efb192bf 91bed2e4
Loading
Loading
Loading
Loading
+9 −9
Original line number Diff line number Diff line
@@ -62,8 +62,8 @@ public:
    void setCrypto(const sp<ICrypto> &crypto) override;
    void setDescrambler(const sp<IDescrambler> &descrambler) override;

    virtual status_t queueInputBuffer(const sp<MediaCodecBuffer> &buffer) override;
    virtual status_t queueSecureInputBuffer(
    status_t queueInputBuffer(const sp<MediaCodecBuffer> &buffer) override;
    status_t queueSecureInputBuffer(
            const sp<MediaCodecBuffer> &buffer,
            bool secure,
            const uint8_t *key,
@@ -73,10 +73,10 @@ public:
            const CryptoPlugin::SubSample *subSamples,
            size_t numSubSamples,
            AString *errorDetailMsg) override;
    virtual status_t attachBuffer(
    status_t attachBuffer(
            const std::shared_ptr<C2Buffer> &c2Buffer,
            const sp<MediaCodecBuffer> &buffer) override;
    virtual status_t attachEncryptedBuffer(
    status_t attachEncryptedBuffer(
            const sp<hardware::HidlMemory> &memory,
            bool secure,
            const uint8_t *key,
@@ -88,12 +88,12 @@ public:
            size_t numSubSamples,
            const sp<MediaCodecBuffer> &buffer,
            AString* errorDetailMsg) override;
    virtual status_t renderOutputBuffer(
    status_t renderOutputBuffer(
            const sp<MediaCodecBuffer> &buffer, int64_t timestampNs) override;
    virtual void pollForRenderedBuffers() override;
    virtual status_t discardBuffer(const sp<MediaCodecBuffer> &buffer) override;
    virtual void getInputBufferArray(Vector<sp<MediaCodecBuffer>> *array) override;
    virtual void getOutputBufferArray(Vector<sp<MediaCodecBuffer>> *array) override;
    void pollForRenderedBuffers() override;
    status_t discardBuffer(const sp<MediaCodecBuffer> &buffer) override;
    void getInputBufferArray(Vector<sp<MediaCodecBuffer>> *array) override;
    void getOutputBufferArray(Vector<sp<MediaCodecBuffer>> *array) override;

    // Methods below are interface for CCodec to use.

+2 −2
Original line number Diff line number Diff line
@@ -270,9 +270,9 @@ cc_library {
        "SurfaceUtils.cpp",
        "ThrottledSource.cpp",
        "Utils.cpp",
        "VideoRenderQualityTracker.cpp",
        "VideoFrameSchedulerBase.cpp",
        "VideoFrameScheduler.cpp",
        "VideoRenderQualityTracker.cpp",
      ],

    shared_libs: [
+2 −2
Original line number Diff line number Diff line
@@ -245,7 +245,7 @@ static const char *kCodecJudderScoreHistogramBuckets =
        "android.media.mediacodec.judder-score-histogram-buckets";
// Freeze event
static const char *kCodecFreezeEventCount = "android.media.mediacodec.freeze-event-count";
static const char *kFreezeEventKeyName = "freeze";
static const char *kFreezeEventKeyName = "videofreeze";
static const char *kFreezeEventInitialTimeUs = "android.media.mediacodec.freeze.initial-time-us";
static const char *kFreezeEventDurationMs = "android.media.mediacodec.freeze.duration-ms";
static const char *kFreezeEventCount = "android.media.mediacodec.freeze.count";
@@ -257,7 +257,7 @@ static const char *kFreezeEventDetailsDistanceMs =
        "android.media.mediacodec.freeze.details-distance-ms";
// Judder event
static const char *kCodecJudderEventCount = "android.media.mediacodec.judder-event-count";
static const char *kJudderEventKeyName = "judder";
static const char *kJudderEventKeyName = "videojudder";
static const char *kJudderEventInitialTimeUs = "android.media.mediacodec.judder.initial-time-us";
static const char *kJudderEventDurationMs = "android.media.mediacodec.judder.duration-ms";
static const char *kJudderEventCount = "android.media.mediacodec.judder.count";
+9 −9
Original line number Diff line number Diff line
@@ -72,8 +72,8 @@ public:
    void setCrypto(const sp<ICrypto> &crypto) override;
    void setDescrambler(const sp<IDescrambler> &descrambler) override;

    virtual status_t queueInputBuffer(const sp<MediaCodecBuffer> &buffer) override;
    virtual status_t queueSecureInputBuffer(
    status_t queueInputBuffer(const sp<MediaCodecBuffer> &buffer) override;
    status_t queueSecureInputBuffer(
            const sp<MediaCodecBuffer> &buffer,
            bool secure,
            const uint8_t *key,
@@ -83,10 +83,10 @@ public:
            const CryptoPlugin::SubSample *subSamples,
            size_t numSubSamples,
            AString *errorDetailMsg) override;
    virtual status_t attachBuffer(
    status_t attachBuffer(
            const std::shared_ptr<C2Buffer> &c2Buffer,
            const sp<MediaCodecBuffer> &buffer) override;
    virtual status_t attachEncryptedBuffer(
    status_t attachEncryptedBuffer(
            const sp<hardware::HidlMemory> &memory,
            bool secure,
            const uint8_t *key,
@@ -98,12 +98,12 @@ public:
            size_t numSubSamples,
            const sp<MediaCodecBuffer> &buffer,
            AString* errorDetailMsg) override;
    virtual status_t renderOutputBuffer(
    status_t renderOutputBuffer(
            const sp<MediaCodecBuffer> &buffer, int64_t timestampNs) override;
    virtual void pollForRenderedBuffers() override;
    virtual status_t discardBuffer(const sp<MediaCodecBuffer> &buffer) override;
    virtual void getInputBufferArray(Vector<sp<MediaCodecBuffer>> *array) override;
    virtual void getOutputBufferArray(Vector<sp<MediaCodecBuffer>> *array) override;
    void pollForRenderedBuffers() override;
    status_t discardBuffer(const sp<MediaCodecBuffer> &buffer) override;
    void getInputBufferArray(Vector<sp<MediaCodecBuffer>> *array) override;
    void getOutputBufferArray(Vector<sp<MediaCodecBuffer>> *array) override;

    // Methods below are interface for ACodec to use.

+21 −23
Original line number Diff line number Diff line
@@ -29,11 +29,11 @@ class MediaHistogram {
public:
    MediaHistogram();
    void clear();
    bool setup(int bucketCount, T width, T floor = 0);
    bool setup(size_t bucketCount, T width, T floor = 0);
    bool setup(const std::vector<T> &bucketLimits);
    void insert(T sample);
    size_t size();
    int64_t operator[](int);
    size_t size() const;
    int64_t operator[](int) const;
    T getMin() const { return mMin; }
    T getMax() const { return mMax; }
    T getCount() const { return mCount; }
@@ -45,7 +45,7 @@ public:
private:
    MediaHistogram(const MediaHistogram &); // disallow

    bool allocate(int bucketCount, bool withBucketLimits);
    void allocate(size_t bucketCount, bool withBucketLimits);

    T mFloor, mCeiling, mWidth;
    T mMin, mMax, mSum;
@@ -73,13 +73,12 @@ void MediaHistogram<T>::clear() {
}

template<typename T>
bool MediaHistogram<T>::setup(int bucketCount, T width, T floor) {
bool MediaHistogram<T>::setup(size_t bucketCount, T width, T floor) {
    if (bucketCount <= 0 || width <= 0) {
        return false;
    }
    if (!allocate(bucketCount, false)) {
        return false;
    }
    allocate(bucketCount, false);

    mWidth = width;
    mFloor = floor;
    mCeiling = floor + bucketCount * width;
@@ -92,14 +91,14 @@ bool MediaHistogram<T>::setup(const std::vector<T> &bucketLimits) {
    if (bucketLimits.size() <= 1) {
        return false;
    }
    int bucketCount = bucketLimits.size() - 1;
    if (!allocate(bucketCount, true)) {
        return false;
    }
    // The floor is the first bucket limit value, so offset by 1
    size_t bucketCount = bucketLimits.size() - 1;
    allocate(bucketCount, true);

    mWidth = -1;
    mFloor = bucketLimits[0];
    for (int i = 0; i < bucketCount; ++i) {
    for (size_t i = 0; i < bucketCount; ++i) {
        // The floor is the first bucket, so offset by 1
        mBucketLimits[i] = bucketLimits[i + 1];
    }
    mCeiling = bucketLimits[bucketCount];
@@ -108,7 +107,7 @@ bool MediaHistogram<T>::setup(const std::vector<T> &bucketLimits) {
}

template<typename T>
bool MediaHistogram<T>::allocate(int bucketCount, bool withBucketLimits) {
void MediaHistogram<T>::allocate(size_t bucketCount, bool withBucketLimits) {
    assert(bucketCount > 0);
    if (bucketCount != mBuckets.size()) {
        mBuckets = std::vector<T>(bucketCount, 0);
@@ -116,7 +115,6 @@ bool MediaHistogram<T>::allocate(int bucketCount, bool withBucketLimits) {
    if (withBucketLimits && mBucketLimits.size() != bucketCount) {
        mBucketLimits = std::vector<T>(bucketCount, 0);
    }
    return true;
}

template<typename T>
@@ -128,8 +126,8 @@ void MediaHistogram<T>::insert(T sample) {

    mCount++;
    mSum += sample;
    if (mMin > sample) mMin = sample;
    if (mMax < sample) mMax = sample;
    mMin = std::min(mMin, sample);
    mMax = std::max(mMax, sample);

    if (sample < mFloor) {
        mBelow++;
@@ -138,7 +136,7 @@ void MediaHistogram<T>::insert(T sample) {
    } else if (mWidth == -1) {
        // A binary search might be more efficient for large number of buckets, but it is expected
        // that there will never be a large amount of buckets, so keep the code simple.
        for (int slot = 0; slot < mBucketLimits.size(); ++slot) {
        for (size_t slot = 0; slot < mBucketLimits.size(); ++slot) {
            if (sample < mBucketLimits[slot]) {
                mBuckets[slot]++;
                break;
@@ -153,12 +151,12 @@ void MediaHistogram<T>::insert(T sample) {
}

template<typename T>
size_t MediaHistogram<T>::size() {
size_t MediaHistogram<T>::size() const {
    return mBuckets.size() + 1;
}

template<typename T>
int64_t MediaHistogram<T>::operator[](int i) {
int64_t MediaHistogram<T>::operator[](int i) const {
    assert(i >= 0);
    assert(i <= mBuckets.size());
    if (i == mBuckets.size()) {
@@ -179,7 +177,7 @@ std::string MediaHistogram<T>::emit() const {
    } else {
        ss << mFloor << "," << mWidth << "," << mBelow << "{";
    }
    for (int i = 0; i < mBuckets.size(); i++) {
    for (size_t i = 0; i < mBuckets.size(); i++) {
        if (i != 0) {
            ss << ",";
        }
@@ -194,12 +192,12 @@ std::string MediaHistogram<T>::emitBuckets() const {
    std::stringstream ss("");
    if (mWidth == -1) {
        ss << mFloor;
        for (int i = 0; i < mBucketLimits.size(); ++i) {
        for (size_t i = 0; i < mBucketLimits.size(); ++i) {
            ss << ',' << mBucketLimits[i];
        }
    } else {
        ss << mFloor;
        for (int i = 1; i <= mBuckets.size(); ++i) {
        for (size_t i = 1; i <= mBuckets.size(); ++i) {
            ss << ',' << (mFloor + i * mWidth);
        }
    }
Loading