Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >iOS音视频接入 - TRTC多人视频会议

iOS音视频接入 - TRTC多人视频会议

原创
作者头像
小明同学接音视频
修改于 2020-10-16 02:15:13
修改于 2020-10-16 02:15:13
2.5K00
代码可运行
举报
运行总次数:0
代码可运行

简介

多人在线视频会议指的是多人同时在网络上进行近距离的面对面的会议。

TRTC多人视频会议可提供的功能

  1. 单房间支持300人同时在线,50人同时开麦或开摄像头
  2. 屏幕分享
  3. 美颜
  4. 音频录制
  5. 视频多分辨率/帧率/码率选择
  6. 支持全体静音/静画及解除

可复用的官方Demo

官方SDK中提供了可复用的UI和封装了TRTCCloud的model,具体位置见下图。

多人视频会议官方Demo
多人视频会议官方Demo

Demo内UI文件夹内文件功能一览表,可根据自己实际的情况修改。

文件或文件夹

功能描述

SegmentVC

设置界面相关 UI 实现代码。

TRTCBroadcastExtensionLauncher.swift

录屏弹窗相关 UI 实现代码。

TRTCMeetingNewViewController

视频会议创建界面 UI 实现代码。

TRTCMeetingMainViewController

视频房间界面 UI 实现代码。

TRTCMeetingMemberViewController

成员列表界面 UI 实现代码。

TRTCMeetingMoreViewController

设置界面相关 UI 实现代码。

集成步骤

第一步:导入所需SDK

我们在实际开发中可使用官方的Demo复用TRTCMeeting组件(也就是model文件夹内的文件)。

代码语言:ruby
AI代码解释
复制
pod 'TXIMSDK_iOS'
pod 'TXLiteAVSDK_TRTC'

第二步:配置隐私权限

向系统申请使用权限,在info.plist文件中添加一下两个key和对应的描述:

key

描述

Privacy - Camera Usage Description

App需要使用摄像头权限,开启后才会有视频画面

Privacy - Microphone Usage Description

App需要使用麦克风权限,开启后才会有语音信息

第三步:复用组件

将官方Demo中的model文件夹拖入自己的工程内部即可。如有头文件导入报错,请在工程内部的PCH文件导入所需SDK的头文件即可。

第四步:创建并登录组件

  1. 调用sharedInstance接口可以创建一个 TRTCMeeting 组件的实例对象。
  2. 调用setDelegate函数注册组件的事件通知。
  3. 调用login函数完成组件的登录,请参考下表填写关键参数:参数名作用sdkAppId您可以在 实时音视频控制台 中查看 SDKAppID。userId当前用户的 ID,字符串类型,只允许包含英文字母(a-z、A-Z)、数字(0-9)、连词符(-)和下划线(_)。userSig腾讯云设计的一种安全保护签名,获取方式请参考 如何计算 UserSig。callback登录回调,成功时 code 为0。

参数名

作用

sdkAppId

您可以在 实时音视频控制台 中查看 SDKAppID。

userId

当前用户的 ID,字符串类型,只允许包含英文字母(a-z、A-Z)、数字(0-9)、连词符(-)和下划线(_)。

userSig

腾讯云设计的一种安全保护签名,获取方式请参考 如何计算 UserSig。

callback

登录回调,成功时 code 为0。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    [[TRTCMeeting sharedInstance] login:SDKAPPID userId:userID userSig:userSig callback:^(NSInteger code, NSString *message) {
       
    }];

组件登录成功后,我们就可以开始创建多人会议了。

通过Demo查看多人会议实现过程

一、登录组件

1. TRTCMeeting组件的登录是在PortalViewController内实现,在跳转多人视频会议控制器前调用登录组件方法

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- (void)gotoMeetingView {
    NSString *userID = [[ProfileManager shared] curUserID];
    NSString *userSig = [[ProfileManager shared] curUserSig];
    //初始话TRTC会议  传入APPID  用户ID 用户签名
    [[TRTCMeeting sharedInstance] login:SDKAPPID userId:userID userSig:userSig callback:^(NSInteger code, NSString *message) {
       
    }];
    TRTCMeetingNewViewController *vc = [[TRTCMeetingNewViewController alloc] init];
    [self.navigationController pushViewController:vc animated:YES];
}

2. 组件登录成功后,可以在相应的控制器内使用组件进行创建会议室

二、创建会议室

1. 房主在创建会议室前需要设置用户的头像、名称、设置音质、音量计算、开启麦克风和摄像头、开始音频采集、设置本地是否静音、设置美颜参数(需要美颜功能时)、设置本地画面镜像预览模式、本地音、视频推流。注意:只有企业版SDK支持变脸和贴图挂件功能。

代码语言:swift
AI代码解释
复制
// 设置音质(需要在startMicrophone前设置)
TRTCMeeting.sharedInstance().setAudioQuality(TRTCAudioQuality(rawValue: startConfig.audioQuality)!)
        
// 开启音量计算
TRTCMeeting.sharedInstance().enableAudioEvaluation(true)
        
// 开启摄像头和麦克风
if startConfig.isVideoOn {
    AppUtils.shared.alertUserTips(self)
    let localPreviewView = getRenderView(userId: selfUserId)!
    TRTCMeeting.sharedInstance().startCameraPreview(true, view: localPreviewView)
}
TRTCMeeting.sharedInstance().startMicrophone();
TRTCMeeting.sharedInstance().muteLocalAudio(!startConfig.isAudioOn)
        
// 使用默认的美颜参数
beautyPannel.resetAndApplyValues()
        
// 开启镜像
TRTCMeeting.sharedInstance().setLocalViewMirror(TRTCLocalVideoMirrorType.enable)

2. 在创建会议前要先设置好TRTCMeeting代理,以接收回调信息,TRTCMeeting详细API点这里,以后就可以开始创建房间

代码语言:objective-c
AI代码解释
复制
/**
 * 创建会议(房主调用)
 *
 * @param roomId 房间标识,需要由您分配并进行统一管理。
 * @param callback 创建房间的结果回调,成功时 code 为0.
 */
- (void)createMeeting:(UInt32)roomId callback:(TRTCMeetingCallback)callback;

3. 调用创建房间时,IM首先创建一个AVChatRoom的群组,在群组创建成功后,此时房主会以主播的角色进入房间,在进入房间前还需要设置视频编码信息

创建一个AVChatRoom的群组

代码语言:objective-c
AI代码解释
复制
    TIMCreateGroupInfo *groupInfomation = [[TIMCreateGroupInfo alloc] init];
    groupInfomation.groupType = @"ChatRoom";
    groupInfomation.groupName = roomInfo;
    groupInfomation.faceURL = coverUrl;
    groupInfomation.group = roomId;
    
    [V2TIMManager.sharedInstance createGroup:@"AVChatRoom" groupID:roomId groupName:roomInfo succ:^(NSString *groupID) {
        self.mIsEnterRoom = true;
        self.mRoomId = roomId;
        self.mOwnerUserId = self.mSelfUserId;
        
        if (callback) {
            callback(0, @"create room success.");
        }
        
    } fail:^(int code, NSString *desc) {
        
    }];

设置视频编码信息

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    TRTCVideoEncParam *param = [[TRTCVideoEncParam alloc] init];
    param.videoResolution = _videoResolution;
    param.videoBitrate = _videoBitrate;
    param.videoFps = _videoFPS;
    param.resMode = TRTCVideoResolutionModePortrait;
    
    [[TRTCCloud sharedInstance] setVideoEncoderParam:param];

房主进房

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    TRTCParams *params = [[TRTCParams alloc] init];
    params.sdkAppId = self.sdkAppId;
    params.userId = self.userId;
    params.roomId = self.roomId;
    params.userSig = self.userSig;
    params.role = TRTCRoleAnchor; // 主播角色
    params.streamId = self.streamId;
    
    [[TRTCCloud sharedInstance] enterRoom:params appScene:TRTCAppSceneLIVE];

具体过程可以归结为下图所示

主持端
主持端

此时房间已经创建好,等待参会人员进入。

三、加入会议室

1. 加入会议前也需要做一些与房主相同的设置工作,并且需要知道所加入会议的ID,在Demo中将创建和加入会议室的逻辑写在了一起,先去创建会议室,如果会议室创建失败就直接进入会议室。

代码语言:swift
AI代码解释
复制
    func createOrEnterMeeting() {
        TRTCMeeting.sharedInstance().delegate = self;
        
        let roomId = UInt32(startConfig.roomId)
        TRTCMeeting.sharedInstance().createMeeting(roomId) { (code, msg) in
            if code == 0 {
                // 创建房间成功
                self.view.makeToast("会议创建成功")
                return;
            }
            
            // 会议创建不成功,表示会议已经存在,那就直接进入会议
            TRTCMeeting.sharedInstance().enter(roomId) { (code, msg) in
                if code == 0{
                    self.view.makeToast("会议进入成功")
                } else {
                    self.view.makeToast("会议进入失败:" + msg!)
                }
            }
        }
    }

2. 在调用进入会议室方法后做了哪些操作呢? 首先,IM加入房主创建的AVChatRoom的群组,再加入成功后获取群组资料,其次,TRTC进房,参会人员同样以主播的角色进入房间。

加入AVChatRoom的群组并获取群资料

代码语言:objective-c
AI代码解释
复制
- (void)enterRoom:(NSString *)roomId callback:(TXCallback)callback {
    [V2TIMManager.sharedInstance joinGroup:roomId msg:@"" succ:^{
        NSArray *groupArray = [[NSArray alloc] initWithObjects:roomId, nil];
        [V2TIMManager.sharedInstance getGroupsInfo:groupArray succ:^(NSArray<V2TIMGroupInfoResult *> *groupResultList) {
            V2TIMGroupInfoResult *result = [groupResultList objectAtIndex:0];
            if (result) {
                self.mRoomId = roomId;
                self.mIsEnterRoom = true;
                self.mOwnerUserId = result.info.owner;
                
                if (callback) {
                    callback(0, @"enter room success.");
                }
            } else {
                if (callback) {
                    callback(-1, @"groupResultList is null");
                }
            }
            
        } fail:^(int code, NSString *desc) {
            if (callback) {
                callback(-1, [NSString stringWithFormat:@"getGroupsInfo error, enter room fail. code: %d msg:%@", code, desc]);
            }
        }];
        
    } fail:^(int code, NSString *desc) {
 
    }];
}

TRTC进房

代码语言:objective-c
AI代码解释
复制
    TRTCParams *params = [[TRTCParams alloc] init];
    params.sdkAppId = self.sdkAppId;
    params.userId = self.userId;
    params.roomId = self.roomId;
    params.userSig = self.userSig;
    params.role = TRTCRoleAnchor; // 主播角色
    params.streamId = self.streamId;
    
    [[TRTCCloud sharedInstance] enterRoom:params appScene:TRTCAppSceneLIVE];

参会人员流程实现

参会人员
参会人员

在有参会人员进入会议室后,主持端TRTCMeeting会回调

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- (void)onUserEnterRoom:(NSString *)userId;

在回调内部需要为该用户设置主持为全部人员设置的是否全体静音,并获取参会人员信息,

参会人员开启/关闭摄像头,会回调

代码语言:objective-c
AI代码解释
复制
- (void)onUserVideoAvailable:(NSString *)userId available:(BOOL)available;

可在此回调方法内部通过

代码语言:objective-c
AI代码解释
复制
/**
 * 播放远端视频画面
 *
 * @param userId 需要观看的用户id
 * @param view 承载视频画面的 view 控件
 * @param callback 操作回调
 * @note 在 onUserVideoAvailable 为 true 回调时,调用这个接口
 */
- (void)startRemoteView:(NSString *)userId view:(UIView *)view callback:(TRTCMeetingCallback)callback;

播放/停止远端视频画面。

参会人员开启/关闭麦克风,会回调

代码语言:objective-c
AI代码解释
复制
- (void)onUserAudioAvailable:(NSString *)userId available:(BOOL)available;

可在此回调方法内更新麦克风状态。

当有参会人员离开会议室时主持端会回调

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- (void)onUserLeaveRoom:(NSString *)userId;

可在此方法内部处理用户离开的逻辑。

会议内部操作

切换摄像头

代码语言:objective-c
AI代码解释
复制
- (void)switchCamera:(BOOL)isFront;

开启本地静音

代码语言:objective-c
AI代码解释
复制
- (void)muteLocalAudio:(BOOL)mute;

扬声器切换

代码语言:objective-c
AI代码解释
复制
- (void)setSpeaker:(BOOL)useSpeaker;

打开/关闭摄像头

代码语言:objective-c
AI代码解释
复制
/**
 * 开启本地视频的预览画面
 *
 * @param isFront true:前置摄像头;false:后置摄像头。
 * @param view 承载视频画面的控件
 */
- (void)startCameraPreview:(BOOL)isFront view:(UIView *)view;

/**
 * 停止本地视频采集及预览
 */
- (void)stopCameraPreview;

静音会议室内某一个用户

代码语言:objective-c
AI代码解释
复制
/**
 * 静音某一个用户的声音
 *
 * @param userId 用户id
 * @param mute true:静音  false:解除静音
 */
- (void)muteRemoteAudio:(NSString *)userId mute:(BOOL)mute;

静音全部用户

获取会议室内所有用户,遍历调用静音某一个用户。

代码语言:swift
AI代码解释
复制
  for item in attendeeList {
      item.isMuteAudio = mute
      TRTCMeeting.sharedInstance().muteRemoteAudio(item.userId, mute: mute)
  }

禁画某个用户

调用之后该用户画面会定格在

代码语言:objective-c
AI代码解释
复制
/**
 * 屏蔽某个远程用户的视频
 *
 * @param userId 用户id
 * @param mute true:屏蔽  false:解除屏蔽
 */
- (void)muteRemoteVideoStream:(NSString *)userId mute:(BOOL)mute;

全体禁画

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for item in attendeeList {
    item.isMuteVideo = mute
    TRTCMeeting.sharedInstance().muteRemoteVideoStream(item.userId, mute: mute)
}

屏幕分享

在屏幕分享前需要先关闭摄像头采集,并且要判断系统的版本是否在iOS11及以上。

代码语言:swift
AI代码解释
复制
// 屏幕分享时需要实现屏幕分享的代理方法等
let params = TRTCVideoEncParam()
//设置视频分辨率
params.videoResolution = TRTCVideoResolution._1280_720
//设置帧率
params.videoFps = 10
//设置码率
params.videoBitrate = 1800
//开始录屏
TRTCMeeting.sharedInstance().startScreenCapture(params)
//唤起屏幕分享
TRTCBroadcastExtensionLauncher.launch()

修改码率、分辨率、帧率

代码语言:objective-c
AI代码解释
复制
/**
 * 设置分辨率
 *
 * @param resolution 视频分辨率
 */
- (void)setVideoResolution:(TRTCVideoResolution)resolution;

/**
 * 设置帧率
 *
 * @param fps 帧率数
 */
- (void)setVideoFps:(int)fps;

/**
 * 设置码率
 *
 * @param bitrate 码率,单位:kbps
 */
- (void)setVideoBitrate:(int)bitrate;

建议的码率表

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//此处仅定义横屏分辨率,如需使用竖屏分辨率(例如360 × 640),需要同时指定 TRTCVideoResolutionMode 为 Portrait。
    
// 宽高比1:1
    TRTCVideoResolution_120_120     = 1,    ///< [C] 建议码率 VideoCall:80kbps   LIVE:120kbps
    TRTCVideoResolution_160_160     = 3,    ///< [C] 建议码率 VideoCall:100kbps  LIVE:150kbps
    TRTCVideoResolution_270_270     = 5,    ///< [C] 建议码率 VideoCall:200kbps  LIVE:120kbps
    TRTCVideoResolution_480_480     = 7,    ///< [C] 建议码率 VideoCall:350kbps  LIVE:120kbps
    
    // 宽高比4:3
    TRTCVideoResolution_160_120     = 50,   ///< [C] 建议码率 VideoCall:100kbps  LIVE:150kbps
    TRTCVideoResolution_240_180     = 52,   ///< [C] 建议码率 VideoCall:150kbps  LIVE:225kbps
    TRTCVideoResolution_280_210     = 54,   ///< [C] 建议码率 VideoCall:200kbps  LIVE:300kbps
    TRTCVideoResolution_320_240     = 56,   ///< [C] 建议码率 VideoCall:250kbps  LIVE:375kbps
    TRTCVideoResolution_400_300     = 58,   ///< [C] 建议码率 VideoCall:300kbps  LIVE:450kbps
    TRTCVideoResolution_480_360     = 60,   ///< [C] 建议码率 VideoCall:400kbps  LIVE:600kbps
    TRTCVideoResolution_640_480     = 62,   ///< [C] 建议码率 VideoCall:600kbps  LIVE:900kbps
    TRTCVideoResolution_960_720     = 64,   ///< [C] 建议码率 VideoCall:1000kbps LIVE:1500kbps
    
    // 宽高比16:9
    TRTCVideoResolution_160_90      = 100,  ///< [C] 建议码率 VideoCall:150kbps  LIVE:250kbps
    TRTCVideoResolution_256_144     = 102,  ///< [C] 建议码率 VideoCall:200kbps  LIVE:300kbps
    TRTCVideoResolution_320_180     = 104,  ///< [C] 建议码率 VideoCall:250kbps  LIVE:400kbps
    TRTCVideoResolution_480_270     = 106,  ///< [C] 建议码率 VideoCall:350kbps  LIVE:550kbps
    TRTCVideoResolution_640_360     = 108,  ///< [C] 建议码率 VideoCall:550kbps  LIVE:900kbps
    TRTCVideoResolution_960_540     = 110,  ///< [C] 建议码率 VideoCall:850kbps  LIVE:1300kbps
    TRTCVideoResolution_1280_720    = 112,  ///< [C] 建议码率 VideoCall:1200kbps LIVE:1800kbps
    TRTCVideoResolution_1920_1080   = 114,  ///< [S] 建议码率 VideoCall:2000kbps LIVE:3000kbps

音频录制

代码语言:objective-c
AI代码解释
复制
/**
 * 开始录音
 *
 * 该方法调用后, SDK 会将通话过程中的所有音频(包括本地音频,远端音频,BGM 等)录制到一个文件里。
 * 无论是否进房,调用该接口都生效。
 * 如果调用 exitMeeting 时还在录音,录音会自动停止。
 * @param params 录音参数
 */
- (void)startFileDumping:(TRTCAudioRecordingParams *)params;

/**
 * 停止录音
 *
 * 如果调用 exitMeeting 时还在录音,录音会自动停止。
 */
- (void)stopFileDumping;

美颜

美颜功能可在TRTCCloud内获取单例使用,可根据自己的需求进行自定义UI界面或复用Demo内部的控件。

代码语言:objective-c
AI代码解释
复制
[[TRTCCloud sharedInstance] getBeautyManager];

具体的美颜API解释点这里

房主销毁会议

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/**
 * 销毁会议(房主调用)
 *
 * 房主在创建会议房间后,可以调用这个函数来销毁房间。
 * @param roomId 房间标识,需要由您分配并进行统一管理。
 * @param callback 创建房间的结果回调,成功时 code 为0.
 */
- (void)destroyMeeting:(UInt32)roomId callback:(TRTCMeetingCallback)callback;

参会人员离开会议

代码语言:objective-c
AI代码解释
复制
/**
 * 离开会议(其他参会者调用)
 *
 * @param callback 结果回调,成功时 code 为0.
 */
- (void)leaveMeeting:(TRTCMeetingCallback)callback;

以上为多人会议流程及常用API,如有错误,欢迎指正!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
iOS音视频接入- TRTC语音聊天室
我们在之前的文章中已经了解了TRTC的1v1和多人语音聊天,本篇文章来了解下TRTC的语音聊天室。
小明同学接音视频
2020/10/16
3.6K0
腾讯云实时音视频客户端实现A+B->A和A+B->C混流方式
上一篇文章介绍了腾讯云实时音视频的两种混流方式分别是A+B->A和A+B->C,本文重点介绍,客户端如何实现这两种混流的方式,代码附上
singleli
2022/11/28
1.5K0
【最佳实践】巡检项:实时音视频 (TRTC) 原生平台 SDK 的进入同一房间的用户是否设定相同的 应用场景(TRTCAppScene)参数
在视频通话场景(VideoCall),出现Android端推流绿屏现象,具体表现是,房间内其他用户拉流观看,显示该用户的画面出现绿色色块,并且在进房后一直持续出现。这种现象不是该用户每次进房都出现,是偶现的。
jackwlchen
2022/04/29
9030
实时音视频开发学习9 - 进房权限和画质
开启进房权限的目的是为了避免非会员模式能够进入高级房间,同时解决客户端限制被破解的问题。目前进房权限在iOS、Android、Windows、Electron、微信小程序和Chrome 浏览器都支持。
金林学音视频
2020/08/27
1.9K0
实时音视频开发学习9 - 进房权限和画质
实时音视频SDK,如何实现类似微信的纯语音通话功能?
实时音视频TRTCSDK适用的业务场景是视频会议、坐席视频、在线教育等,如果您希望实现类似微信的语音通话、语音会议功能,TRTCSDK也是支持的,只需要微调几个参数就可以实现,将采集音视频的api,换成只采集音频。
腾讯云-chaoli
2019/03/05
8.2K2
实时音视频SDK,如何实现类似微信的纯语音通话功能?
iOS音视频接入 - TRTC接入实时视频通话
(前面我们已经了解TRTC的基本架构和功能,现在我们就来接入实时视频通话功能,此功能和微信的一对一视频通话是一致的,需要两个角色,一个角色是主动呼叫、一个为呼叫接听,结合使用场景我们来接入此功能。
小明同学接音视频
2020/10/13
6.2K0
iOS音视频接入 - TRTC接入实时视频通话
iOS音视频接入- TRTC互动直播
在直播模式下,TRTC 引入了角色的概念,用户被分成“主播”和“观众”两种角色,“主播”会被分配到接口机上,“观众”则被分配在代理机,同一个房间的观众人数上限为10万人。
小明同学接音视频
2020/10/14
5K0
iOS音视频接入- TRTC互动直播
TRTC Android端开发接入学习之实现语音聊天室(九)
多人语音是音视频通话的常见应用场景之一,TRTC对着这方面的支持必不可少,本次我们学习如何使用TRTC快速开发语音聊天室功能。
腾讯云-hongyang
2020/09/18
1.9K0
Android TRTC 推自定义采集的视频数据
如果开发者想在 TRTC 中集成第三方美颜库来实现美颜、滤镜等功能,第三方库的美颜功能输入数据格式支持有 camera 的原始数据(YUV 数据)、纹理数据(Textureid)。开发者想实现该功能,需要采用自定义采集视频数据接口,然后复用 LiteAVSDK 的编码和推流功能。
腾讯云-chaoli
2019/07/07
1.9K0
Android TRTC 推自定义采集的视频数据
实时音视频V2版本,如何进行纯音频旁路直播
实时音视频TRTCSDK适用的业务场景是视频会议、坐席通话、在线教育等,也可以实现类似微信的语音通话、语音会议功能,
腾讯云-chaoli
2019/03/13
3.5K0
实时音视频V2版本,如何进行纯音频旁路直播
TRTC学习之旅(四)-- 用electron实现视频聊天室
前面我们已经学习过在web端用TRTC实时音视频SDK实现了多人会议室和互动直播模式,今天我们学习一下在桌面应用层用electron实现视频聊天。
黑眼圈云豆
2020/07/08
4.9K7
使用TRTC Web SDK实现实时音视频通话
在使用 TRTC Web SDK 中,经常需要使用到两个对象,Client 客户端对象,Stream 流对象:
yuliang
2021/03/03
3.7K0
实时音视频 TRTC 常见问题汇总---集成接入篇
TRTC 的日志默认压缩加密,后缀为 .xlog。日志是否加密是可以通过 setLogCompressEnabled 来控制,生成的文件名里面含 C(compressed) 的就是加密压缩的,含 R(raw) 的就是明文的。
腾讯视频云-Zachary
2019/11/01
14.4K1
实时音视频 TRTC 常见问题汇总---集成接入篇
TRTC学习之旅(二)-- 使用vue+ts集成TRTC实现多人会议室
根据上回学习了官方TRTC demo之后,已经了解了一个基础的多人会议室创建的流程,接下来我需要将自己学到的转换为自己能够运用的。
黑眼圈云豆
2020/06/24
4K3
TRTC学习之旅(二)--  使用vue+ts集成TRTC实现多人会议室
产品动态 | TRTC React Native SDK上线啦
React Native 是一个使用React和应用平台的原生功能来构建 Android 和 iOS 应用的开源框架。通过 React Native,您可以使用 JavaScript 来访问移动平台的 API,以及使用 React 组件来描述 UI 的外观和行为:一系列可重用、可嵌套的代码。 TRTC React Native SDK 是基于腾讯云 iOS/Android 平台的 TRTC SDK 进行封装的,架构图整体跟Flutter类似。 TRTC React Native sdk类文件说
腾讯云音视频
2021/11/22
1.2K0
trtc-electron音视频学习初体验
TRTC 支持四种不同的进房模式,其中视频通话(VideoCall)和语音通话(VoiceCall)统称为通话模式,视频互动直播(Live)和语音互动直播(VoiceChatRoom)统称为 直播模式。在学习测试中主要使用到VideoCall和VoiceCall模式 通话模式下的 TRTC,支持单个房间最多300人同时在线,支持最多30人同时发言。适合1对1视频通话、300人视频会议、在线问诊、远程面试、视频客服、在线狼人杀等应用场景
金林学音视频
2020/10/31
1.3K0
trtc-electron音视频学习初体验
TRTC Android端开发接入学习之视频会议(八)
视频会议是音视频通话的常见应用场景之一,TRTC对着这方面的支持必不可少,本次我们学习如何使用TRTC快速开发视频会议的功能。
腾讯云-hongyang
2020/09/15
1.8K0
iOS音视频接入 - TRTC实时屏幕分享
应用内分享的方案非常简单,只需要调用 TRTC SDK 提供的接口 startScreenCaptureInApp 并传入编码参数TRTCVideoEncParam 即可。该参数可以设置为 nil,此时 SDK 会沿用开始屏幕分享之前的编码参数。
小明同学接音视频
2020/10/13
2.5K0
iOS音视频接入 - TRTC实时屏幕分享
关于 TRTC (实时音视频通话模式)在我司的实践
腾讯实时音视频(Tencent Real-Time Communication,TRTC)将腾讯 21 年来在网络与音视频技术上的深度积累,以多人音视频通话和低延时互动直播两大场景化方案,通过腾讯云服务向开发者开放,致力于帮助开发者快速搭建低成本、低延时、高品质的音视频互动解决方案。
发声的沉默者
2021/06/14
2K0
关于 TRTC (实时音视频通话模式)在我司的实践
微信小程序TRTC使用custom自定义面板(实现篇)
本文主要是使用 custom 面板实现直播互动,上下麦操作。如有疑问可参考 微信小程序TRTC使用custom自定义面板(理解篇)。本文只是简单演示如何实现主播与观众进行连麦互动,在实际中,通常是有主播端发起与粉丝进行直播互动,通过粉丝来接受,进行连麦。发送这种消息可以使用IM(即时通讯)完成。
yuliang
2021/03/16
1.4K0
推荐阅读
相关推荐
iOS音视频接入- TRTC语音聊天室
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验