void AllocateBuffers(int bufferSize, int bufferCount)
{
fSamples = new Dictionary<IntPtr, MediaSample>();
fAvailableBuffers = new BlockingBoundedQueue<WAVEHDR>(bufferCount);
for (int i = 0; i < bufferCount; i++)
{
MediaSample aSample = new MediaSample(bufferSize);
fSamples.Add(aSample.GetHeaderPointer(), aSample);
fAvailableBuffers.Enqueue(aSample.GetHeader());
}
}