playEffect abstract method

Future<void> playEffect({
  1. required int soundId,
  2. required String filePath,
  3. required int loopCount,
  4. required double pitch,
  5. required double pan,
  6. required int gain,
  7. bool publish = false,
  8. int startPos = 0,
})

播放指定的本地或在线音效文件。

你可以多次调用该方法,传入不同的 soundID 和 filePath ,同时播放多个音效文件。为获得最佳用户体验,建议同时播放的音效文件不超过 3 个。 如果你需要播放在线音效文件,声网建议先将在线音效文件缓存到本地设备,调用 preloadEffect 将缓存的音效文件预加载到内存中,然后再调用此方法播放音效。否则,可能出现因在线音效文件加载超时、加载失败而导致的播放失败和无声的问题。

  • soundId 音效的 ID。每个音效的 ID 具有唯一性。 如果你已通过 preloadEffect 将音效加载至内存,请确保该参数与 preloadEffect 中设置的 soundId 相同。
  • filePath 播放文件的地址,支持在线文件的 URL 地址、播放文件的绝对路径,需精确到文件名及后缀。支持的音频格式包括 MP3、AAC、M4A、MP4、WAV、3GP 等。 如果你已通过 preloadEffect 将音效加载至内存,请确保该参数与 preloadEffect 中设置的 filePath 相同。
  • loopCount 音效循环播放的次数。 ≥ 0: 循环播放次数。例如,1 表示循环播放 1 次,即总计播放 2 次。 -1: 无限循环播放。
  • pitch 音效的音调,取值范围为 0.5,2.0。默认值为 1.0,表示原始音调。取值越小,则音调越低。
  • pan 音效的空间位置。取值范围为 -1.0,1.0,例如: -1.0:音效出现在左边 0.0:音效出现在正前方 1.0:音效出现在右边
  • gain 音效的音量。取值范围为 0.0,100.0。默认值为 100.0,表示原始音量。取值越小,则音量越低。
  • publish 是否将音效发布至远端: true : 将音效发布至远端。本地用户和远端用户都能听到音效。 false : 不将音效发布至远端。只有本地用户能听到音效。
  • startPos 音效文件的播放位置,单位为毫秒。

Returns 方法成功调用时,无返回值;方法调用失败时,会抛出 AgoraRtcException 异常,你需要捕获异常并进行处理。详见错误码了解详情和解决建议。 < 0:方法调用失败。详见错误码了解详情和解决建议。

Implementation

Future<void> playEffect(
    {required int soundId,
    required String filePath,
    required int loopCount,
    required double pitch,
    required double pan,
    required int gain,
    bool publish = false,
    int startPos = 0});