tencent cloud

实时音视频

动态与公告
产品动态
产品近期公告
关于 TRTC Live 正式上线的公告
关于TRTC Conference 正式版上线的公告
Conference 商业化版本即将推出
关于多人音视频 Conference 开启内测公告
关于音视频通话 Call 正式版上线的公告
关于腾讯云音视频终端 SDK 播放升级及新增授权校验的公告
关于 TRTC 应用订阅套餐服务上线的相关说明
产品简介
产品概述
基本概念
产品功能
产品优势
应用场景
性能数据
购买指南
计费概述
免费时长说明
月订阅
现收现付
TRTC 逾期与暂停政策
常见问题解答
退款说明
新手指引
Demo 体验
视频通话 SDK
组件介绍
开通服务
跑通 Demo
快速接入
离线唤醒
会话聊天
云端录制
AI 降噪
界面定制
Chat 集成通话能力
更多特性
无 UI 集成
服务端 API
客户端 API
解决方案
错误码表
发布日志
常见问题
视频会议 SDK
组件介绍(TUIRoomKit)
开通服务(TUIRoomKit)
跑通 Demo(TUIRoomKit)
快速接入(TUIRoomKit)
屏幕共享(TUIRoomKit)
预定会议(TUIRoomKit)
会中呼叫(TUIRoomKit)
界面定制(TUIRoomKit)
虚拟背景(TUIRoomKit)
会议控制(TUIRoomKit)
云端录制(TUIRoomKit)
AI 降噪(TUIRoomKit)
会中聊天(TUIRoomKit)
机器人推流(TUIRoomKit)
更多特性(TUIRoomKit)
客户端 API(TUIRoomKit)
服务端 API(TUIRoomKit)
常见问题(TUIRoomKit)
错误码 (TUIRoomKit)
SDK更新日志(TUIRoomKit)
直播与语聊 SDK
Live 视频直播计费说明
组件介绍
开通服务(TUILiveKit)
跑通 Demo
无 UI 集成
UI 自定义
直播监播
视频直播
语聊房
高级功能
客户端 API
服务端 API
错误码
发布日志
常见问题
RTC Engine
开通服务
SDK 下载
API-Example
接入指引
API-参考手册
高级功能
AI 集成
概述
MCP 配置
Skills 配置
集成指南
常见问题
RTC RESTFUL API
History
Introduction
API Category
Room Management APIs
Stream mixing and relay APIs
On-cloud recording APIs
Data Monitoring APIs
Pull stream Relay Related interface
Web Record APIs
AI Service APIs
Cloud Slicing APIs
Cloud Moderation APIs
Making API Requests
Call Quality Monitoring APIs
Usage Statistics APIs
Data Types
Appendix
Error Codes
控制台指南
应用管理
套餐包管理
用量统计
监控仪表盘
开发辅助
解决方案
实时合唱
常见问题
迁移指南
计费相关
功能相关
UserSig 相关
应对防火墙限制相关
缩减安装包体积相关
Andriod 与 iOS 相关
Web 端相关
Flutter 相关
Electron 相关
TRTCCalling Web 相关
音视频质量相关
其他问题
旧版文档
RTC RoomEngine SDK(旧)
集成 TUIRoom (Web)
集成 TUIRoom (Android)
集成 TUIRoom (iOS)
集成 TUIRoom (Flutter)
集成 TUIRoom (Electron)
TUIRoom API 查询
实现云端录制与回放(旧)
监控仪表盘计费(旧)
协议与策略
安全合规认证
安全白皮书
信息安全说明
服务等级协议
苹果隐私策略:PrivacyInfo.xcprivacy
TRTC 政策
隐私协议
数据处理和安全协议
词汇表

TXAudioEffectManager

PDF
聚焦模式
字号
最后更新时间: 2026-03-27 15:38:14
Copyright (c) 2021 Tencent. All rights reserved.

Module: 背景音乐、短音效和人声特效的管理类

Function: 用于对背景音乐、短音效和人声特效进行设置的管理类

TXAudioEffectManager

TXAudioEffectManager

函数列表
描述
开启耳返。
设置耳返音量。
设置人声的混响效果。
设置人声的变声特效。
设置语音音量。
设置语音音调。
开始播放背景音乐。
停止播放背景音乐。
暂停播放背景音乐。
恢复播放背景音乐。
设置所有背景音乐的本地音量和远端音量的大小。
设置某一首背景音乐的远端音量的大小。
设置某一首背景音乐的本地音量的大小。
调整背景音乐的音调高低。
调整背景音乐的变速效果。
获取背景音乐的播放进度(单位:毫秒)。
获取背景音乐的总时长(单位:毫秒)。
设置背景音乐的播放进度(单位:毫秒)。
调整搓碟的变速效果。
预加载背景音乐。
获取背景音乐的音轨数量。
指定背景音乐的播放音轨。

结构体类型

函数列表
描述
背景音乐的播放控制信息

枚举类型

枚举类型
描述
混响特效
变声特效

enableVoiceEarMonitor:

enableVoiceEarMonitor:
- (void)enableVoiceEarMonitor:
(BOOL)enable
开启耳返。
主播开启耳返后,可以在耳机里听到麦克风采集到的自己发出的声音,该特效适用于主播唱歌的应用场景中。

需要您注意的是,由于蓝牙耳机的硬件延迟非常高,所以在主播佩戴蓝牙耳机时无法开启此特效,请尽量在用户界面上提示主播佩戴有线耳机。
同时也需要注意,并非所有的手机开启此特效后都能达到优秀的耳返效果,我们已经对部分耳返效果不佳的手机屏蔽了该特效。
参数
描述
enable
YES:开启;NO:关闭。
注意
仅在主播佩戴耳机时才能开启此特效,同时请您提示主播佩戴有线耳机。

setVoiceEarMonitorVolume:

setVoiceEarMonitorVolume:
- (void)setVoiceEarMonitorVolume:
(NSInteger)volume
设置耳返音量。
通过该接口您可以设置耳返特效中声音的音量大小。
参数
描述
volume
音量大小,取值范围为 [0, 150],默认值:100。
注意
耳返的音量大小是影响用户耳返体验的重要因素之一,考虑到不同用户对音量的敏感度不同,强烈建议您在 UI 界面上开放耳返音量的调节滑杆,调节范围建议在 0~150 之间,其中 100~150 的增益效果对于部分采集音量较小的 Android 手机很有帮助。

setVoiceReverbType:

setVoiceReverbType:
- (void)setVoiceReverbType:
(TXVoiceReverbType)reverbType
设置人声的混响效果。
通过该接口您可以设置人声的混响效果,具体特效请参见枚举定义 TXVoiceReverbType
注意
设置的效果在退出房间后会自动失效,如果下次进房还需要对应特效,需要调用此接口再次进行设置。

setVoiceChangerType:

setVoiceChangerType:
- (void)setVoiceChangerType:
(TXVoiceChangeType)changerType
设置人声的变声特效。
通过该接口您可以设置人声的变声特效,具体特效请参见枚举定义 TXVoiceChangeType
注意
设置的效果在退出房间后会自动失效,如果下次进房还需要对应特效,需要调用此接口再次进行设置。

setVoiceVolume:

setVoiceVolume:
- (void)setVoiceVolume:
(NSInteger)volume
设置语音音量。
该接口可以设置语音音量的大小,一般配合音乐音量的设置接口 setAllMusicVolume 协同使用,用于调谐语音和音乐在混音前各自的音量占比。
参数
描述
volume
音量大小,取值范围为 [0 - 150],默认值:100。
注意
如果将 volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。

setVoicePitch:

setVoicePitch:
-(void)setVoicePitch:
(double)pitch
设置语音音调。
该接口可以设置语音音调,用于实现变调不变速的目的。
参数
描述
pitch
音调,取值范围[-1.0f, 1.0f],默认值:0.0f。

startPlayMusic:onStart:onProgress:onComplete:

startPlayMusic:onStart:onProgress:onComplete:
- (void)startPlayMusic:
(TXAudioMusicParam *)musicParam
onStart:
(TXAudioMusicStartBlock _Nullable)startBlock
onProgress:
(TXAudioMusicProgressBlock _Nullable)progressBlock
onComplete:
(TXAudioMusicCompleteBlock _Nullable)completeBlock
开始播放背景音乐。
每个音乐都需要您指定具体的 ID,您可以通过该 ID 对音乐的开始、停止、音量等进行设置。
参数
描述
completeBlock
播放结束回调。
musicParam
音乐参数。
progressBlock
播放进度回调。
startBlock
播放开始回调。
注意
1. 如果要多次播放同一首背景音乐,请不要每次播放都分配一个新的 ID,我们推荐使用相同的 ID。
2. 若您希望同时播放多首不同的音乐,请为不同的音乐分配不同的 ID 进行播放。
3. 如果使用同一个 ID 播放不同音乐,SDK 会先停止播放旧的音乐,再播放新的音乐。

stopPlayMusic:

stopPlayMusic:
- (void)stopPlayMusic:
(int32_t)id
停止播放背景音乐。
参数
描述
id
音乐 ID。

pausePlayMusic:

pausePlayMusic:
- (void)pausePlayMusic:
(int32_t)id
暂停播放背景音乐。
参数
描述
id
音乐 ID。

resumePlayMusic:

resumePlayMusic:
- (void)resumePlayMusic:
(int32_t)id
恢复播放背景音乐。
参数
描述
id
音乐 ID。

setAllMusicVolume:

setAllMusicVolume:
- (void)setAllMusicVolume:
(NSInteger)volume
设置所有背景音乐的本地音量和远端音量的大小。
该接口可以设置所有背景音乐的本地音量和远端音量。
本地音量:即主播本地可以听到的背景音乐的音量大小。
远端音量:即观众端可以听到的背景音乐的音量大小。
参数
描述
volume
音量大小,取值范围为 [0, 150],默认值:60。
注意
如果将 volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。

setMusicPublishVolume:volume:

setMusicPublishVolume:volume:
- (void)setMusicPublishVolume:
(int32_t)id
volume:
(NSInteger)volume
设置某一首背景音乐的远端音量的大小。
该接口可以细粒度地控制每一首背景音乐的远端音量,也就是观众端可听到的背景音乐的音量大小。
参数
描述
id
音乐 ID。
volume
音量大小,取值范围为 [0, 150];默认值:60。
注意
如果将 volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。

setMusicPlayoutVolume:volume:

setMusicPlayoutVolume:volume:
- (void)setMusicPlayoutVolume:
(int32_t)id
volume:
(NSInteger)volume
设置某一首背景音乐的本地音量的大小。
该接口可以细粒度地控制每一首背景音乐的本地音量,也就是主播本地可以听到的背景音乐的音量大小。
参数
描述
id
音乐 ID。
volume
音量大小,取值范围为 [0, 150],默认值:60。
注意
如果将 volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。

setMusicPitch:pitch:

setMusicPitch:pitch:
- (void)setMusicPitch:
(int32_t)id
pitch:
(double)pitch
调整背景音乐的音调高低。
参数
描述
id
音乐 ID。
pitch
音调,取值范围为 [-1.0f, 1.0f] 之间的浮点数,默认值:0.0f。

setMusicSpeedRate:speedRate:

setMusicSpeedRate:speedRate:
- (void)setMusicSpeedRate:
(int32_t)id
speedRate:
(double)speedRate
调整背景音乐的变速效果。
参数
描述
id
音乐 ID。
speedRate
速度,取值范围为 [0.5f, 2.0f] 之间的浮点数,默认值:1.0f。

getMusicCurrentPosInMS:

getMusicCurrentPosInMS:
- (NSInteger)getMusicCurrentPosInMS:
(int32_t)id
获取背景音乐的播放进度(单位:毫秒)。
参数
描述
id
音乐 ID。
返回值说明:
成功返回当前播放时间,单位:毫秒,失败返回 -1。

getMusicDurationInMS:

getMusicDurationInMS:
- (NSInteger)getMusicDurationInMS:
(NSString *)path
获取背景音乐的总时长(单位:毫秒)。
参数
描述
path
音乐文件路径。
返回值说明:
成功返回时长,失败返回 -1。

seekMusicToPosInMS:pts:

seekMusicToPosInMS:pts:
- (void)seekMusicToPosInMS:
(int32_t)id
pts:
(NSInteger)pts
设置背景音乐的播放进度(单位:毫秒)。
参数
描述
id
音乐 ID。
pts
单位: 毫秒。
注意
请尽量避免过度频繁地调用该接口,因为该接口可能会再次读写音乐文件,耗时稍高。
因此,当用户拖拽音乐的播放进度条时,请在用户完成拖拽操作后再调用本接口。
因为 UI 上的进度条控件往往会以很高的频率反馈用户的拖拽进度,如不做频率限制,会导致较差的用户体验。

setMusicScratchSpeedRate:speedRate:

setMusicScratchSpeedRate:speedRate:
- (void)setMusicScratchSpeedRate:
(int32_t)id
speedRate:
(double)scratchSpeedRate
调整搓碟的变速效果。
参数
描述
id
音乐 ID。
scratchSpeedRate
搓碟速度,取值范围为 [-12.0, 12.0] 之间的浮点数,默认值是 1.0f,速度值正/负表示方向正/反,绝对值大小表示速度快慢。
注意
前置条件 preloadMusic 成功。

preloadMusic:onProgress:onError:

preloadMusic:onProgress:onError:
- (void)preloadMusic:
(TXAudioMusicParam *)preloadParam
onProgress:
(TXMusicPreloadProgressBlock _Nullable)progressBlock
onError:
(TXMusicPreloadErrorBlock _Nullable)errorBlock
预加载背景音乐。
每个音乐都需要您指定具体的 ID,您可以通过该 ID 对音乐的开始、停止、音量等进行设置。
参数
描述
preloadParam
预加载音乐参数。
注意
1. 预先加载最多同时支持2个不同 ID 的预加载,且预加载时长不超过10分钟,使用完需调用 stopPlayMusic,否则内存不释放。
2. 若该ID对应的音乐正在播放中,预加载会失败,需先调用 stopPlayMusic
3. 当 musicParam 和传入 startPlayMusic musicParam 完全相同时,预加载有效。

getMusicTrackCount:

getMusicTrackCount:
- (NSInteger)getMusicTrackCount:
(int32_t)id
获取背景音乐的音轨数量。
参数
描述
id
音乐 ID。

setMusicTrack:track:

setMusicTrack:track:
- (void)setMusicTrack:
(int32_t)id
track:
(NSInteger)track
指定背景音乐的播放音轨。
参数
描述
id
音乐 ID。
index
默认播放第一个音轨。取值范围[0, 音轨总数)。
注意
音轨总数量可通过 getMusicTrackCount 接口获取。

TXVoiceReverbType

TXVoiceReverbType
混响特效
混响特效可以作用于人声之上,通过声学算法对声音进行叠加处理,模拟出各种不同环境下的临场感受,目前支持如下几种混响效果:
0:关闭;1:KTV;2:小房间;3:大会堂;4:低沉;5:洪亮;6:金属声;7:磁性;8:空灵;9:录音棚;10:悠扬;11:录音棚2;
枚举
取值
描述
TXVoiceReverbType_0
0
关闭特效
TXVoiceReverbType_1
1
KTV
TXVoiceReverbType_2
2
小房间
TXVoiceReverbType_3
3
大会堂
TXVoiceReverbType_4
4
低沉
TXVoiceReverbType_5
5
洪亮
TXVoiceReverbType_6
6
金属声
TXVoiceReverbType_7
7
磁性
TXVoiceReverbType_8
8
空灵
TXVoiceReverbType_9
9
录音棚
TXVoiceReverbType_10
10
悠扬
TXVoiceReverbType_11
11
录音棚2

TXVoiceChangeType

TXVoiceChangeType
变声特效
变声特效可以作用于人声之上,通过声学算法对人声进行二次处理,以获得与原始声音所不同的音色,目前支持如下几种变声特效:
0:关闭;1:熊孩子;2:萝莉;3:大叔;4:重金属;5:感冒;6:外语腔;7:困兽;8:肥宅;9:强电流;10:重机械;11:空灵;12:猪八戒;13:绿巨人;
枚举
取值
描述
TXVoiceChangeType_0
0
关闭
TXVoiceChangeType_1
1
熊孩子
TXVoiceChangeType_2
2
萝莉
TXVoiceChangeType_3
3
大叔
TXVoiceChangeType_4
4
重金属
TXVoiceChangeType_5
5
感冒
TXVoiceChangeType_6
6
外语腔
TXVoiceChangeType_7
7
困兽
TXVoiceChangeType_8
8
肥宅
TXVoiceChangeType_9
9
强电流
TXVoiceChangeType_10
10
重机械
TXVoiceChangeType_11
11
空灵
TXVoiceChangeType_12
12
猪八戒
TXVoiceChangeType_13
13
绿巨人

TXAudioMusicParam

TXAudioMusicParam
背景音乐的播放控制信息
该信息用于在接口 startPlayMusic 中指定背景音乐的相关信息,包括播放 ID、文件路径和循环次数等:
1. 如果要多次播放同一首背景音乐,请不要每次播放都分配一个新的 ID,我们推荐使用相同的 ID。
2. 若您希望同时播放多首不同的音乐,请为不同的音乐分配不同的 ID 进行播放。
3. 如果使用同一个 ID 播放不同音乐,SDK 会先停止播放旧的音乐,再播放新的音乐。
枚举类型
描述
ID
【字段含义】音乐 ID。
【特殊说明】SDK 允许播放多路音乐,因此需要使用 ID 进行标记,用于控制音乐的开始、停止、音量等。
endTimeMS
【字段含义】音乐结束播放时间点,单位毫秒,0表示播放至文件结尾。
isShortFile
【字段含义】播放的是否为短音乐文件。
【推荐取值】YES:需要重复播放的短音乐文件;NO:正常的音乐文件。默认值:NO。
loopCount
【字段含义】音乐循环播放的次数。
【推荐取值】取值范围为 [0, 任意正整数],默认值:0。0 表示播放音乐一次;1 表示播放音乐两次;以此类推。
path
【字段含义】音效文件的完整路径或 URL 地址。支持的音频格式包括 MP3、AAC、M4A、WAV。
publish
【字段含义】是否将音乐传到远端。
【推荐取值】YES:音乐在本地播放的同时,远端用户也能听到该音乐;NO:主播只能在本地听到该音乐,远端观众听不到。默认值:YES。
startTimeMS
【字段含义】音乐开始播放时间点,单位:毫秒。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈