예제 #1
0
        private void processFrame()
        {
            var count = device.Buffers.First(d => d != null).Length;

            if (device.Buffers.Any(d => d != null && d.Length != count))
            {
                throw new NotSupportedException("Processing buffers of varying lengths is not currently supported");
            }

            interleaveChannelsToByteArray(count);

            OutputBuffer.AddSamples(rawBuffer, 0, rawBuffer.Length);

            for (int i = 0; i < device.Buffers.Length; i++)
            {
                device.Buffers[i] = null;
            }
        }