summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com>2024-02-21 17:49:57 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2024-02-21 17:49:57 +0000
commitbfc2e73d49b408e1754a45c70d7583e055e132f5 (patch)
tree080af988489d1f1c48e5b9118fd0c9652a83e9eb
parent79332d784226d5b5e0393897397b2d908c2a6272 (diff)
parenta8414b8684ebf123894205043494e8d5ad82f1ff (diff)
downloadav-bfc2e73d49b408e1754a45c70d7583e055e132f5.tar.gz
Merge "Fix Issue in MPEG4 Append" into main
-rw-r--r--media/libstagefright/MPEG4Writer.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/media/libstagefright/MPEG4Writer.cpp b/media/libstagefright/MPEG4Writer.cpp
index d50c06b8ff..a18dbfeaf1 100644
--- a/media/libstagefright/MPEG4Writer.cpp
+++ b/media/libstagefright/MPEG4Writer.cpp
@@ -1640,6 +1640,11 @@ off64_t MPEG4Writer::addSample_l(
ALOGV("buffer->range_length:%lld", (long long)buffer->range_length());
if (buffer->meta_data().findInt64(kKeySampleFileOffset, &offset)) {
ALOGV("offset:%lld, old_offset:%lld", (long long)offset, (long long)old_offset);
+ if (mMaxOffsetAppend > offset) {
+ // This has already been appended, skip updating mOffset value.
+ *bytesWritten = buffer->range_length();
+ return offset;
+ }
if (old_offset == offset) {
mOffset += buffer->range_length();
} else {