---
 libavcodec/mpegaudioenc.c |   10 ++++------
 1 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/libavcodec/mpegaudioenc.c b/libavcodec/mpegaudioenc.c
index ab9e0fa..3ae90af 100644
--- a/libavcodec/mpegaudioenc.c
+++ b/libavcodec/mpegaudioenc.c
@@ -315,7 +315,7 @@ static void idct32(int *out, int *tab)
 
 #define WSHIFT (WFRAC_BITS + 15 - FRAC_BITS)
 
-static void filter(MpegAudioContext *s, int ch, const short *samples, int incr)
+static void filter(MpegAudioContext *s, int ch, const short *samples)
 {
     short *p, *q;
     int sum, offset, i, j;
@@ -328,8 +328,7 @@ static void filter(MpegAudioContext *s, int ch, const short 
*samples, int incr)
     for(j=0;j<36;j++) {
         /* 32 samples at once */
         for(i=0;i<32;i++) {
-            s->samples_buf[ch][offset + (31 - i)] = samples[0];
-            samples += incr;
+            s->samples_buf[ch][offset + (31 - i)] = *samples++;
         }
 
         /* filter */
@@ -736,13 +735,12 @@ static int MPA_encode_frame(AVCodecContext *avctx, 
AVPacket *avpkt,
                             const AVFrame *frame, int *got_packet_ptr)
 {
     MpegAudioContext *s = avctx->priv_data;
-    const int16_t *samples = (const int16_t *)frame->data[0];
     short smr[MPA_MAX_CHANNELS][SBLIMIT];
     unsigned char bit_alloc[MPA_MAX_CHANNELS][SBLIMIT];
     int padding, i, ret;
 
     for(i=0;i<s->nb_channels;i++) {
-        filter(s, i, samples + i, s->nb_channels);
+        filter(s, i, (const int16_t *)frame->data[i]);
     }
 
     for(i=0;i<s->nb_channels;i++) {
@@ -792,7 +790,7 @@ AVCodec ff_mp2_encoder = {
     .init                  = MPA_encode_init,
     .encode2               = MPA_encode_frame,
     .close                 = MPA_encode_close,
-    .sample_fmts           = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16,
+    .sample_fmts           = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16P,
                                                             AV_SAMPLE_FMT_NONE 
},
     .supported_samplerates = (const int[]){
         44100, 48000,  32000, 22050, 24000, 16000, 0
-- 
1.7.1

_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to