Что в качестве аргументов принимает функция RecordingCallback?
BOOL CALLBACK RecordingCallback(HRECORD handle, const void *buffer, DWORD length, void *user)
handle процесса записи, через который можно как-то этим процессом управлять,
буфер сэмплов, длина буфера в байтах и указатель, переданный в BASS_RecordStart последним аргументом.
Сэмпл -- это значение амплитуды звукового сигнала в одном канале. Формат сэмпла задаётся младшими битами третьего параметра функции BASS_RecordStart. Если там 0, то формат -- 16-битное целое число со знаком. При записи многоканального звука сэмплы каналов идут по очереди.
Сам коллбэк вызывается периодически, длина периода может быть задана старшими битами третьего параметра.
См.
www.un4seen.com/doc/#bass/BASS_RecordStart.html