--- 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