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

Commit 62748c6d authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "MPEG4Writer:Correct track duration BFrames muxing"

parents 0554cd8a 85916d83
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -3595,7 +3595,7 @@ void MPEG4Writer::Track::bufferChunk(int64_t timestampUs) {
}

int64_t MPEG4Writer::Track::getDurationUs() const {
    return mTrackDurationUs + getStartTimeOffsetTimeUs();
    return mTrackDurationUs + getStartTimeOffsetTimeUs() + mOwner->getStartTimeOffsetBFramesUs();
}

int64_t MPEG4Writer::Track::getEstimatedTrackSizeBytes() const {
@@ -4059,7 +4059,7 @@ void MPEG4Writer::Track::writeEdtsBox(){
    // Prepone video playback.
    if (mMinCttsOffsetTicks != mMaxCttsOffsetTicks) {
        int32_t mvhdTimeScale = mOwner->getTimeScale();
        uint32_t tkhdDuration = (mTrackDurationUs * mvhdTimeScale + 5E5) / 1E6;
        uint32_t tkhdDuration = (getDurationUs() * mvhdTimeScale + 5E5) / 1E6;
        int64_t mediaTime = ((kMaxCttsOffsetTimeUs - getMinCttsOffsetTimeUs())
            * mTimeScale + 5E5) / 1E6;
        if (tkhdDuration > 0 && mediaTime > 0) {