diff --git a/libavformat/nut.c b/libavformat/nut.c index 61c588c05aaa9eddd0059429a3bc10cfcac10734..9a6a41b21f4d8fa1127390b7fe266d87fd7b8a87 100644 --- a/libavformat/nut.c +++ b/libavformat/nut.c @@ -47,11 +47,11 @@ int64_t ff_lsb2full(StreamContext *stream, int64_t lsb){ return ((lsb - delta)&mask) + delta; } -int ff_nut_sp_pos_cmp(Syncpoint *a, Syncpoint *b){ +int ff_nut_sp_pos_cmp(const Syncpoint *a, const Syncpoint *b){ return ((a->pos - b->pos) >> 32) - ((b->pos - a->pos) >> 32); } -int ff_nut_sp_pts_cmp(Syncpoint *a, Syncpoint *b){ +int ff_nut_sp_pts_cmp(const Syncpoint *a, const Syncpoint *b){ return ((a->ts - b->ts) >> 32) - ((b->ts - a->ts) >> 32); } @@ -62,7 +62,7 @@ void ff_nut_add_sp(NUTContext *nut, int64_t pos, int64_t back_ptr, int64_t ts){ sp->pos= pos; sp->back_ptr= back_ptr; sp->ts= ts; - av_tree_insert(&nut->syncpoints, sp, ff_nut_sp_pos_cmp, &node); + av_tree_insert(&nut->syncpoints, sp, (void *) ff_nut_sp_pos_cmp, &node); if(node){ av_free(sp); av_free(node); diff --git a/libavformat/nut.h b/libavformat/nut.h index 8d9695245c8856d3ff8fdbdcd77a6f1720707f53..ce052dfedf94da95c13fef07b7e34fefbb3b3265 100644 --- a/libavformat/nut.h +++ b/libavformat/nut.h @@ -107,8 +107,8 @@ typedef struct { void ff_nut_reset_ts(NUTContext *nut, AVRational time_base, int64_t val); int64_t ff_lsb2full(StreamContext *stream, int64_t lsb); -int ff_nut_sp_pos_cmp(Syncpoint *a, Syncpoint *b); -int ff_nut_sp_pts_cmp(Syncpoint *a, Syncpoint *b); +int ff_nut_sp_pos_cmp(const Syncpoint *a, const Syncpoint *b); +int ff_nut_sp_pts_cmp(const Syncpoint *a, const Syncpoint *b); void ff_nut_add_sp(NUTContext *nut, int64_t pos, int64_t back_ptr, int64_t ts); void ff_nut_free_sp(NUTContext *nut); diff --git a/libavformat/nutdec.c b/libavformat/nutdec.c index 6e0f1fcf9789feff4d4a35ccb4c0303953fcc062..d08683f54ab3466856f0ef088f1f5d62e4042087 100644 --- a/libavformat/nutdec.c +++ b/libavformat/nutdec.c @@ -859,7 +859,8 @@ static int read_seek(AVFormatContext *s, int stream_index, int64_t pts, int flag pos2= st->index_entries[index].pos; ts = st->index_entries[index].timestamp; }else{ - av_tree_find(nut->syncpoints, &dummy, ff_nut_sp_pts_cmp, (void **) next_node); + av_tree_find(nut->syncpoints, &dummy, (void *) ff_nut_sp_pts_cmp, + (void **) next_node); av_log(s, AV_LOG_DEBUG, "%"PRIu64"-%"PRIu64" %"PRId64"-%"PRId64"\n", next_node[0]->pos, next_node[1]->pos, next_node[0]->ts , next_node[1]->ts); pos= av_gen_search(s, -1, dummy.ts, next_node[0]->pos, next_node[1]->pos, next_node[1]->pos, @@ -868,7 +869,8 @@ static int read_seek(AVFormatContext *s, int stream_index, int64_t pts, int flag if(!(flags & AVSEEK_FLAG_BACKWARD)){ dummy.pos= pos+16; next_node[1]= &nopts_sp; - av_tree_find(nut->syncpoints, &dummy, ff_nut_sp_pos_cmp, (void **) next_node); + av_tree_find(nut->syncpoints, &dummy, (void *) ff_nut_sp_pos_cmp, + (void **) next_node); pos2= av_gen_search(s, -2, dummy.pos, next_node[0]->pos , next_node[1]->pos, next_node[1]->pos, next_node[0]->back_ptr, next_node[1]->back_ptr, flags, &ts, nut_read_timestamp); if(pos2>=0) @@ -876,7 +878,8 @@ static int read_seek(AVFormatContext *s, int stream_index, int64_t pts, int flag //FIXME dir but I think it does not matter } dummy.pos= pos; - sp= av_tree_find(nut->syncpoints, &dummy, ff_nut_sp_pos_cmp, NULL); + sp= av_tree_find(nut->syncpoints, &dummy, (void *) ff_nut_sp_pos_cmp, + NULL); assert(sp); pos2= sp->back_ptr - 15; diff --git a/libavformat/nutenc.c b/libavformat/nutenc.c index e06a85f54fb3565cd2a250c7bb3d1ec8ea4f45e4..84ea29024eb1b02b99cd84ae56cdb22578983481 100644 --- a/libavformat/nutenc.c +++ b/libavformat/nutenc.c @@ -677,7 +677,8 @@ static int write_packet(AVFormatContext *s, AVPacket *pkt){ } if(dummy.pos == INT64_MAX) dummy.pos= 0; - sp= av_tree_find(nut->syncpoints, &dummy, ff_nut_sp_pos_cmp, NULL); + sp= av_tree_find(nut->syncpoints, &dummy, (void *) ff_nut_sp_pos_cmp, + NULL); nut->last_syncpoint_pos= url_ftell(bc); ret = url_open_dyn_buf(&dyn_bc);