gpt4 book ai didi

android - Android 中的 Unity3D 音频延迟

转载 作者:太空狗 更新时间:2023-10-29 13:23:48 29 4
gpt4 key购买 nike

我已阅读互联网上所有关于此问题的帖子并尝试了所有建议。虽然根据人们的说法,问题(播放音频源的 0.2-0.5 秒延迟)似乎是由设备上的硬件或操作系统引起的,但我发现某些应用程序播放声音几乎没有延迟(例如 Perfect Piano ).任何人都知道如何解决它?

最佳答案

您可以做的是Project Setting > Audio > DSP Buffer Size > 将其设置为 Best Latency(小缓冲区大小)。从今天开始,使用此设置,它在 Windows build 上会发出错误的声音,而在 macOS、Android、iOS 上则完全没问题。您可能希望在 Windows 上有更大的缓冲区大小。 (以增加延迟为代价)


如果“最佳延迟”设置仍然不足以满足您的需求,那么绝对是您的最佳选择。我刚做了Native Audio Assets 商店插件,可以从一个中央界面对 iOS 和 Android 最快的本地方式进行本地调用。 https://www.assetstore.unity3d.com/#!/content/107067


原生端播放音频的方式多种多样,这是我的选择:

  • 在 iOS 上它使用 OpenAL .它比 AVAudioPlayer、AudioToolbox 和 SystemSound 更快。
  • 在 Android 上它使用 AudioTrack ,我确认它比 SoundPool 更快,并且与 NDK 的 C++ 端 OpneSL ES 没有明显区别。

我在这里整理了我所有的发现:http://exceed7.com/native-audio


附言。我之前使用过 FMOD for Unity。我能做的最好的设置。除了设置最佳文件格式外,还需要编辑 FMOD Unity 的源代码以使用非常低的缓冲区大小。尽管如此,延迟仍然与 Unity 的“最佳延迟”相当(由于缓冲区大小较低,声音也更容易破裂)

关于android - Android 中的 Unity3D 音频延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24585027/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com