示例#1
0
        void OnAudioFilterRead(float[] data, int channels)
        {
            if (_mumbleClient == null || !_mumbleClient.ConnectionSetupFinished)
            {
                return;
            }
            //Debug.Log("Filter read for: " + GetUsername());

            int   numRead         = _mumbleClient.LoadArrayWithVoiceData(Session, data, 0, data.Length);
            float percentUnderrun = 1f - numRead / data.Length;

            if (OnAudioSample != null)
            {
                OnAudioSample(data, percentUnderrun);
            }

            //Debug.Log("playing audio with avg: " + data.Average() + " and max " + data.Max());
            if (Gain == 1)
            {
                return;
            }

            for (int i = 0; i < data.Length; i++)
            {
                data[i] = Mathf.Clamp(data[i] * Gain, -1f, 1f);
            }
            //Debug.Log("playing audio with avg: " + data.Average() + " and max " + data.Max());
        }
示例#2
0
        void OnAudioFilterRead(float[] data, int channels)
        {
            //Debug.Log("On audio read " + Session);
            if (_mumbleClient == null || !_mumbleClient.ConnectionSetupFinished)
            {
                return;
            }

            _mumbleClient.LoadArrayWithVoiceData(Session, data, 0, data.Length);

            if (OnAudioSample != null)
            {
                OnAudioSample(data);
            }

            //Debug.Log("playing audio with avg: " + data.Average() + " and max " + data.Max());
            if (Gain == 1)
            {
                return;
            }

            for (int i = 0; i < data.Length; i++)
            {
                data[i] = Mathf.Clamp(data[i] * Gain, -1f, 1f);
            }
            //Debug.Log("playing audio with avg: " + data.Average() + " and max " + data.Max());
        }