diff --git a/libaf/af_lavcresample.c b/libaf/af_lavcresample.c index 20d9ffc878..c99e29e7ee 100644 --- a/libaf/af_lavcresample.c +++ b/libaf/af_lavcresample.c @@ -118,9 +118,18 @@ static af_data_t* play(struct af_instance_s* af, af_data_t* data) } } - for(j=0; jin[i][j + s->index]= *(in++); + if(chans==1){ + memcpy(&s->in[0][s->index], in, in_len * sizeof(int16_t)); + }else if(chans==2){ + for(j=0; jin[0][j + s->index]= *(in++); + s->in[1][j + s->index]= *(in++); + } + }else{ + for(j=0; jin[i][j + s->index]= *(in++); + } } } in_len += s->index; @@ -135,9 +144,18 @@ static af_data_t* play(struct af_instance_s* af, af_data_t* data) memmove(s->in[i], s->in[i] + consumed, s->index*sizeof(int16_t)); } - for(j=0; j