diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-01-29 00:34:59 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-01-29 00:34:59 +0100 |
commit | c065255bba62ebef145f80cd8d805ef1a9eca133 (patch) | |
tree | 675d1241b8488fef70b14a566e59a9070682f08c /libavcodec/aacenc.c | |
parent | 97dece333df07befa4052ed6f5a823ec3103a67d (diff) | |
parent | 2e626dd5136f4daa244b37284e22483cdc7df1ac (diff) | |
download | ffmpeg-c065255bba62ebef145f80cd8d805ef1a9eca133.tar.gz |
Merge remote-tracking branch 'qatar/master'
* qatar/master:
aacenc: Fix LONG_START windowing.
aacenc: Fix a bug where deinterleaved samples were stored in the wrong place.
avplay: use the correct array size for stride.
lavc: extend doxy for avcodec_alloc_context3().
APIchanges: mention avcodec_alloc_context()/2/3
avcodec_align_dimensions2: set only 4 linesizes, not AV_NUM_DATA_POINTERS.
aacsbr: ARM NEON optimised sbrdsp functions
aacsbr: align some arrays
aacsbr: move some simdable loops to function pointers
cosmetics: Remove extra newlines at EOF
Conflicts:
libavcodec/utils.c
libavfilter/formats.c
libavutil/mem.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/aacenc.c')
-rw-r--r-- | libavcodec/aacenc.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libavcodec/aacenc.c b/libavcodec/aacenc.c index 55f028687c..2ff6f9cc04 100644 --- a/libavcodec/aacenc.c +++ b/libavcodec/aacenc.c @@ -200,8 +200,8 @@ WINDOW_FUNC(long_start) float *out = sce->ret; dsp->vector_fmul(out, audio, lwindow, 1024); - memcpy(out + 1024, audio, sizeof(out[0]) * 448); - dsp->vector_fmul_reverse(out + 1024 + 448, audio, swindow, 128); + memcpy(out + 1024, audio + 1024, sizeof(out[0]) * 448); + dsp->vector_fmul_reverse(out + 1024 + 448, audio + 1024 + 448, swindow, 128); memset(out + 1024 + 576, 0, sizeof(out[0]) * 448); } @@ -487,10 +487,10 @@ static void deinterleave_input_samples(AACEncContext *s, const float *sptr = samples + channel_map[ch]; /* copy last 1024 samples of previous frame to the start of the current frame */ - memcpy(&s->planar_samples[ch][0], &s->planar_samples[ch][1024], 1024 * sizeof(s->planar_samples[0][0])); + memcpy(&s->planar_samples[ch][1024], &s->planar_samples[ch][2048], 1024 * sizeof(s->planar_samples[0][0])); /* deinterleave */ - for (i = 1024; i < 1024 * 2; i++) { + for (i = 2048; i < 3072; i++) { s->planar_samples[ch][i] = *sptr; sptr += sinc; } |