ref: 9e08ac7112b6a4fef6e1dde6152ceef1117aa6f4
parent: 8ec9793a9a0abc31f84f3e118deb58b00af1a158
author: Jean-Yves Avenard <jyavenard@mozilla.com>
date: Thu Nov 29 13:16:37 EST 2018
Make Dav1dDataProps::timestamp and offset signed.
--- a/include/dav1d/common.h
+++ b/include/dav1d/common.h
@@ -52,9 +52,9 @@
* used internally.
*/
typedef struct Dav1dDataProps {
- uint64_t timestamp; ///< container timestamp of input data, default -1
+ int64_t timestamp; ///< container timestamp of input data, default INT64_MIN
uint64_t duration; ///< container duration of input data, default -1
- uint64_t offset; ///< stream offset of input data, default -1
+ int64_t offset; ///< stream offset of input data, default INT64_MIN
size_t size; ///< packet size, default Dav1dData.sz
} Dav1dDataProps;
--- a/src/data.c
+++ b/src/data.c
@@ -28,6 +28,7 @@
#include "config.h"
#include <errno.h>
+#include <stdint.h>
#include <stdlib.h>
#include <string.h>
@@ -45,7 +46,8 @@
if (!buf->ref) return NULL;
buf->data = buf->ref->const_data;
buf->sz = buf->m.size = sz;
- buf->m.timestamp = buf->m.duration = buf->m.offset = ~0ULL;
+ buf->m.timestamp = buf->m.offset = INT64_MIN;
+ buf->m.duration = ~0ULL;
return buf->ref->data;
}
@@ -62,7 +64,8 @@
if (!buf->ref) return -ENOMEM;
buf->data = ptr;
buf->sz = buf->m.size = sz;
- buf->m.timestamp = buf->m.duration = buf->m.offset = ~0ULL;
+ buf->m.timestamp = buf->m.offset = INT64_MIN;
+ buf->m.duration = ~0ULL;
return 0;
}
--- a/src/picture.c
+++ b/src/picture.c
@@ -29,6 +29,7 @@
#include <assert.h>
#include <errno.h>
+#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@@ -116,7 +117,8 @@
p->p.w = w;
p->p.h = h;
- p->m.timestamp = p->m.duration = p->m.offset = ~0ULL;
+ p->m.timestamp = p->m.offset = INT64_MIN;
+ p->m.duration = ~0ULL;
p->p.layout = layout;
p->p.bpc = bpc;
int res = p_allocator->alloc_picture_callback(p, p_allocator->cookie);
--- a/tools/input/ivf.c
+++ b/tools/input/ivf.c
@@ -48,7 +48,7 @@
return ((uint32_t)p[3] << 24U) | (p[2] << 16U) | (p[1] << 8U) | p[0];
}
-static uint64_t rl64(const uint8_t *const p) {
+static int64_t rl64(const uint8_t *const p) {
return (((uint64_t) rl32(&p[4])) << 32) | rl32(p);
}