preload abstract method

Future<int?> preload(
  1. int effectId, {
  2. required String filePath,
})

预加载指定音乐文件到内存中,以避免频繁播放同一文件时的重复加载,减少 CPU 占用。

effectId:音效 ID。用于标识音效,请保证音效 ID 唯一性。
如果使用相同的 ID 重复调用本方法,后一次会覆盖前一次。
如果先调用 RTCAudioEffectPlayer.start,再使用相同的 ID 调用本方法 ,会收到回调 RTCAudioEffectPlayerEventHandler.onAudioEffectPlayerStateChanged,通知前一个音效停止,然后加载下一个音效。
调用本方法预加载 A.mp3 后,如果需要使用相同的 ID 调用 RTCAudioEffectPlayer.start 播放 B.mp3,请先调用 RTCAudioEffectPlayer.unload 卸载 A.mp3 ,否则会报错 "loadConflict"。

filePath:音效文件路径。支持在线文件的 URL、本地文件的 URI、本地文件的绝对路径或以 /assets/ 开头的本地文件路径。对于在线文件的 URL,仅支持 https 协议。
预加载的文件长度不得超过 20s。
不同平台支持的音效文件格式和 RTCAudioEffectPlayer.start 一致。

返回值:

  • 0:调用成功;
  • <0:调用失败。

注意:

Implementation

Future<int?> preload(
  int effectId, {
  required String filePath,
});