--- ffmpeg-20080908/libavcodec/libmp3lame.c.orig 2008-08-09 21:37:36.000000000 +0400 +++ ffmpeg-20080908/libavcodec/libmp3lame.c 2009-02-03 11:22:37.000000000 +0300 @@ -34,6 +34,7 @@ int stereo; uint8_t buffer[BUFFER_SIZE]; int buffer_index; + int flushed; } Mp3AudioContext; static av_cold int MP3lame_encode_init(AVCodecContext *avctx) @@ -166,12 +167,18 @@ BUFFER_SIZE - s->buffer_index ); } + s->flushed = 0; }else{ + if (s->flushed) + lame_result = 0; + else { + s->flushed = 1; lame_result= lame_encode_flush( s->gfp, s->buffer + s->buffer_index, BUFFER_SIZE - s->buffer_index ); + } } if(lame_result==-1) {