From 4843a9c74f77f5eb8d2b1ee648fe2ac6e2a48ec3 Mon Sep 17 00:00:00 2001
From: Zoltan Kovacs <giszo.k@gmail.com>
Date: Fri, 5 Dec 2014 02:42:10 +0000
Subject: [PATCH] dpx: always write the image offset

According to the DPX file format description found at
http://www.fileformat.info/format/dpx/egff.htm the ImageElement part of
the GenericImageHeader also contains an an offset to the real image data
beside the same member that can be found in the GenericFileHeader.

Libav keeps this member empty (=0) while some applications expects it to
be filled properly. FATE test updated accordingly.

Bug-Id: 742
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
---
 libavcodec/dpxenc.c | 1 +
 tests/ref/lavf/dpx  | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavcodec/dpxenc.c b/libavcodec/dpxenc.c
index 4de71cff100..2b1ead391b7 100644
--- a/libavcodec/dpxenc.c
+++ b/libavcodec/dpxenc.c
@@ -144,6 +144,7 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt,
     buf[802] = 2; /* linear colorimetric */
     buf[803] = s->bits_per_component;
     write16(buf + 804, s->bits_per_component == 10 ? 1 : 0); /* packing method */
+    write32(buf + 808, HEADER_SIZE); /* data offset */
 
     /* Image source information header */
     write32(buf + 1628, avctx->sample_aspect_ratio.num);
diff --git a/tests/ref/lavf/dpx b/tests/ref/lavf/dpx
index a9f1169317a..42c0a335fbb 100644
--- a/tests/ref/lavf/dpx
+++ b/tests/ref/lavf/dpx
@@ -1,3 +1,3 @@
-808ea110635774252439722a48329d61 *./tests/data/images/dpx/02.dpx
+d2f0b4e854fda2d3b3bee84cef80593c *./tests/data/images/dpx/02.dpx
 ./tests/data/images/dpx/%02d.dpx CRC=0x28c7369b
 305792 ./tests/data/images/dpx/02.dpx
-- 
GitLab