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

Commit 125632af authored by Steve Kondik's avatar Steve Kondik
Browse files

Revert changes for temporal layer encoding

 * Taking upstream impl.

Revert "stagefright: ACodec: Handle temporal layered encoding error"

This reverts commit d049e945.

Revert "NuPlayer: drop temporal-layers to achieve smooth fast-play"

This reverts commit eb24cbb1.

Revert "stagefright: Enhance MPEG4 writer/extractor to store/retrieve layer info"

This reverts commit b2264390.

Change-Id: I149438ea5a2afd1926f8420431f1c2dc4dac757f

Revert "MPEG4Writer: Handle writing multiple NAL units in a video sample"

This reverts commit ab72e657.

Revert "stagefright: ACodec: Enable temporal layered encoding"

This reverts commit 16985089.

Revert "stagefright: Enable layered encoding for HFR"

This reverts commit f65ac945.

Revert "Stagefright: Do not skip frames in time-lapse-source for high-speed"

This reverts commit bfc04e17.
parent e5d74318
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -489,9 +489,6 @@ protected:
    status_t setOperatingRate(float rateFloat, bool isVideo);
    status_t getIntraRefreshPeriod(uint32_t *intraRefreshPeriod);
    status_t setIntraRefreshPeriod(uint32_t intraRefreshPeriod, bool inConfigure);
    status_t configureTemporalLayers(
            uint32_t numLayers, uint32_t numBLayers, bool inConfigure,
            sp<AMessage> &outputFormat);

    status_t setMinBufferSize(OMX_U32 portIndex, size_t size);

+0 −2
Original line number Diff line number Diff line
@@ -65,7 +65,6 @@ public:

    status_t setGeoData(int latitudex10000, int longitudex10000);
    status_t setCaptureRate(float captureFps);
    status_t setTemporalLayerCount(uint32_t layerCount);
    virtual void setStartTimeOffsetMs(int ms) { mStartTimeOffsetMs = ms; }
    virtual int32_t getStartTimeOffsetMs() const { return mStartTimeOffsetMs; }

@@ -197,7 +196,6 @@ private:
protected:
    static void StripStartcode(MediaBuffer *buffer);
    virtual off64_t addLengthPrefixedSample_l(MediaBuffer *buffer);
    off64_t addMultipleLengthPrefixedSamples_l(MediaBuffer *buffer);

private:
    bool exceedsFileSizeLimit();
+0 −2
Original line number Diff line number Diff line
@@ -231,8 +231,6 @@ enum {
    // release it immediately
    kKeyCanDeferRelease   = 'drel', // bool (int32_t)

    kKeyTemporalLayerId  = 'iLyr', // int32_t, temporal layer-id. 0-based (0 => base layer)
    kKeyTemporalLayerCount = 'cLyr', // int32_t, number of temporal layers encoded
};

enum {
+2 −15
Original line number Diff line number Diff line
@@ -53,7 +53,6 @@
#include <sys/types.h>
#include <ctype.h>
#include <unistd.h>
#include <math.h>

#include <system/audio.h>

@@ -1606,16 +1605,6 @@ status_t StagefrightRecorder::setupVideoEncoder(
    format->setInt32("priority", 0 /* realtime */);
    if (mCaptureFpsEnable) {
        format->setFloat("operating-rate", mCaptureFps);

        // Enable layers if capture-rate > 60
        // Number of layers will be based on the ratio wrt 30fps
        float speed = mCaptureFps / mFrameRate;
        if (mCaptureFps > 60.0 && speed > 2.0) {
            int32_t numLayers = (int32_t)log2f(speed) + 1;
            ALOGI("Enabling %d layers for capture-rate(%f) / fps(%u)",
                    numLayers, mCaptureFps, mFrameRate);
            format->setInt32("num-temporal-layers", numLayers);
        }
    }

    if (mMetaDataStoredInVideoBuffers != kMetadataBufferTypeInvalid) {
@@ -1694,7 +1683,7 @@ status_t StagefrightRecorder::setupMPEG4orWEBMRecording() {
    if (mOutputFormat == OUTPUT_FORMAT_WEBM) {
        writer = new WebmWriter(mOutputFd);
    } else {
        writer = mp4writer = new MPEG4Writer(mOutputFd);
        writer = mp4writer = AVFactory::get()->CreateMPEG4Writer(mOutputFd);
    }

    if (mVideoSource < VIDEO_SOURCE_LIST_END) {
@@ -1817,9 +1806,7 @@ status_t StagefrightRecorder::resume() {
    }

    // 30 ms buffer to avoid timestamp overlap
    mTotalPausedDurationUs +=
        (systemTime() / 1000) - mPauseStartTimeUs -
        (30000 * (mCaptureFpsEnable ? (mCaptureFps / mFrameRate):1));
    mTotalPausedDurationUs += (systemTime() / 1000) - mPauseStartTimeUs - 30000;
    double timeOffset = -mTotalPausedDurationUs;
    if (mCaptureFpsEnable) {
        timeOffset *= mCaptureFps / mFrameRate;
+0 −7
Original line number Diff line number Diff line
@@ -1304,13 +1304,6 @@ sp<ABuffer> NuPlayer::GenericSource::mediaBufferToABuffer(
    }
#endif

    if (trackType == MEDIA_TRACK_TYPE_VIDEO) {
        int32_t layerId;
        if (mb->meta_data()->findInt32(kKeyTemporalLayerId, &layerId)) {
            meta->setInt32("temporal-layer-id", layerId);
        }
    }

    if (trackType == MEDIA_TRACK_TYPE_TIMEDTEXT) {
        const char *mime;
        CHECK(mTimedTextTrack.mSource != NULL
Loading