mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-28 05:30:34 +00:00
g723_1: save/restore excitation with offset to store LPC history
The same buffer with saved data is used later in LPC reconstruction, so it should have some head space for LPC history.
This commit is contained in:
parent
3680b24351
commit
7f92db14f9
@ -1071,7 +1071,7 @@ static int g723_1_decode_frame(AVCodecContext *avctx, void *data,
|
||||
vector_ptr = p->excitation + PITCH_MAX;
|
||||
|
||||
/* Save the excitation */
|
||||
memcpy(p->audio, vector_ptr, FRAME_LEN * sizeof(*p->audio));
|
||||
memcpy(p->audio + LPC_ORDER, vector_ptr, FRAME_LEN * sizeof(*p->audio));
|
||||
|
||||
p->interp_index = comp_interp_index(p, p->pitch_lag[1],
|
||||
&p->sid_gain, &p->cur_gain);
|
||||
@ -1086,7 +1086,7 @@ static int g723_1_decode_frame(AVCodecContext *avctx, void *data,
|
||||
/* Restore the original excitation */
|
||||
memcpy(p->excitation, p->prev_excitation,
|
||||
PITCH_MAX * sizeof(*p->excitation));
|
||||
memcpy(vector_ptr, p->audio, FRAME_LEN * sizeof(*vector_ptr));
|
||||
memcpy(vector_ptr, p->audio + LPC_ORDER, FRAME_LEN * sizeof(*vector_ptr));
|
||||
|
||||
/* Peform pitch postfiltering */
|
||||
if (p->postfilter)
|
||||
|
Loading…
Reference in New Issue
Block a user