avformat/mxfenc: fix muxing when audio tracks are longer than video track

pull/293/merge
Baptiste Coudurier 7 years ago
parent b8351ea0c3
commit 955a989341
  1. 6
      libavformat/mxfenc.c

@ -2914,6 +2914,9 @@ static int mxf_interleave_get_packet(AVFormatContext *s, AVPacket *out, AVPacket
while (pktl) {
if (!stream_count || pktl->pkt.stream_index == 0)
break;
// update last packet in packet buffer
if (s->streams[pktl->pkt.stream_index]->last_in_packet_buffer != pktl)
s->streams[pktl->pkt.stream_index]->last_in_packet_buffer = pktl;
last = pktl;
pktl = pktl->next;
stream_count--;
@ -2921,9 +2924,6 @@ static int mxf_interleave_get_packet(AVFormatContext *s, AVPacket *out, AVPacket
// purge packet queue
while (pktl) {
AVPacketList *next = pktl->next;
if(s->streams[pktl->pkt.stream_index]->last_in_packet_buffer == pktl)
s->streams[pktl->pkt.stream_index]->last_in_packet_buffer= NULL;
av_packet_unref(&pktl->pkt);
av_freep(&pktl);
pktl = next;

Loading…
Cancel
Save