[FFmpeg-cvslog] mxf: Fix off by one error in d10 aes3 decoding

Marton Balint git at videolan.org
Tue Jan 14 21:59:53 CET 2014


ffmpeg | branch: master | Marton Balint <cus at passwd.hu> | Thu Jul 19 01:23:20 2012 +0200| [aa0cb16c15a5b30f78542f18e3fa65de005cf084] | committer: Luca Barbato

mxf: Fix off by one error in d10 aes3 decoding

Without this fix the last sample was missing from the packet.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=aa0cb16c15a5b30f78542f18e3fa65de005cf084
---

 libavformat/mxfdec.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index 37e1cfa..3299e16 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -312,7 +312,7 @@ static int mxf_get_d10_aes3_packet(AVIOContext *pb, AVStream *st, AVPacket *pkt,
     data_ptr = pkt->data;
     end_ptr = pkt->data + length;
     buf_ptr = pkt->data + 4; /* skip SMPTE 331M header */
-    for (; buf_ptr + st->codec->channels*4 < end_ptr; ) {
+    for (; end_ptr - buf_ptr >= st->codec->channels * 4; ) {
         for (i = 0; i < st->codec->channels; i++) {
             uint32_t sample = bytestream_get_le32(&buf_ptr);
             if (st->codec->bits_per_coded_sample == 24)



More information about the ffmpeg-cvslog mailing list