X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Frtmppkt.c;h=cde0da78ce144b23a74944e17080b5fca86587ec;hb=9bbdf5d921ef57e1698f64981e4ea04db7c56fb5;hp=0d693c27f7f8f6dd526cf7034e1e805e3f54b577;hpb=68b0d7e0be66bfa8141f8bd3eaa004b8104b8c34;p=ffmpeg diff --git a/libavformat/rtmppkt.c b/libavformat/rtmppkt.c index 0d693c27f7f..cde0da78ce1 100644 --- a/libavformat/rtmppkt.c +++ b/libavformat/rtmppkt.c @@ -235,6 +235,14 @@ static int rtmp_packet_read_one_chunk(URLContext *h, RTMPPacket *p, if (hdr != RTMP_PS_TWELVEBYTES) timestamp += prev_pkt[channel_id].timestamp; + if (prev_pkt[channel_id].read && size != prev_pkt[channel_id].size) { + av_log(NULL, AV_LOG_ERROR, "RTMP packet size mismatch %d != %d\n", + size, + prev_pkt[channel_id].size); + ff_rtmp_packet_destroy(&prev_pkt[channel_id]); + prev_pkt[channel_id].read = 0; + } + if (!prev_pkt[channel_id].read) { if ((ret = ff_rtmp_packet_create(p, channel_id, type, timestamp, size)) < 0)