Пример #1
0
        private void onSampleBuffer(AudioEvent audioEvent, AndroidJavaObject frame, int sampleRate, int channelCount)
        {
            var format = new Format {
                sampleRate = sampleRate, channelCount = channelCount
            };

            float[] sampleBuffer = null;
            var     timestamp    = 0L;

            if (audioEvent == AudioEvent.OnSampleBuffer)
            {
                sampleBuffer = AndroidJNI.FromFloatArray(frame.Get <AndroidJavaObject>("sampleBuffer").GetRawObject());
                timestamp    = frame.Get <long>("timestamp");
            }
            try {
                callback(audioEvent, sampleBuffer, timestamp, format);
            } catch (Exception ex) {
                Debug.LogError("NatMic Error: Sample buffer callback raised exception: " + ex);
            }
        }