unity3d - Unity 麦克风开始录制时有延迟
问题描述
我正在尝试通过此代码从麦克风录制样本
private bool recording = false;
void Start () {
Button btnREC = recordButton.GetComponent<Button>();
btnREC.onClick.AddListener(RecordToggle);
Button btnPlay = playButton.GetComponent<Button>();
btnPlay.onClick.AddListener(PlayAudioSource);
}
public void RecordToggle(){
if (recording) {
StopRecording ();
} else {
StartCoroutine("StartRecording");
}
}
IEnumerator StartRecording(){
source.clip = Microphone.Start(null, true, 10, 44100);
while(!(Microphone.GetPosition(null) > 0)){
yield return true;
}
recording = true;
recIndicator.SetActive (true);
StopCoroutine("StartRecording");
}
在 Unity 编辑器中,一切都很好,但在构建中,我在按钮单击和录制开始之间存在延迟(我的 recIndicator 也在延迟之后显示)。如何解决此问题并在单击按钮后立即开始录制?
解决方案
推荐阅读
- java - 如何在 pom 依赖项中的类型字段中包含多个类型的 jar?
- javascript - 脚本的传播
- amazon-web-services - 在 aws cloudformation 模板中的 If Condition 中使用 importValue
- jquery - 跨度的 Jquery .on("click") 在 Firefox 中不起作用,但在 Firefox Dev 中起作用
- drop-down-menu - 级联组合框/列表框 - 多选项目结果 (Power Apps)
- java - 在Java中划分长值时的不一致
- datatables - 有没有办法使用静态 HTML 在 DataTable 中创建子行?
- ssh - 尽管有authorized_key,SSH仍然要求输入密码
- haskell - Foundation 中项目类型的用途是什么
- r - R生成mysql选择语句