void OnAudioFilterRead(float[] data, int channels) { // make voice data monoral int n = data.Length / channels; if (tmpBuffer_ == null) { tmpBuffer_ = new float[n]; } for (int i = 0; i < n; ++i) { tmpBuffer_[i] = data[channels * i]; } buffer_.Add(tmpBuffer_); // make mic sound silent System.Array.Clear(data, 0, data.Length); }
void Start() { var buf = new float[128]; for (int i = 0; i < 10; ++i) { for (int j = 0; j < buf.Length; ++j) { buf[j] = i * buf.Length + j; } buffer_.Add(buf); } int n = 0; while (buffer_.Get(ref buf, buf.Length) > 0) { Debug.Log(buf[10 * n++]); } }