开发者中心
语音通话
API 参考
Agora Unity API Reference for All Platforms
Agora Unity SDK API Reference
继承自 agora_gaming_rtc.IAudioEffectManager .
◆ GetEffectsVolume()
override double agora_gaming_rtc.AudioEffectManagerImpl.GetEffectsVolume |
( |
| ) |
|
获取音效文件的播放音量。
音量范围为 0~100。100 (默认值)为原始文件音量。
- 注解
- 该方法需要在 PlayEffect 后调用。
- 返回
- ≥ 0: 方法调用成功则返回音效文件的音量。
- < 0: 方法调用失败。
◆ SetEffectsVolume()
override int agora_gaming_rtc.AudioEffectManagerImpl.SetEffectsVolume |
( |
int |
volume | ) |
|
设置音效文件的播放音量。
- 注解
- 该方法需要在 PlayEffect 后调用。
- 参数
-
volume | 该方法设置音效的音量。音量范围为 0~100。100 (默认值)为原始文件音量。 |
- 返回
-
◆ PlayEffect()
override int agora_gaming_rtc.AudioEffectManagerImpl.PlayEffect |
( |
int |
soundId, |
|
|
string |
filePath, |
|
|
int |
loopCount, |
|
|
double |
pitch = 1.0D , |
|
|
double |
pan = 0.0D , |
|
|
int |
gain = 100 , |
|
|
bool |
publish = false |
|
) |
| |
播放指定音效文件。
你可以多次调用该方法,通过传入不同的音效文件的 soundId
和 filePath
,同时播放多个音效文件,实现音效叠加。为获得最佳用户体验,我们建议同时播放的音效文件不要超过 3 个。
- 注解
- 如果你已通过 PreloadEffect 将音效加载至内存,确保这里设置的
soundId
与 PreloadEffect
设置的 soundId
相同。
- 在 macOS 和 Windows 上,该方法不支持同时播放多个在线音效文件。
- 该方法需要在加入频道后调用。
- 参数
-
soundId | 指定音效的 ID。每个音效均有唯一的 ID。 |
filePath | 音效文件的绝对路径或 URL 地址,例如:c:\music\audio.mp4。建议填写文件后缀名。若无法确定文件后缀名,可不填。支持的音频格式包括:mp3、mp4、m4a、aac、3gp、mkv 及 wav。 |
loopCount | 设置音效循环播放的次数:
|
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 云端,因此只能在本地听到该音效。
|
- 返回
-
◆ StopEffect()
override int agora_gaming_rtc.AudioEffectManagerImpl.StopEffect |
( |
int |
soundId | ) |
|
停止播放指定音效文件。
- 参数
-
soundId | 指定音效文件的 ID。每个音效文件均有唯一的 ID。 |
- 返回
-
◆ StopAllEffects()
override int agora_gaming_rtc.AudioEffectManagerImpl.StopAllEffects |
( |
| ) |
|
◆ PreloadEffect()
override int agora_gaming_rtc.AudioEffectManagerImpl.PreloadEffect |
( |
int |
soundId, |
|
|
string |
filePath |
|
) |
| |
将音效文件加载至内存。
将音效文件加载至内存。为保证通信畅通,请注意控制预加载音效文件的大小,并在 JoinChannelByKey 前就使用该方法完成音效预加载。音频文件支持以下音频格式: mp3、aac、m4a、3gp,和 wav。
- 注解
- 该方法不支持在线音频文件。
- 参数
-
soundId | 指定音效文件的 ID。每个音效文件均有唯一的 ID。 |
filePath | 音效文件的绝对路径。 |
- 返回
-
◆ UnloadEffect()
override int agora_gaming_rtc.AudioEffectManagerImpl.UnloadEffect |
( |
int |
soundId | ) |
|
从内存释放某个预加载的音效文件。
- 参数
-
soundId | 指定音效文件的 ID。每个音效文件均有唯一的 ID。 |
- 返回
-
◆ PauseEffect()
override int agora_gaming_rtc.AudioEffectManagerImpl.PauseEffect |
( |
int |
soundId | ) |
|
暂停音效文件播放。
- 参数
-
soundId | 指定音效文件的 ID。每个音效文件均有唯一的 ID。 |
- 返回
-
◆ PauseAllEffects()
override int agora_gaming_rtc.AudioEffectManagerImpl.PauseAllEffects |
( |
| ) |
|
◆ ResumeEffect()
override int agora_gaming_rtc.AudioEffectManagerImpl.ResumeEffect |
( |
int |
soundId | ) |
|
恢复播放指定音效文件。
- 参数
-
soundId | 指定音效文件的 ID。每个音效文件均有唯一的 ID。 |
- 返回
-
◆ ResumeAllEffects()
override int agora_gaming_rtc.AudioEffectManagerImpl.ResumeAllEffects |
( |
| ) |
|
◆ SetVoiceOnlyMode()
override int agora_gaming_rtc.AudioEffectManagerImpl.SetVoiceOnlyMode |
( |
bool |
enable | ) |
|
该方法设置仅限语音模式,即仅传输语音流,而不传输其他流,例如,敲键盘的声音等。
- 参数
-
- 返回
-
◆ SetRemoteVoicePosition()
override int agora_gaming_rtc.AudioEffectManagerImpl.SetRemoteVoicePosition |
( |
uint |
uid, |
|
|
double |
pan, |
|
|
double |
gain |
|
) |
| |
设置远端用户的语音位置。
设置远端用户声音的空间位置和音量,方便本地用户听声辨位。通过调用该接口设置远端用户声音出现的位置,左右声道的声音差异会产生声音的方位感,从而判断出远端用户的实时位置。在多人在线游戏场景,如吃鸡游戏中,该方法能有效增加游戏角色的方位感,模拟真实场景。
- 注解
-
- 参数
-
uid | 远端用户的 ID。 |
pan | 设置远端用户声音的空间位置,取值范围为 [-1.0,1.0]:
- 0.0: (默认)声音出现在正前方。
- -1.0: 声音出现在左边。
- 1.0: 声音出现在右边。
|
gain | 设置远端用户声音的音量,取值范围为 [0.0,100.0],默认值为 100.0,表示该用户的原始音量。取值越小,则音量越低。 |
- 返回
-
◆ SetLocalVoicePitch()
override int agora_gaming_rtc.AudioEffectManagerImpl.SetLocalVoicePitch |
( |
double |
pitch | ) |
|
设置本地语音音调。
- 注解
- 该方法在加入频道前后都能调用。
- 参数
-
pitch | 语音频率可以 [0.5,2.0] 范围内设置。取值越小,则音调越低。默认值为 1.0,表示不需要修改音调。 |
- 返回
-