changeset 1394:951a4448c05a libavcodec

FF_INPUT_BUFFER_PADDING_SIZE
author michaelni
date Fri, 01 Aug 2003 11:01:05 +0000
parents ba99a78bcb37
children b2ac20ff1458
files apiexample.c
diffstat 1 files changed, 8 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/apiexample.c	Fri Aug 01 11:00:03 2003 +0000
+++ b/apiexample.c	Fri Aug 01 11:01:05 2003 +0000
@@ -98,9 +98,12 @@
     int out_size, size, len;
     FILE *f, *outfile;
     uint8_t *outbuf;
-    uint8_t inbuf[INBUF_SIZE], *inbuf_ptr;
+    uint8_t inbuf[INBUF_SIZE + FF_INPUT_BUFFER_PADDING_SIZE], *inbuf_ptr;
 
     printf("Audio decoding\n");
+    
+    /* set end of buffer to 0 (this ensures that no overreading happens for damaged mpeg streams) */
+    memset(inbuf + INBUF_SIZE, 0, FF_INPUT_BUFFER_PADDING_SIZE);
 
     /* find the mpeg audio decoder */
     codec = avcodec_find_decoder(CODEC_ID_MP2);
@@ -297,9 +300,12 @@
     int frame, size, got_picture, len;
     FILE *f;
     AVFrame *picture;
-    uint8_t inbuf[INBUF_SIZE], *inbuf_ptr;
+    uint8_t inbuf[INBUF_SIZE + FF_INPUT_BUFFER_PADDING_SIZE], *inbuf_ptr;
     char buf[1024];
 
+    /* set end of buffer to 0 (this ensures that no overreading happens for damaged mpeg streams) */
+    memset(inbuf + INBUF_SIZE, 0, FF_INPUT_BUFFER_PADDING_SIZE);
+
     printf("Video decoding\n");
 
     /* find the mpeg1 video decoder */