Bug Fix: Reorder LPC scratch memory for alignment
The double members should be ordered first so they are aligned to an 8 byte boundary. The rest are fine as-is. Signed-off-by: Christopher Snowhill <kode54@gmail.com>
This commit is contained in:
parent
7ff653b48f
commit
9b683a9c56
1 changed files with 6 additions and 5 deletions
11
Audio/ThirdParty/lvqcl/lpc.c
vendored
11
Audio/ThirdParty/lvqcl/lpc.c
vendored
|
@ -155,12 +155,13 @@ void lpc_extrapolate2(float *const data, const size_t data_len, const int nch, c
|
||||||
*extrapolate_buffer_size = new_size;
|
*extrapolate_buffer_size = new_size;
|
||||||
}
|
}
|
||||||
|
|
||||||
float *tdata = (float *)(*extrapolate_buffer); // for 1 channel only
|
double *aut = (double *)(*extrapolate_buffer);
|
||||||
|
double *lpc = (double *)(*extrapolate_buffer + aut_size);
|
||||||
|
|
||||||
double *aut = (double *)(*extrapolate_buffer + tdata_size);
|
float *tdata = (float *)(*extrapolate_buffer + aut_size + lpc_size); // for 1 channel only
|
||||||
double *lpc = (double *)(*extrapolate_buffer + tdata_size + aut_size);
|
|
||||||
float *lpci = (float *)(*extrapolate_buffer + tdata_size + aut_size + lpc_size);
|
float *lpci = (float *)(*extrapolate_buffer + aut_size + lpc_size + tdata_size);
|
||||||
float *work = (float *)(*extrapolate_buffer + tdata_size + aut_size + lpc_size + lpci_size);
|
float *work = (float *)(*extrapolate_buffer + aut_size + lpc_size + tdata_size + lpci_size);
|
||||||
|
|
||||||
for(int c = 0; c < nch; c++) {
|
for(int c = 0; c < nch; c++) {
|
||||||
if(extra_bkwd) {
|
if(extra_bkwd) {
|
||||||
|
|
Loading…
Reference in a new issue