使用Unity来实现全民K歌唱歌,耳返效果和混响功能

使用Unity来实现全民K歌唱歌,耳返效果和混响功能

首先呢要获取麦克风设备列表

	string[] micDevicesName;
 	AudioSource aud;
    	string microphoneName;
        aud = GetComponent<AudioSource>();
        micDevicesName = Microphone.devices;
        Debug.Log(micDevicesName[0]);
        microphoneName = micDevicesName[0];
        aud.clip = Microphone.Start(microphoneName, true, 100, 48000);   

到此麦克风调用就结束了。切记:先别End,咱们来做耳返效果。AudioSource的对象中有一个成员变量叫做timeSamples,这个变量简单来说是类似与进度条的效果。Microphone类里有一个GetPosition的函数,这个函数简单来说就是录音的进度条录到哪个位置了。我们只要保证timeSample的值小于Microphone的Getposition的值就可以了,如果大于或者等于的话,就会没有声音甚至是噪音的出现

我在抖音中展示的效果是-500,如果值太大了,就会造成延迟。

//下面的代码我放在了Update中
       if (Input.GetKeyDown(KeyCode.A))
        {
            aud.timeSamples = Microphone.GetPosition(microphoneName) -500;
            aud.Play();
        }   

混响效果加上这两个组件就完成了使用Unity来实现全民K歌唱歌,耳返效果和混响功能_第1张图片
微博搜索:程序界的张Jie
抖音号搜索:205506164
查看效果展示视频B站教学视频:https://www.bilibili.com/video/av86854460/

微信公众号:chengxuZJ
公众号里有项目下载地址
使用Unity来实现全民K歌唱歌,耳返效果和混响功能_第2张图片

你可能感兴趣的:(使用Unity来实现全民K歌唱歌,耳返效果和混响功能)