Exemple #1
0
        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++]);
            }
        }