博客
关于我
录音功能
阅读量:353 次
发布时间:2019-03-04

本文共 1525 字,大约阅读时间需要 5 分钟。

Unity录音功能实现

1. 页面组成

在开发录音功能时,我们需要创建一个简单的UI界面。界面主要包含一个按钮,用来控制录音和播放功能。通过Unity的组件系统,我们可以方便地实现这一功能。

2. 录音音频

在实现录音功能时,我们需要创建一个AudioSource组件,但不需要挂接任何音频文件。这个AudioSource会被用来控制录音和播放操作。

3. 创建C#脚本

以下是实现录音功能的C#脚本代码:

using UnityEngine;public class TestAudio : MonoBehaviour {    private AudioSource aud;    // Start is called before the first frame update    void Start() {        foreach (string device in Microphone.devices) {            Debug.Log("Name: " + device);        }    }    // Update is called once per frame    void Update() {    }    public void ButtonOnClick(int index) {        if (index == 0) {            aud = this.GetComponent
(); aud.clip = Microphone.Start(Microphone.devices[0], true, 10, 44100); } else if (index == 1) { Microphone.End(Microphone.devices[0]); } else if (index == 2) { aud = this.GetComponent
(); aud.Play(); int min = 40000; int max = 44100; Debug.Log("Playing status: " + IsRecording(Microphone.devices[0])); Debug.Log("Playing position: " + GetPosition(Microphone.devices[0])); } } public bool IsRecording(string deviceName) { return IsRecording(deviceName); } public int GetPosition(string deviceName) { return GetPosition(deviceName); }}

将上述脚本挂接到AudioSource组件上,并为按钮绑定上述方法即可。发布到手机上即可使用录音功能。

注意事项

  • Microphone.devices 用于获取可用的麦克风设备。
  • Microphone.Start 用于开始录音。
  • Microphone.End 用于停止录音。
  • aud.Play() 用于播放录音。

通过以上方法,你可以轻松实现音频录音功能,并通过按钮控制录音和播放操作。

转载地址:http://zbjr.baihongyu.com/

你可能感兴趣的文章
OSG学习:几何体的操作(二)——交互事件、Delaunay三角网绘制
查看>>
OSG学习:几何对象的绘制(一)——四边形
查看>>
OSG学习:几何对象的绘制(三)——几何元素的存储和几何体的绘制方法
查看>>
OSG学习:几何对象的绘制(二)——简易房屋
查看>>
OSG学习:几何对象的绘制(四)——几何体的更新回调:旋转的线
查看>>
OSG学习:场景图形管理(一)——视图与相机
查看>>
OSG学习:场景图形管理(三)——多视图相机渲染
查看>>
OSG学习:场景图形管理(二)——单窗口多相机渲染
查看>>
OSG学习:场景图形管理(四)——多视图多窗口渲染
查看>>
OSG学习:新建C++/CLI工程并读取模型(C++/CLI)——根据OSG官方示例代码初步理解其方法
查看>>
Sql 随机更新一条数据返回更新数据的ID编号
查看>>
OSG学习:空间变换节点和开关节点示例
查看>>
OSG学习:纹理映射(一)——多重纹理映射
查看>>
OSG学习:纹理映射(七)——聚光灯
查看>>
OSG学习:纹理映射(三)——立方图纹理映射
查看>>
OSG学习:纹理映射(二)——一维/二维/简单立方图纹理映射
查看>>
OSG学习:纹理映射(五)——计算纹理坐标
查看>>
OSG学习:纹理映射(六)——灯光
查看>>
OSG学习:纹理映射(四)——三维纹理映射
查看>>
OSG:从源码看Viewer::run() 一
查看>>