meta: make sequence number 64 bits

Add offset in current cycle
This commit is contained in:
Wim Taymans 2019-10-29 16:44:57 +01:00
parent 9b2d34c04b
commit a18c8df7d0
3 changed files with 7 additions and 4 deletions

View file

@ -78,10 +78,11 @@ struct spa_meta_header {
#define SPA_META_HEADER_FLAG_GAP (1 << 4) /**< data contains media neutral data */
#define SPA_META_HEADER_FLAG_DELTA_UNIT (1 << 5) /**< cannot be decoded independently */
uint32_t flags; /**< flags */
uint32_t seq; /**< sequence number, increments with a
uint32_t offset; /**< offset in current cycle */
uint64_t seq; /**< sequence number, increments with a
* media specific frequency */
int64_t pts; /**< presentation timestamp */
int64_t dts_offset; /**< decoding timestamp and a difference with pts */
int64_t dts_offset; /**< decoding timestamp as a difference with pts */
};
/** metadata structure for Region or an array of these for RegionArray */

View file

@ -57,7 +57,8 @@ static inline int spa_debug_buffer(int indent, const struct spa_buffer *buffer)
struct spa_meta_header *h = (struct spa_meta_header*)m->data;
spa_debug("%*s" " struct spa_meta_header:", indent, "");
spa_debug("%*s" " flags: %08x", indent, "", h->flags);
spa_debug("%*s" " seq: %u", indent, "", h->seq);
spa_debug("%*s" " offset: %u", indent, "", h->offset);
spa_debug("%*s" " seq: %" PRIu64, indent, "", h->seq);
spa_debug("%*s" " pts: %" PRIi64, indent, "", h->pts);
spa_debug("%*s" " dts_offset: %" PRIi64, indent, "", h->dts_offset);
break;

View file

@ -51,7 +51,8 @@ static void test_abi(void)
spa_assert(SPA_META_LAST == 7);
spa_assert(sizeof(struct spa_meta) == 16);
spa_assert(sizeof(struct spa_meta_header) == 24);
fprintf(stderr, "%zd", sizeof(struct spa_meta_header));
spa_assert(sizeof(struct spa_meta_header) == 32);
spa_assert(sizeof(struct spa_meta_region) == 16);
spa_assert(sizeof(struct spa_meta_bitmap) == 20);
spa_assert(sizeof(struct spa_meta_cursor) == 28);