playEffectEx abstract method
在频道中播放指定音效。
自从 自 v4.6.2 版本新增。 你可以调用该方法在频道内向所有用户播放指定音效。每次调用该方法只能播放一个音效。若需同时播放多个音效,请使用不同的 soundId 和 filePath 多次调用该方法。你还可以设置是否在频道中发布该音效。 声网建议不要同时播放超过三个音效。 该方法中的音效 ID 和文件路径必须与 preloadEffectEx 方法中的保持一致。 如果在调用 playEffectEx 之前调用了 preloadEffectEx , playEffectEx 执行后不会关闭文件资源。下次调用 playEffectEx 时会直接从头开始播放。 如果在调用 playEffectEx 之前未调用 preloadEffectEx , playEffectEx 执行后会销毁资源。下次调用 playEffectEx 时会尝试重新打开文件并从头播放。
connectionRtcConnection 对象,详见 RtcConnection 。soundId音效 ID。filePath本地文件的绝对路径或在线文件的 URL。支持的音频格式包括 mp3、mp4、m4a、aac、3gp、mkv 和 wav。loopCount音效的循环播放次数: -1 :无限循环,直到调用 stopEffect 或 stopAllEffects 。 0 :播放一次。 1 :播放两次。pitch音效的音调。取值范围为 0.5 到 2.0,默认值为 1.0(原始音调)。数值越小,音调越低。pan音效的空间位置。取值范围为 -1.0 到 1.0: -1.0 :音效从用户左侧传来。 0.0 :音效从用户正前方传来。 1.0 :音效从用户右侧传来。gain音效的音量。取值范围为 0 到 100,默认值为 100(原始音量)。数值越小,音量越低。publish是否在频道中发布该音效: true :在频道中发布该音效。 false :(默认)不在频道中发布该音效。startPos音效文件的播放起始位置,单位为毫秒。
Returns 0:方法调用成功。 < 0:方法调用失败。详见错误码了解详情和解决建议。
Implementation
Future<void> playEffectEx(
{required RtcConnection connection,
required int soundId,
required String filePath,
required int loopCount,
required double pitch,
required double pan,
required int gain,
bool publish = false,
int startPos = 0});