Module: libav Branch: master Commit: 29d27b54251fe250f6fe512b7759a1405362ae67
Author: Janne Grunau <janne-li...@jannau.net> Committer: Janne Grunau <janne-li...@jannau.net> Date: Tue Mar 13 18:12:06 2012 +0100 mpegmux: add stuffing to avoid incomplete PCM frames Fixes https://bugzilla.libav.org/show_bug.cgi?id=244 --- libavformat/mpegenc.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/libavformat/mpegenc.c b/libavformat/mpegenc.c index bda8d83..7bcf289 100644 --- a/libavformat/mpegenc.c +++ b/libavformat/mpegenc.c @@ -832,6 +832,12 @@ static int flush_packet(AVFormatContext *ctx, int stream_index, if (stuffing_size < 0) stuffing_size = 0; + + if (startcode == PRIVATE_STREAM_1 && id >= 0xa0) { + if (payload_size < av_fifo_size(stream->fifo)) + stuffing_size += payload_size % stream->lpcm_align; + } + if (stuffing_size > 16) { /*<=16 for MPEG-1, <=32 for MPEG-2*/ pad_packet_bytes += stuffing_size; packet_size -= stuffing_size; _______________________________________________ libav-commits mailing list libav-commits@libav.org https://lists.libav.org/mailman/listinfo/libav-commits