avcodec/dpx: parse image creator
authorPaul B Mahol <onemda@gmail.com>
Thu, 6 Dec 2018 19:19:48 +0000 (20:19 +0100)
committerPaul B Mahol <onemda@gmail.com>
Fri, 7 Dec 2018 18:44:57 +0000 (19:44 +0100)
libavcodec/dpx.c

index 0297287..bc1115b 100644 (file)
@@ -19,6 +19,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#include "libavutil/avstring.h"
 #include "libavutil/intreadwrite.h"
 #include "libavutil/intfloat.h"
 #include "libavutil/imgutils.h"
@@ -107,6 +108,7 @@ static int decode_frame(AVCodecContext *avctx,
     AVFrame *const p = data;
     uint8_t *ptr[AV_NUM_DATA_POINTERS];
     uint32_t header_version, version = 0;
+    char creator[101];
 
     unsigned int offset;
     int magic_num, endian;
@@ -360,6 +362,10 @@ static int decode_frame(AVCodecContext *avctx,
     if ((ret = ff_get_buffer(avctx, p, 0)) < 0)
         return ret;
 
+    av_strlcpy(creator, avpkt->data + 160, 100);
+    creator[100] = '\0';
+    av_dict_set(&p->metadata, "Creator", creator, 0);
+
     // Move pointer to offset from start of file
     buf =  avpkt->data + offset;