Signed-off-by: James Almer <jamr...@gmail.com> --- libavformat/internal.h | 3 ++- libavformat/mux.c | 11 ++++++----- libavformat/mxfenc.c | 6 +++--- 3 files changed, 11 insertions(+), 9 deletions(-)
diff --git a/libavformat/internal.h b/libavformat/internal.h index 49e82bfbca..c29c7deec7 100644 --- a/libavformat/internal.h +++ b/libavformat/internal.h @@ -26,6 +26,7 @@ #include "libavutil/bprint.h" #include "avformat.h" #include "os_support.h" +#include "libavcodec/packet_internal.h" #define MAX_URL_SIZE 4096 @@ -342,7 +343,7 @@ struct AVStreamInternal { /** * last packet in packet_buffer for this stream when muxing. */ - struct AVPacketList *last_in_packet_buffer; + struct PacketListEntry *last_in_packet_buffer; }; #ifdef __GNUC__ diff --git a/libavformat/mux.c b/libavformat/mux.c index d2a56d216b..d60bf2218b 100644 --- a/libavformat/mux.c +++ b/libavformat/mux.c @@ -832,7 +832,7 @@ int ff_interleave_add_packet(AVFormatContext *s, AVPacket *pkt, pkt = &this_pktl->pkt; if (st->internal->last_in_packet_buffer) { - next_point = &(st->internal->last_in_packet_buffer->next); + next_point = (AVPacketList **)&(st->internal->last_in_packet_buffer->next); } else { next_point = &s->internal->packet_buffer; } @@ -876,7 +876,8 @@ next_non_null: this_pktl->next = *next_point; - st->internal->last_in_packet_buffer = *next_point = this_pktl; + *next_point = this_pktl; + st->internal->last_in_packet_buffer = (PacketListEntry *)this_pktl; return 0; } @@ -951,7 +952,7 @@ int ff_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out, for (i = 0; i < s->nb_streams; i++) { int64_t last_dts; - const AVPacketList *last = s->streams[i]->internal->last_in_packet_buffer; + const PacketListEntry *last = s->streams[i]->internal->last_in_packet_buffer; if (!last) continue; @@ -1000,7 +1001,7 @@ int ff_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out, if (!s->internal->packet_buffer) s->internal->packet_buffer_end = NULL; - if (st->internal->last_in_packet_buffer == pktl) + if (st->internal->last_in_packet_buffer == (PacketListEntry *)pktl) st->internal->last_in_packet_buffer = NULL; av_packet_unref(&pktl->pkt); @@ -1019,7 +1020,7 @@ int ff_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out, if (!s->internal->packet_buffer) s->internal->packet_buffer_end = NULL; - if (st->internal->last_in_packet_buffer == pktl) + if (st->internal->last_in_packet_buffer == (PacketListEntry *)pktl) st->internal->last_in_packet_buffer = NULL; av_freep(&pktl); diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c index d8678c9d25..c7f98ac257 100644 --- a/libavformat/mxfenc.c +++ b/libavformat/mxfenc.c @@ -3061,8 +3061,8 @@ static int mxf_interleave_get_packet(AVFormatContext *s, AVPacket *out, AVPacket if (!stream_count || pktl->pkt.stream_index == 0) break; // update last packet in packet buffer - if (s->streams[pktl->pkt.stream_index]->internal->last_in_packet_buffer != pktl) - s->streams[pktl->pkt.stream_index]->internal->last_in_packet_buffer = pktl; + if (s->streams[pktl->pkt.stream_index]->internal->last_in_packet_buffer != (PacketListEntry *)pktl) + s->streams[pktl->pkt.stream_index]->internal->last_in_packet_buffer = (PacketListEntry *)pktl; last = pktl; pktl = pktl->next; stream_count--; @@ -3087,7 +3087,7 @@ static int mxf_interleave_get_packet(AVFormatContext *s, AVPacket *out, AVPacket *out = pktl->pkt; av_log(s, AV_LOG_TRACE, "out st:%d dts:%"PRId64"\n", (*out).stream_index, (*out).dts); s->internal->packet_buffer = pktl->next; - if(s->streams[pktl->pkt.stream_index]->internal->last_in_packet_buffer == pktl) + if(s->streams[pktl->pkt.stream_index]->internal->last_in_packet_buffer == (PacketListEntry *)pktl) s->streams[pktl->pkt.stream_index]->internal->last_in_packet_buffer= NULL; if(!s->internal->packet_buffer) s->internal->packet_buffer_end= NULL; -- 2.29.2 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".