Hi, for a fast fix (on the fly untested)you can try the following.
If the Mic does only support mono so you must change 2 things in the Delphi Demo
rchan := BASS_RecordStart(Samplerate, Channels, 0, @RecordingCallback, nil);
so
rchan := BASS_RecordStart(44100, 1, 0, @RecordingCallback, nil);
in the wavehdr (line 154)
just change wNumChannels to 1
and set dwSampleRate to one of the supported Samplerates.
(the supported Samplerates can you get via Bass_RecordGetInfo).
e.g or use The device's current sample rate, changing the wavehdr and BASS_RecordStart :
// the WaveHeader (wavehdr) is in the Demo based on 44100, 2 Channels, changing the following make it more flexible
var rInfo : BASS_RECORDINFO;
Bass_RecordGetInfo(rInfo);
with wavehdr do
begin
wBitsPerSample := 16;
dwSampleRate := rInfo.freq;
wNumChannels := (rInfo.formats shr 24);
wBlockAlign := wNumChannels * wBitsPerSample div 8;
dwBytesPerSec := dwSampleRate * wBlockAlign;
end;
rchan := BASS_RecordStart(rInfo.freq, (wavehdr.wNumChannels), 0, @RecordingCallback, nil);