Tencent Cloud Audio Effect Management Module
Module: TRTC 背景音乐、短音效和人声特效的管理类 Function: 用于对背景音乐、短音效和人声特效进行设置的管理类
◆ liteav::ITXMusicPlayObserver
class liteav::ITXMusicPlayObserver |
◆ ~ITXMusicPlayObserver()
◆ onComplete()
virtual void onComplete |
( |
int |
id, |
|
|
int |
errCode |
|
) |
| |
|
pure virtual |
◆ onPlayProgress()
virtual void onPlayProgress |
( |
int |
id, |
|
|
long |
curPtsMS, |
|
|
long |
durationMS |
|
) |
| |
|
pure virtual |
◆ onStart()
virtual void onStart |
( |
int |
id, |
|
|
int |
errCode |
|
) |
| |
|
pure virtual |
◆ liteav::AudioMusicParam
class liteav::AudioMusicParam |
◆ AudioMusicParam()
◆ endTimeMS
【字段含义】音乐结束播放时间点,单位毫秒,0表示播放至文件结尾。
◆ id
【字段含义】音乐 ID
【特殊说明】SDK 允许播放多路音乐,因此需要使用 ID 进行标记,用于控制音乐的开始、停止、音量等。
◆ isShortFile
【字段含义】播放的是否为短音乐文件
【推荐取值】true:需要重复播放的短音乐文件;false:正常的音乐文件。默认值:false
◆ loopCount
【字段含义】音乐循环播放的次数
【推荐取值】取值范围为0 - 任意正整数,默认值:0。0表示播放音乐一次;1表示播放音乐两次;以此类推
◆ path
【字段含义】音效文件的完整路径或 URL 地址。支持的音频格式包括 MP3、AAC、M4A、WAV
◆ publish
【字段含义】是否将音乐传到远端
【推荐取值】true:音乐在本地播放的同时,远端用户也能听到该音乐;false:主播只能在本地听到该音乐,远端观众听不到。默认值:false。
◆ startTimeMS
◆ liteav::ITXAudioEffectManager
class liteav::ITXAudioEffectManager |
◆ ITXAudioEffectManager()
◆ ~ITXAudioEffectManager()
◆ getMusicCurrentPosInMS()
virtual long getMusicCurrentPosInMS |
( |
int |
id | ) |
|
|
pure virtual |
获取背景音乐的播放进度(单位:毫秒)
- 参数
-
- 返回
- 成功返回当前播放时间,单位:毫秒,失败返回-1
◆ getMusicDurationInMS()
virtual long getMusicDurationInMS |
( |
char * |
path | ) |
|
|
pure virtual |
获取背景音乐的总时长(单位:毫秒)
- 参数
-
- 返回
- 成功返回时长,失败返回-1
◆ pausePlayMusic()
virtual void pausePlayMusic |
( |
int |
id | ) |
|
|
pure virtual |
◆ resumePlayMusic()
virtual void resumePlayMusic |
( |
int |
id | ) |
|
|
pure virtual |
◆ seekMusicToPosInTime()
virtual void seekMusicToPosInTime |
( |
int |
id, |
|
|
int |
pts |
|
) |
| |
|
pure virtual |
设置背景音乐的播放进度(单位:毫秒)
- 注意
- 请尽量避免过度频繁地调用该接口,因为该接口可能会再次读写音乐文件,耗时稍高。 因此,当用户拖拽音乐的播放进度条时,请在用户完成拖拽操作后再调用本接口。 因为 UI 上的进度条控件往往会以很高的频率反馈用户的拖拽进度,如不做频率限制,会导致较差的用户体验。
- 参数
-
◆ setAllMusicVolume()
virtual void setAllMusicVolume |
( |
int |
volume | ) |
|
|
pure virtual |
设置所有背景音乐的本地音量和远端音量的大小
该接口可以设置所有背景音乐的本地音量和远端音量。
- 本地音量:即主播本地可以听到的背景音乐的音量大小。
- 远端音量:即观众端可以听到的背景音乐的音量大小。
- 参数
-
volume | 音量大小,取值范围为0 - 100,默认值:100。 |
- 注意
- 如果将 volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。
◆ setMusicObserver()
设置背景音乐的事件回调接口
请在播放背景音乐之前使用该接口设置播放事件回调,以便感知背景音乐的播放进度。
- 参数
-
musicId | 音乐 ID |
observer | 具体参考 ITXMusicPlayObserver 中定义接口 |
◆ setMusicPitch()
virtual void setMusicPitch |
( |
int |
id, |
|
|
float |
pitch |
|
) |
| |
|
pure virtual |
调整背景音乐的音调高低
- 参数
-
id | 音乐 ID |
pitch | 音调,默认值是0.0f,范围是:[-1 ~ 1] 之间的浮点数; |
◆ setMusicPlayoutVolume()
virtual void setMusicPlayoutVolume |
( |
int |
id, |
|
|
int |
volume |
|
) |
| |
|
pure virtual |
设置某一首背景音乐的本地音量的大小
该接口可以细粒度地控制每一首背景音乐的本地音量,也就是主播本地可以听到的背景音乐的音量大小。
- 参数
-
id | 音乐 ID |
volume | 音量大小,取值范围为0 - 100,默认值:100。 |
- 注意
- 如果将 volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。
◆ setMusicPublishVolume()
virtual void setMusicPublishVolume |
( |
int |
id, |
|
|
int |
volume |
|
) |
| |
|
pure virtual |
设置某一首背景音乐的远端音量的大小
该接口可以细粒度地控制每一首背景音乐的远端音量,也就是观众端可听到的背景音乐的音量大小。
- 参数
-
id | 音乐 ID |
volume | 音量大小,取值范围为0 - 100;默认值:100 |
- 注意
- 如果将 volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。
◆ setMusicSpeedRate()
virtual void setMusicSpeedRate |
( |
int |
id, |
|
|
float |
speedRate |
|
) |
| |
|
pure virtual |
调整背景音乐的变速效果
- 参数
-
id | 音乐 ID |
speedRate | 速度,默认值是1.0f,范围是:[0.5 ~ 2] 之间的浮点数; |
◆ setVoiceCaptureVolume()
virtual void setVoiceCaptureVolume |
( |
int |
volume | ) |
|
|
pure virtual |
设置语音音量
该接口可以设置语音音量的大小,一般配合音乐音量的设置接口 setAllMusicVolume 协同使用,用于调谐语音和音乐在混音前各自的音量占比。
- 参数
-
volume | 音量大小,取值范围为0 - 100,默认值:100。 |
- 注意
- 如果将 volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。
◆ setVoicePitch()
virtual void setVoicePitch |
( |
double |
pitch | ) |
|
|
pure virtual |
设置语音音调
该接口可以设置语音音调,用于实现变调不变速的目的。
- 参数
-
pitch | 音调,取值范围为-1.0f~1.0f,默认值:0.0f。 |
◆ setVoiceReverbType()
设置人声的混响效果
通过该接口您可以设置人声的混响效果,具体特效请参考枚举定义TXVoiceReverbType。
- 注意
- 设置的效果在退出房间后会自动失效,如果下次进房还需要对应特效,需要调用此接口再次进行设置。
◆ startPlayMusic()
开始播放背景音乐
每个音乐都需要您指定具体的 ID,您可以通过该 ID 对音乐的开始、停止、音量等进行设置。
- 注意
- 如果要多次播放同一首背景音乐,请不要每次播放都分配一个新的 ID,我们推荐使用相同的 ID。
- 若您希望同时播放多首不同的音乐,请为不同的音乐分配不同的 ID 进行播放。
- 如果使用同一个 ID 播放不同音乐,SDK 会先停止播放旧的音乐,再播放新的音乐。
- 参数
-
musicParam | 音乐参数 |
startBlock | 播放开始回调 |
progressBlock | 播放进度回调 |
completeBlock | 播放结束回调 |
◆ stopPlayMusic()
virtual void stopPlayMusic |
( |
int |
id | ) |
|
|
pure virtual |
◆ __ITXAUDIOEFFECTMANAGER_H__
#define __ITXAUDIOEFFECTMANAGER_H__ |