Agora SDK 设置

Posted

技术标签:

【中文标题】Agora SDK 设置【英文标题】:Agora SDK Setup 【发布时间】:2016-05-24 23:11:39 【问题描述】:

我正在尝试使用 Agora SDK (www.agora.io) 在我的 ios 应用中添加 1:1 视频通话。我正在尝试遵循您的 SDK 指南,但可以使用一些帮助。如何设置通话?

【问题讨论】:

【参考方案1】:

设置通话需要几个步骤。下面的流程图将引导您完成。

Agora Call Setup Chart

您还可以参考我们的 AgoraDemo 应用程序部分,其中包含源代码。 首先,你必须创建 AgoraRTCEngine:

@property (strong, nonatomic) AgoraRtcEngineKit *agoraKit;

接下来,您必须使用您的供应商密钥对其进行初始化(请注意,在我们的演示应用中,我们使用上一个故事板页面中的供应商密钥的 UITextInput):

self.agoraKit = [AgoraRtcEngineKit sharedEngineWithVendorKey:self.vendorKey delegate:self];

接下来,启用视频:

[self.agoraKit enableVideo];

然后您就可以加入频道与其他参与者交谈了:

[self.agoraKit joinChannelByKey:nil channelName:self.channel info:nil uid:0 joinSuccess:^(NSString *channel, NSUInteger uid, NSInteger elapsed) 

如果要显示本地视频,首先将 AgoraRTCVideoCanvas 绑定到视图:

AgoraRtcVideoCanvas *videoCanvas = [[AgoraRtcVideoCanvas alloc] init];
videoCanvas.uid = unsignedIntegerValue; // Use your own User ID (UID)
videoCanvas.view = self.videoMainView;
videoCanvas.renderMode = AgoraRtc_Render_Hidden;

然后调用 setupLocalVideo 以指定您希望在该视图中显示本地视频:

[self.agoraKit setupLocalVideo:videoCanvas];

当第二个参与者加入同一个频道时,代理方法 didJoinedofUID 会被调用:

- (void)rtcEngine:(AgoraRtcEngineKit *)engine didJoinedOfUid:(NSUInteger)uid elapsed:(NSInteger)elapsed

    // (Do something) Your code

决定要将远程参与者的视频绑定到哪个视图:

AgoraRtcVideoCanvas *videoCanvas = [[AgoraRtcVideoCanvas alloc] init];
videoCanvas.uid = unsignedIntegerValue; // Use your own User ID (UID)
videoCanvas.view = self.videoMainView;
videoCanvas.renderMode = AgoraRtc_Render_Hidden;

然后调用 setupRemoteVideo 以指定您希望该参与者的远程视频出现在该视图中:

[self.agoraKit setupRemoteVideo:videoCanvas];

如果参与者离开频道,将调用委托方法didOfflineOfUid:

- (void)rtcEngine:(AgoraRtcEngineKit *)engine didOfflineOfUid:(NSUInteger)uid reason:(AgoraRtcUserOfflineReason)reason

      // (Do something) Your code

通话结束,调用 leaveChannel:

[self.agoraKit leaveChannel:nil];

【讨论】:

你能快速回复答案吗?

以上是关于Agora SDK 设置的主要内容,如果未能解决你的问题,请参考以下文章

是否可以录制 Agora SDK 视频通话?

基于 Agora SDK 实现 Windows 端的多人视频互动(基于3.6.2版本)

基于 Agora SDK 实现 Windows 端的一对一视频通话(基于3.6.2版本)

Agora React Native 麦克风权限

WebRTC Native M96 SDK接口封装--setLogFile设置 SDK 输出的日志文件

WebRTC Native M96 SDK接口封装--setLogFile设置 SDK 输出的日志文件