录音功能

写在前面:
录音功能并不像是音频播放那样原本就有音频源,他是由纯脚本构成

1.页面组成

简单的UI制作界面如下图
在这里插入图片描述

2.录音音频

直接创建一个AudioSource,但是不给他挂在音频文件

3.创建一个c#脚本,脚本内容如下

using UnityEngine;

public class TestAudio : MonoBehaviour
{
    AudioSource aud;/// <summary>
    ///保存录音文件
    /// </summary>
    // 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<AudioSource>();     //如果传入的录音参数为0
            aud.clip = Microphone.Start(Microphone.devices[0], true, 10, 44100);//开始录音
            //参数代表的含义分别为1.目标设备的名称,是否循环录制,录制时间长短,录音品质需要注意的是
            //无损音质的采样率=44100,即每秒音频用44100个float数据表示,但语音8000就够了(通常的移动电话=8000)。
        }
        else if(index == 1)//如果传入的录音参数为1说明现在已经录音一段
        {
            Microphone.End(Microphone.devices[0]);
        }
        else if(index == 2)
        {
            aud = this.GetComponent<AudioSource>();
            aud.Play();
            int min = 40000;
            int max = 44100;
            Debug.Log("播放状态" + IsRecording(Microphone.devices[0]));//输出当前的播放状态
            Debug.Log("播放位置" + GetPosition(Microphone.devices[0]));//输出当前录音的位置
        }
    }
    public bool IsRecording(string deviceName)
    {
        return IsRecording(deviceName);
    }
    public int GetPosition(string deviceName)
    {
        return GetPosition(deviceName);
    }
}

将脚本挂在到AudioSource上,为Button绑定上监听事件,发布到手机上,即可使用录音功能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在uni-app中实现录音功能,可以使用RecorderManager对象。该对象是uni-app提供的API,用于控制录音的开始、暂停、继续、停止和上传等操作。通过调用RecorderManager的start方法,可以开始录音。当需要暂停录音时,可以调用pause方法;当需要继续录音时,可以调用resume方法;当需要停止录音时,可以调用stop方法。录音完成后,可以将录音文件上传到服务器,以供后续使用。 在播放录音时,可以使用InnerAudioContext对象。InnerAudioContext是uni-app提供的API,用于控制音频的播放、暂停、停止等操作。通过调用InnerAudioContext的play方法,可以开始播放录音;调用pause方法可以暂停播放;调用stop方法可以停止播放。 总结起来,要实现uni-app中的录音功能,可以使用RecorderManager进行录音操作,使用InnerAudioContext进行录音文件的播放。通过这些API,可以方便地实现录音功能并进行录音文件的上传和播放。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [uni-app小程序实现录音计时、播放、暂停等功能](https://blog.csdn.net/a18792627168/article/details/116759156)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [uniapp 录音 上传 播放](https://download.csdn.net/download/Jikycc/85784053)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值