各种各样的视频SDK
越来越多的公司加入了视频服务行业,各种视频SDK正在出现。开发人员选择视频SDK也变得越来越困难。
我们应该如何选择适合我们的视频SDK ?
简单成为主流
使用SDK开发人员的目的是在节省开发时间的同时获得稳定且高质量的服务。
因此,在确保SDK的稳定性和质量的同时,访问的便利已成为各个企业的目标。
对于构建音频和视频应用程序的开发人员来说,这是节省时间。
例如,ZEGOCLOUD推出的最新Uikits产品使将视频SDK集成到新的高度方面。开发人员只能在30分钟内实现音频和视频通话功能。
UI套件SDK提供20多个UIKIT,50多个组件,支持视频呼叫,语音呼叫,实时流媒体和其他方案以构建,支持丰富的配置项目配置,方便且快速自定义UI。
集成视频SDK
让我们以 iOS视频SDK 为例,以体验Uikits SDK逐步带来的便利。
1)将SDK添加到项目
通过吊舱介绍zegouikitprebuiltcall sdk,如下所示,在podfile文件中添加pod'zegouikitprebuiltcall'。然后在终端执行命令pod install
。有关详细操作,请参阅Quick Access Documentation。
target 'ZegoCallDemo' do
use_frameworks!
# Pods for ZegoCallDemo
pod 'ZegoUIKitPrebuiltCall'
end
2)将iOS视频SDK导入您的项目
在需要称为SDK接口的文件中,通过导入导入SDK。
import ZegoUIKitSDK
import ZegoUIKitPrebuiltCall
// YourViewController.swift
class ViewController: UIViewController {
//Other code...
}
3)在您的项目中显示ZegouikitPrebuiltCallVC
接下来,您只需要在需要启动视频调用以完成SDK访问的模块中显示ZegouikitPrebuiltCallVC。
进入页面之前,需要完成三个步骤:
- 转到ZEGOCLOUD Admin Console,获取您项目的苹果和应用标志。
- 指定连接呼叫套件服务的用户ID和用户名。
- 创建一个代表您要拨打的呼叫的呼叫。
// YourViewController.swift
class ViewController: UIViewController {
// Other code...
var userID: String = <#UserID#>
var userName: String = <#UserName#>
var callID: String = <#CallID#>
@IBAction func makeNewCall(_ sender: Any) {
let config: ZegoUIkitPrebuiltCallConfig = ZegoUIkitPrebuiltCallConfig()
let audioVideoConfig: ZegoPrebuiltAudioVideoViewConfig = ZegoPrebuiltAudioVideoViewConfig()
let menuBarConfig: ZegoBottomMenuBarConfig = ZegoBottomMenuBarConfig()
config.audioVideoViewConfig = audioVideoConfig
config.bottomMenuBarConfig = menuBarConfig
let layout: ZegoLayout = ZegoLayout()
layout.mode = .pictureInPicture
let pipConfig: ZegoLayoutPictureInPictureConfig = ZegoLayoutPictureInPictureConfig()
pipConfig.smallViewPostion = .topRight
layout.config = pipConfig
config.layout = layout
let callVC = ZegoUIKitPrebuiltCallVC.init(yourAppID,
appSign: yourAppSign,
userID: self.userID,
userName: self.userName,
callID: self.callID,
config: config)
callVC.modalPresentationStyle = .fullScreen
self.present(callVC, animated: true, completion: nil)
}
}
4)配置您的项目
最后,您只需要将摄像机和麦克风权限添加到iOS配置文件信息。
<key>NSCameraUsageDescription</key>
<string>We require camera access to connect to a call</string>
<key>NSMicrophoneUsageDescription</key>
<string>We require microphone access to connect to a call</string>
自定义预构建UI
zegocloud呼叫套件提供了许多自定义接口,您可以根据需要修改这些界面。例如,在呼叫页面上,我们可以达到以下效果:
1)当我的相机关闭时显示我的视图
如果关闭相机时仍想显示自己的视频视图,只需将showMyViewWithVideoOnly
参数设置为true即可实现。
2)当我的相机关闭时隐藏我的看法
如果要在关闭相机时隐藏自己的视频视图,只需将showMyViewWithVideoOnly
参数设置为kude2中的false即可隐藏它。
3)拖动小视图
如果要实现拖动视频视图的功能,只需在ZegoUIkitPrebuiltCallConfig
中设置isSmallViewDraggable
参数。
4)切换两个视频视图的内容
如果要切换两个视频视图的内容,只需在zegouikitprebuiltcallconfig中设置switchlargeorsmallviewbyclick参数。
这是参考代码:
class ViewController: UIViewController {
let selfUserID: String = "userID"
let selfUserName: String = "userName"
let yourAppID: UInt32 = YourAppID; // Fill in the appID that you get from ZEGOCLOUD Admin Console.
let yourAppSign: String = YourAppSign; // Fill in the appSign that you get from ZEGOCLOUD Admin Console.
@IBOutlet weak var userIDLabel: UILabel! {
didSet {
userIDLabel.text = selfUserID
}
}
@IBOutlet weak var userNameLabel: UILabel! {
didSet {
selfUserName = String(format: "zego_%@", selfUserID)
userNameLabel.text = selfUserName
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
@IBAction func makeNewCall(_ sender: Any) {
let config: ZegoUIkitPrebuiltCallConfig = ZegoUIkitPrebuiltCallConfig()
let layout: ZegoLayout = ZegoLayout()
layout.mode = .pictureInPicture
let pipConfig: ZegoLayoutPictureInPictureConfig = ZegoLayoutPictureInPictureConfig()
pipConfig.showMyViewWithVideoOnly = false;
pipConfig.isSmallViewDraggable = true;
pipConfig.switchLargeOrSmallViewByClick = true;
layout.config = pipConfig
config.layout = layout
let callVC = ZegoUIKitPrebuiltCallVC.init(yourAppID, appSign: yourAppSign, userID: selfUserID, userName: self.selfUserName ?? "", callID: "100", config: config)
callVC.modalPresentationStyle = .fullScreen
self.present(callVC, animated: true, completion: nil)
}
}
Sign up带有Zegocloud,并获得 10,000分钟每个月免费。
你可知道? ð
喜欢和跟随是我最大的鼓励
跟随我了解更多的技术知识
谢谢您的阅读:)
学到更多
这是现场技术文章之一。欢迎来到其他文章: