unity实现录音并保存本地实现录音并保存本地
主要为大家详细介绍了unity实现录音并保存本地,文中示例代码介绍的非常详细,具有一定的参考价值,感兴
趣的小伙伴们可以参考一下
本文实例为大家分享了unity实现录音并保存本地的具体代码,供大家参考,具体内容如下
我们可以使用unity自带的MicroPhone类来录音,回放录音,保存录音
具体代码如下:
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEngine;
public class MicroPhoneManager : MonoBehaviour {
public int DeviceLength;
/// <summary>
/// 录音频率
/// </summary>
public string Frequency = "44100";
public int Samplerate = 44100;
/// <summary>
/// 录音时长
/// </summary>
public int MicSecond = 2;
string infoLog = "";
AudioSource _curAudioSource;
AudioSource CurAudioSource
{
get
{
if (_curAudioSource == null)
{
_curAudioSource = gameObject.AddComponent<AudioSource>();
}
return _curAudioSource;
}
}
#region [public Way]
/// <summary>
/// 获取麦克风设备
/// </summary>
public void GetMicrophoneDevice()
{
string[] mDevice = Microphone.devices;
DeviceLength = mDevice.Length;
if (DeviceLength == 0)
ShowInfoLog("找不到麦克风设备!");
}
/// <summary>
/// 开始录音
/// </summary>
public void StartRecordAudio()
{
CurAudioSource.Stop();
CurAudioSource.loop = false;
CurAudioSource.mute = true;
CurAudioSource.clip = Microphone.Start(null, true, MicSecond, int.Parse(Frequency));
while (!(Microphone.GetPosition(null) > 0))
{
}
CurAudioSource.Play();
ShowInfoLog("开始录音.....");
}
/// <summary>
/// 停止录音
/// </summary>
评论0