aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat
diff options
context:
space:
mode:
authorMarton Balint <cus@passwd.hu>2018-02-17 11:47:57 +0100
committerMarton Balint <cus@passwd.hu>2018-03-01 22:03:53 +0100
commite9b0e42e773d4a1c9575c75e95688faca7ce4e06 (patch)
tree3da8e235dd416e0d6cc8a3862b3e359f284cbb3a /libavformat
parentd54a04b69b8d31f3286738cfc68f25a24dfda4af (diff)
downloadffmpeg-e9b0e42e773d4a1c9575c75e95688faca7ce4e06.tar.gz
avformat/mxfdec: fix essence_offset calculation
The reference point for a KAG is the first byte of the key of a Partition Pack. Fixes ticket #2817. Fixes ticket #5317. Signed-off-by: Marton Balint <cus@passwd.hu>
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/mxfdec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index fcae863ef4..95767ccba4 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -2875,8 +2875,8 @@ static int mxf_read_header(AVFormatContext *s)
* for OPAtom we still need the actual essence_offset though (the KL's length can vary)
*/
int64_t op1a_essence_offset =
- round_to_kag(mxf->current_partition->this_partition +
- mxf->current_partition->pack_length, mxf->current_partition->kag_size) +
+ mxf->current_partition->this_partition +
+ round_to_kag(mxf->current_partition->pack_length, mxf->current_partition->kag_size) +
round_to_kag(mxf->current_partition->header_byte_count, mxf->current_partition->kag_size) +
round_to_kag(mxf->current_partition->index_byte_count, mxf->current_partition->kag_size);