jap, das mit free ist klar

aber wenn man's nicht vergisst...?

die Anschluss-Frage wäre auch:

int16_t * buf;

buf = (int16_t *) malloc(arrlen);
oder:
buf = (int16_t *) malloc(arrlen*sizeof(int16_t) );

...