U1L14-4——麦克风输入相关
U1L14-4——麦克风输入相关
麦克风输入
Unity 可以通过脚本来访问计算机的麦克风,并可通过直接录音来创建音频剪辑。Microphone 类提供了一个简单的 API 来查找可用的麦克风,查询麦克风的功能,以及开始和结束录制会话。
使用该类可通过连接的麦克风来录制 AudioClip。
可通过 devices 属性获取所连接麦克风的列表,然后使用 Start 和 End 函数开始或结束(使用一个可用设备)录制会话。
本课代码关键字
1 | Microphone.devices //获取设备麦克风信息 |
获取设备麦克风信息
1 | string[] strs = Microphone.devices; |
开始录制
- 参数一:设备名 传空使用默认设备
- 参数二:超过录制长度后 是否从头录制
- 参数三:录制时长
- 参数四:采样率(每秒采集多少个采样点,一般都会用44100)
1 | private AudioClip clip; |
结束录制
1 | if (Input.GetKeyUp(KeyCode.Space)) |
获取音频数据用于存储或者传输
音频存储规则规则
用于存储数组数据的长度是: 声道数(channals)* 剪辑长度(samples)
1 | float[] f = new float[clip.channels * clip.samples]; |
通过数组存储音频
第一个参数是数据数组,第二个参数是偏移位置
1 | clip.GetData(f, 0); //第一个参数是数据数组,第二个参数是偏移位置 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 文KRIFE齐的博客!