Public 成员函数

double getEffectsVolume ()
 
int setEffectsVolume (double volume)
 
int setVolumeOfEffect (int soundId, double volume)
 
int playEffect (int soundId, String filePath, int loop, double pitch, double pan, double gain)
 
int playEffect (int soundId, String filePath, int loopCount, double pitch, double pan, double gain, boolean publish)
 
int stopEffect (int soundId)
 
int stopAllEffects ()
 
int preloadEffect (int soundId, String filePath)
 
int unloadEffect (int soundId)
 
int pauseEffect (int soundId)
 
int pauseAllEffects ()
 
int resumeEffect (int soundId)
 
int resumeAllEffects ()
 

详细描述

IAudioEffecManager 类,提供音效管理方法。

成员函数说明

◆ getEffectsVolume()

double io.agora.rtc.IAudioEffectManager.getEffectsVolume ( )

获取播放音效文件音量。范围为 [0.0, 100.0]。

返回
  • 方法调用成功则返回音量值
  • < 0:方法调用失败

◆ setEffectsVolume()

int io.agora.rtc.IAudioEffectManager.setEffectsVolume ( double  volume)

设置播放音效文件音量。

参数
volume取值范围为 [0.0, 100.0]。 100.0 为默认值。
返回
  • 0:方法调用成功
  • < 0:方法调用失败

◆ setVolumeOfEffect()

int io.agora.rtc.IAudioEffectManager.setVolumeOfEffect ( int  soundId,
double  volume 
)

实时调整播放音效文件音量。

参数
soundId指定音效的 ID。每个音效均有唯一的 ID
volume取值范围为 [0.0, 100.0]。 100.0 为默认值
返回
  • 0:方法调用成功
  • < 0:方法调用失败

◆ playEffect() [1/2]

int io.agora.rtc.IAudioEffectManager.playEffect ( int  soundId,
String  filePath,
int  loop,
double  pitch,
double  pan,
double  gain 
)

播放指定音效文件。

弃用:
该方法已废弃。声网不建议你使用。如果你想要播放指定的音效文件,请改用 playEffect2 方法。
参数
soundId指定音效的 ID。每个音效均有唯一的 ID。如果你已通过 preloadEffect 将音效加载至内存,确保这里的 soundID 与 preloadEffect 设置的 soundID 相同。
filePath音效文件的绝对路径
loop设置音效循环播放的次数:
  • 0:播放音效一次
  • 1:播放音效两次
  • -1:无限循环播放音效,直至调用 stopEffectstopAllEffects 后停止。
pitch设置音效的音调,取值范围为 [0.5, 2]。默认值为 1.0,表示不需要修改音调。取值越小,则音调越低。
pan设置是否改变音效的空间位置。取值范围为 [-1.0, 1.0]:
  • 0.0:音效出现在正前方
  • 1.0:音效出现在左边
  • -1.0:音效出现在右边
gain设置是否改变单个音效的音量。取值范围为 [0.0, 100.0]。默认值为 100.0。取值越小,则音效的音量越低
返回
  • 0:方法调用成功
  • < 0:方法调用失败

◆ playEffect() [2/2]

int io.agora.rtc.IAudioEffectManager.playEffect ( int  soundId,
String  filePath,
int  loopCount,
double  pitch,
double  pan,
double  gain,
boolean  publish 
)

播放指定音效文件。 该方法播放指定的本地或在线音效文件。你可以在该方法中设置音效文件的播放次数、音调、音效的空间位置和增益,以及远端用户是否能听到该音效。

你可以多次调用该方法,通过传入不同的音效文件的 soundID 和 filePath,同时播放多个音效文件,实现音效叠加。为获得最佳用户体验,我们建议同时播放的音效文件不要超过 3 个。 调用该方法播放音效结束后,SDK 会触发 onAudioEffectFinished 回调。

参数
soundId指定音效的 ID。每个音效均有唯一的 ID。如果你已通过 preloadEffect 将音效加载至内存,确保这里的 soundID 与 preloadEffect 设置的 soundID 相同。
filePath指定要播放的音效文件的绝对路径或 URL 地址
loopCount设置音效循环播放的次数:
  • 0:播放音效一次
  • 1:播放音效两次
  • -1:无限循环播放音效,直至调用 stopEffectstopAllEffects 后停止。
pitch设置音效的音调,取值范围为 [0.5, 2]。默认值为 1.0,表示不需要修改音调。取值越小,则音调越低。
pan设置是否改变音效的空间位置。取值范围为 [-1.0, 1.0]:
  • 0.0:音效出现在正前方
  • 1.0:音效出现在右边
  • -1.0:音效出现在左边
gain设置是否改变单个音效的音量。取值范围为 [0.0, 100.0]。默认值为 100.0。取值越小,则音效的音量越低
publish设置是否将音效传到远端:
  • true:音效在本地播放的同时,会发布到 Agora 云上,因此远端用户也能听到该音效
  • false:音效不会发布到 Agora 云上,因此只能在本地听到该音效
返回
  • 0:方法调用成功
  • < 0:方法调用失败。

◆ stopEffect()

int io.agora.rtc.IAudioEffectManager.stopEffect ( int  soundId)

停止播放指定音效文件。

参数
soundId指定音效的 ID。每个音效均有唯一的 ID。如果你已通过 preloadEffect 将音效加载至内存,确保这里的 soundID 与 preloadEffect 设置的 soundID 相同。
返回
  • 0:方法调用成功
  • < 0:方法调用失败

◆ stopAllEffects()

int io.agora.rtc.IAudioEffectManager.stopAllEffects ( )

停止播放所有音效文件。

返回
  • 0:方法调用成功
  • <0:方法调用失败

◆ preloadEffect()

int io.agora.rtc.IAudioEffectManager.preloadEffect ( int  soundId,
String  filePath 
)

预加载音效文件。

为保证通信畅通,请注意控制预加载音效文件的大小,并在 joinChannel 前就使用该方法完成音效预加载。 音效文件支持以下音频格式:mp3,aac,m4a,3gp,wav。

注解
该方法不支持预加载在线音效文件。
参数
soundId指定音效的 ID。每个音效均有唯一的 ID
filePath音效文件的绝对路径
返回
  • 0:方法调用成功
  • < 0:方法调用失败

◆ unloadEffect()

int io.agora.rtc.IAudioEffectManager.unloadEffect ( int  soundId)

释放音效文件。

参数
soundId指定音效的 ID。每个音效均有唯一的 ID
返回
  • 0:方法调用成功
  • < 0:方法调用失败

◆ pauseEffect()

int io.agora.rtc.IAudioEffectManager.pauseEffect ( int  soundId)

暂停音效文件播放。

参数
soundId指定音效的 ID。每个音效均有唯一的 ID
返回
  • 0:方法调用成功
  • <0:方法调用失败

◆ pauseAllEffects()

int io.agora.rtc.IAudioEffectManager.pauseAllEffects ( )

暂停所有音效文件播放。

返回
  • 0:方法调用成功
  • < 0:方法调用失败

◆ resumeEffect()

int io.agora.rtc.IAudioEffectManager.resumeEffect ( int  soundId)

恢复播放指定音效文件。

参数
soundId指定音效的 ID。每个音效均有唯一的 ID
返回
  • 0:方法调用成功
  • < 0:方法调用失败。

◆ resumeAllEffects()

int io.agora.rtc.IAudioEffectManager.resumeAllEffects ( )

恢复播放所有音效文件。

返回
  • 0:方法调用成功
  • < 0:方法调用失败。