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

Commit acd234bb authored by James Dong's avatar James Dong
Browse files

Be conservative in estimating the file size limit.

bug - 3045580

Change-Id: Ifdffa354b9433639c3f246a0eb581ef14af1e797
parent 03b55cc9
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -361,6 +361,9 @@ status_t StagefrightRecorder::setParamMaxFileDurationUs(int64_t timeUs) {
        return BAD_VALUE;
    }

    if (timeUs <= 15 * 1000000LL) {
        LOGW("Target duration (%lld us) too short to be respected", timeUs);
    }
    mMaxFileDurationUs = timeUs;
    return OK;
}
@@ -371,6 +374,11 @@ status_t StagefrightRecorder::setParamMaxFileSizeBytes(int64_t bytes) {
        LOGE("Max file size is too small: %lld bytes", bytes);
        return BAD_VALUE;
    }

    if (bytes <= 100 * 1024) {
        LOGW("Target file size (%lld bytes) is too small to be respected", bytes);
    }

    mMaxFileSizeBytes = bytes;
    return OK;
}
+4 −1
Original line number Diff line number Diff line
@@ -863,7 +863,10 @@ bool MPEG4Writer::exceedsFileSizeLimit() {
        nTotalBytesEstimate += (*it)->getEstimatedTrackSizeBytes();
    }

    return (nTotalBytesEstimate >= mMaxFileSizeLimitBytes);
    // Be conservative in the estimate: do not exceed 95% of
    // the target file limit. For small target file size limit, though,
    // this will not help.
    return (nTotalBytesEstimate >= (95 * mMaxFileSizeLimitBytes) / 100);
}

bool MPEG4Writer::exceedsFileDurationLimit() {