音效文件播放

  • HarmonyOS

更新时间不可用

playEffect

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

TypeScript
public abstract playEffect(soundId:number,filePath:string,loopCount:number,pitch:number,pan:number,gain:number,publish?:boolean,startPos?:number):Promise<number>;

你可以多次调用该方法,传入不同的 soundID 和 filePath,同时播放多个音效文件。为获得最佳用户体验,建议同时播放的音效文件不超过 3 个。

调用时机

该方法在加入频道前后均可调用。

调用限制

无。

相关回调

音效文件播放结束后,SDK 会触发 onAudioEffectFinished 回调。

参数

参数名描述
soundId

音效的 ID。每个音效的 ID 具有唯一性。

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

音效文件的播放位置,单位为毫秒。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

stopEffect

停止播放指定音效文件。

TypeScript
public abstract stopEffect(soundId:number):number;

调用时机

该方法需要在 playEffect 之后调用。

调用限制

无。

参数

参数名描述
soundId

指定音效文件的 ID。每个音效文件均有唯一的 ID。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

playAllEffects

播放所有音效文件。

TypeScript
public abstract playAllEffects(loopCount:number,pitch:number,pan:number,gain:number,publish:boolean):number;

详情

多次调用 preloadEffect 预加载多个音效文件后,你可以调用本方法播放所有预加载的音效文件。

参数

参数名描述
loopCount

音效文件循环播放的次数:

  • -1: 无限循环播放音效文件,直至调用 stopEffect 或 stopAllEffects 后停止。
  • 0: 播放音效文件一次。
  • 1: 播放音效文件两次。
pitch

音效的音调。取值范围为 [0.5,2.0]。默认值为 1.0,代表原始音调。取值越小,则音调越低。

表格内容超出当前宽度,可横向滚动查看更多列。
参数名描述
pan

音效的空间位置。取值范围为 [-1.0,1.0]:

  • -1.0: 音效出现在左边。
  • 0: 音效出现在正前边。
  • 1.0: 音效出现在右边。
gain

音效的音量。取值范围为 [0,100]。100 为默认值,代表原始音量。取值越小,则音量越低。

publish

是否将音效发布到远端:

  • true: 将音效发布到远端。本地和远端用户都能听到该音效。
  • false: (默认)不将音效发布到远端。只能本地用户能听到该音效。
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

unloadAllEffects

从内存释放所有预加载音效文件。

TypeScript
public abstract unloadAllEffects():number;

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。详见错误码了解详情和解决建议。

onAudioEffectFinished

本地音效文件播放已结束回调。

TypeScript
onAudioEffectFinished?:(soundId:number) => void;

详情

当播放音效结束后,会触发该回调。

参数

参数名描述
soundId

指定音效的 ID。每个音效均有唯一的 ID。

表格内容超出当前宽度,可横向滚动查看更多列。

所属接口类

getEffectsVolume

获取音效文件的播放音量。

TypeScript
public abstract getEffectsVolume():number;

参数

返回值

0:方法调用成功;小于 0:方法调用失败。

setEffectsVolume

设置音效文件的播放音量。

TypeScript
public abstract setEffectsVolume(volume:number):number;

参数

参数名描述
volume

播放音量。取值范围为 [0,100]。默认值为 100,表示原始音量。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

0:方法调用成功;小于 0:方法调用失败。

preloadEffect

将音效文件加载至内存。

TypeScript
public abstract preloadEffect(soundId:number,filePath:string,startPos?:number):Promise<number>;

参数

参数名描述
soundId

音效的 ID。每个音效的 ID 具有唯一性。

filePath

文件路径:

startPos

音效文件加载的起始位置,单位为毫秒。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

Promise 完成时返回操作结果。

setVolumeOfEffect

设置指定音效文件的播放音量。

TypeScript
public abstract setVolumeOfEffect(soundId:number,volume:number):number;

参数

参数名描述
soundId

指定音效的 ID。每个音效均有唯一的 ID。

volume

播放音量。取值范围为 [0,100]。默认值为 100,表示原始音量。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

0:方法调用成功;小于 0:方法调用失败。

pauseEffect

暂停音效文件播放。

TypeScript
public abstract pauseEffect(soundId:number):number;

参数

参数名描述
soundId

音效文件的 ID。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

0:方法调用成功;小于 0:方法调用失败。

pauseAllEffects

暂停所有音效文件播放。

TypeScript
public abstract pauseAllEffects():number;

参数

返回值

0:方法调用成功;小于 0:方法调用失败。

resumeEffect

恢复播放指定音效文件。

TypeScript
public abstract resumeEffect(soundId:number):number;

参数

参数名描述
soundId

音效文件的 ID。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

0:方法调用成功;小于 0:方法调用失败。

resumeAllEffects

恢复播放所有音效文件。

TypeScript
public abstract resumeAllEffects():number;

参数

返回值

0:方法调用成功;小于 0:方法调用失败。

stopAllEffects

停止播放所有音效文件。

TypeScript
public abstract stopAllEffects():number;

参数

返回值

0:方法调用成功;小于 0:方法调用失败。

unloadEffect

从内存释放某个预加载的音效文件。

TypeScript
public abstract unloadEffect(soundId:number):number;

参数

参数名描述
soundId

指定音效文件的 ID。每个音效文件均有唯一的 ID。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

0:方法调用成功;小于 0:方法调用失败。

getVolumeOfEffect

获取指定音效文件的播放音量。

TypeScript
public abstract getVolumeOfEffect(soundId:number):number;

参数

参数名描述
soundId

音效文件的 ID。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

0:方法调用成功;小于 0:方法调用失败。