OpenHarmony平台 团结引擎 mixerSuspend/mixerResume 调用无效

团结版本1.2.2 fmod 插件2.0222

你好,

我们在 2.02.23 版本的Unity FMOD 插件里修复了这个问题,可以麻烦你升级到这个版本后看一看问题是否还存在么?

好的

我用了2.03 已经问题解决了, 但是我调整dsp buffer length 为1024 dsp buffer count为4 声音丢了 是一定要使用dsp buffer length 2048才行吗 声音有些延迟

openharmony 移动端output mode使用什么形式更好

帮忙看看

感谢告知。

是的,目前来说对于大多数设备都需要设用 dsp buffer length 2048 才行,如果你遇到声音有延迟的情况可以试试如下办法:

在system => init() 之前进行设置:
(1) 配置更大的BufferSize
coreSystem->setDSPBufferSize(2048, 4);
(2) 为了避免高延迟,可以切换到FAST模式
coreSystem->setDriver(1));
但是请注意,FAST模式可能会导致某些设备闪退,所以目前我们只建议在测试时使用。更多信息可以参考我们相关平台文档:FMOD Engine | 4. Platform Details | Open Harmony

对于Openharmony移动端的 Output Mode,在没有特殊需求的情况下一般是使用FMOD_OUTPUTTYPE_OHAUDIO

希望这些能帮到你,如果还有问题的话可以随时问我。

好的 感谢答复 其他设置的我都是和您建议的方式一致 我试一下您的建议试用一下fast模式coreSystem->setDriver(1)) 另外sample rate会不会影响声音延迟

是的,sample rate 确实与延迟有关,因为我们用 DSP buffer size 来表示延迟。

举个例子的话,如果DSP buffer size 是1024,sample rate 是48000,那么延迟就是1024 / 48000 = 0.0213秒或21.3毫秒。如果将sample rate 降到24000,那么延迟会增加到42.6毫秒。更高的 sample rate 会需要更多的CPU处理能力,因为这代表着每秒通过FMOD 的数据更多。

另外我怕我上面解释的不够清楚,想顺便说一下对于团结引擎里的 OpenHarmony 平台,output mode 默认就是 FMOD_OUTPUTTYPE_OHAUDIO 所以并不需要额外设置。

好的 感谢