]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/mpegaudioenc_template.c
avcodec: Move all AVCodecParser.split functions to remove_extradata_bsf
[ffmpeg] / libavcodec / mpegaudioenc_template.c
index 12f7a098e6abebb1c85797e74f9d71859dd928d9..8e6e20c35867989752f820bd5ee8459fd55e1abf 100644 (file)
@@ -736,9 +736,6 @@ static void encode_frame(MpegAudioContext *s,
     /* padding */
     for(i=0;i<padding;i++)
         put_bits(p, 1, 0);
-
-    /* flush */
-    flush_put_bits(p);
 }
 
 static int MPA_encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
@@ -770,10 +767,13 @@ static int MPA_encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
 
     encode_frame(s, bit_alloc, padding);
 
+    /* flush */
+    flush_put_bits(&s->pb);
+    avpkt->size = put_bytes_output(&s->pb);
+
     if (frame->pts != AV_NOPTS_VALUE)
         avpkt->pts = frame->pts - ff_samples_to_time_base(avctx, avctx->initial_padding);
 
-    avpkt->size = put_bits_count(&s->pb) / 8;
     *got_packet_ptr = 1;
     return 0;
 }