[FFmpeg-cvslog] mxfdec: fix off by one error in d10 aes3 decoding

Marton Balint git at videolan.org
Fri Jul 27 13:47:10 CEST 2012


ffmpeg | branch: master | Marton Balint <cus at passwd.hu> | Thu Jul 19 01:23:20 2012 +0200| [3be02afb56f2a485fcdc747b6c2f77ed03adc6e5] | committer: Michael Niedermayer

mxfdec: fix off by one error in d10 aes3 decoding

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

Signed-off-by: Marton Balint <cus at passwd.hu>
Reviewed-by: Matthieu Bouron <matthieu.bouron at gmail.com>
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

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

diff --git a/libavformat/mxfdec.c b/libavformat/mxfdec.c
index 00774ee..d4f711a 100644
--- a/libavformat/mxfdec.c
+++ b/libavformat/mxfdec.c
@@ -322,7 +322,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 (; buf_ptr + st->codec->channels*4 <= end_ptr; ) {
         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