产品动态
产品近期公告
关于 TRTC Live 正式上线的公告
关于TRTC Conference 正式版上线的公告
Conference 商业化版本即将推出
关于多人音视频 Conference 开启内测公告
关于音视频通话 Call 正式版上线的公告
关于腾讯云音视频终端 SDK 播放升级及新增授权校验的公告
关于 TRTC 应用订阅套餐服务上线的相关说明

Podfile文件,添加以下内容:Podfile文件,请先执行pod init命令新建文件再添加以下内容。target 'Your Project' dopod 'TXLiteAVSDK_TRTC'end
pod install
Info.plist文件中添加摄像头和麦克风的申请权限:Key | Value |
Privacy - Camera Usage Description | 描述使用摄像头权限的原因,例如,需要访问您的相机权限,开启后视频聊天才会有画面 |
Privacy - Microphone Usage Description | 描述使用麦克风权限的原因,例如,需要访问您的麦克风权限,开启后聊天才会有声音 |
TRTCCloud实例。// 创建 trtcCloud 实例_trtcCloud = [TRTCCloud sharedInstance];_trtcCloud.delegate = self;
delegate属性注册事件回调,并监听相关事件和错误通知。// 错误通知是要监听的,需要捕获并通知用户- (void)onError:(TXLiteAVError)errCode errMsg:(NSString *)errMsg extInfo:(NSDictionary *)extInfo {if (ERR_ROOM_ENTER_FAIL == errCode) {[self toastTip:@"进房失败"];[self.trtcCloud exitRoom];}}
参数名称 | 字段类型 | 补充说明 | 填写示例 |
sdkAppId | 数字 | 1400000123 | |
userId | 字符串 | 只允许包含大小写英文字母(a-z、A-Z)、数字(0-9)及下划线和连词符。建议结合业务实际账号体系自行设置。 | test_user_001 |
userSig | 字符串 | eJyrVareCeYrSy1SslI... | |
roomId | 数字 | 数字类型的房间号。如果您想使用字符串形式的房间号,请使用 TRTCParams 中的 strRoomId。 | 29834 |
//示例代码:发布本地的音视频流[self.trtcCloud startLocalPreview:_isFrontCamera view:self.view];//设置本地视频编码参数TRTCVideoEncParam *encParams = [TRTCVideoEncParam new];encParams.videoResolution = TRTCVideoResolution_640_360;encParams.videoBitrate = 550;encParams.videoFps = 15;[self.trtcCloud setVideoEncoderParam:encParams];
role为 **TRTCRoleType.anchor**,表示当前用户的角色为主播。roomId的值为房间号的音视频房间,并指定**appScene**参数:result大于0时表示进房成功,具体数值为加入房间所消耗的时间,单位为毫秒(ms);当result小于0时表示进房失败,具体数值为进房失败的错误码。- (void)enterRoom() {TRTCParams *params = [TRTCParams new];params.sdkAppId = SDKAppID;params.roomId = _roomId;params.userId = _userId;params.role = TRTCRoleAnchor;params.userSig = [GenerateTestUserSig genTestUserSig:params.userId];[self.trtcCloud enterRoom:params appScene:TRTCAppSceneLIVE];}- (void)onEnterRoom:(NSInteger)result {if (result > 0) {[self toastTip:@"进房成功"];} else {[self toastTip:@"进房失败"];}}
role为**TRTCRoleType.audience**,表示当前用户的角色为观众。roomId代指的音视频房间,并指定**appScene**参数:userId调用 startRemoteView(userId, view: view) 即可显示主播的画面。userId调用 startRemoteView(userId, view: view) 便可显示主播的画面。//示例代码:观众上麦[self.trtcCloud switchRole:TRTCRoleAnchor];[self.trtcCloud startLocalAudio:TRTCAudioQualityMusic];[self.trtcCloud startLocalPreview:_isFrontCamera view:self.view];//示例代码:观众下麦[self.trtcCloud switchRole:TRTCRoleAudience];[self.trtcCloud stopLocalAudio];[self.trtcCloud stopLocalPreview];
roomId和userId拼装成格式为{"roomId": "978","userId": "userB"}的参数传递给接口函数。connectOtherRoom()与房间“002”中的主播 B 拉通跨房通话后, 房间“001”中的用户会收到主播 B 的onUserVideoAvailable(B, available: true)回调和onUserAudioAvailable(B, available: true)回调。 房间“002”中的用户会收到主播 A 的onUserVideoAvailable(A, available: true) 回调和onUserAudioAvailable(A, available: true)回调。//示例代码:跨房连麦 PKNSMutableDictionary * jsonDict = [[NSMutableDictionary alloc] init];[jsonDict setObject:@([_otherRoomIdTextField.text intValue]) forKey:@"roomId"];[jsonDict setObject:_otherUserIdTextField.text forKey:@"userId"];NSData* jsonData = [NSJSONSerialization dataWithJSONObject:jsonDict options:NSJSONWritingPrettyPrinted error:nil];NSString* jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];[self.trtcCloud connectOtherRoom:jsonString];
// 调用退房后请等待 onExitRoom 事件回调[self.trtcCloud exitRoom];- (void)onExitRoom:(NSInteger)reason {NSLog(@"离开房间: reason: %ld", reason)}
onExitRoom回调后再启动其它音视频 SDK,否则可能会遇到硬件占用问题。文档反馈