쉬운 통합을 위한 비디오 SDK
20992 단어 swiftiosprogrammingvideo
다양한 비디오 SDK
점점 더 많은 기업들이 동영상 서비스 산업에 참여하고 있으며 다양한 동영상 SDK가 등장하고 있습니다. 또한 개발자가 Video SDK를 선택하는 것이 점점 더 어려워지고 있습니다.
나에게 맞는 Video SDK는 어떻게 선택해야 할까요?
단순함이 주류가 됨
SDK를 사용하는 개발자의 목적은 개발 시간을 절약하면서 안정적이고 고품질의 서비스를 얻는 것입니다.
따라서 SDK의 안정성과 품질을 확보하면서도 접근의 편의성은 다양한 기업들이 추구하는 목표가 되었습니다.
오디오 및 비디오 애플리케이션을 구축하는 개발자의 시간을 절약해 줍니다.
예를 들어 ZEGOCLOUD에서 출시한 최신 UIKits 제품은 비디오 SDK 통합의 편의성을 새로운 차원으로 끌어 올렸습니다. 개발자는 단 30분 만에 음성 및 화상 통화 기능을 구현할 수 있습니다.
UI 키트 SDK는 20개 이상의 UIKits, 50개 이상의 구성 요소를 제공하고 화상 통화, 음성 통화, 라이브 스트리밍 및 기타 구축 시나리오를 지원하고 풍부한 구성 항목 구성, 편리하고 빠른 사용자 지정 UI를 지원합니다.
비디오 SDK 통합
iOS Video SDK를 예로 들어 UIKits SDK가 제공하는 편리함을 단계별로 경험해 봅시다.
1) 프로젝트에 SDK 추가
다음과 같이 pod를 통해 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 표시
다음으로 영상통화를 시작해야 하는 모듈에 ZegoUIKitPrebuiltCallVC만 표시하면 SDK 접근이 완료됩니다.
페이지에 들어가기 전에 수행해야 할 세 단계가 있습니다.
// 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 구성 파일 Info.plist에 카메라 및 마이크 권한을 추가하기만 하면 오디오 및 비디오 통화 기능을 경험할 수 있습니다.
<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 Call Kit는 필요에 따라 수정할 수 있는 풍부한 맞춤형 인터페이스를 제공합니다. 예를 들어 호출 페이지에서 다음과 같은 효과를 얻을 수 있습니다.
1) 내 카메라가 꺼져 있을 때 내 뷰 표시
카메라가 꺼져 있을 때 자신의 비디오 보기를 계속 표시하려면
showMyViewWithVideoOnly
의 ZegoUIkitPrebuiltCallConfig
매개변수를 true로 설정하면 됩니다.2) 카메라가 꺼져 있을 때 내 보기 숨기기
카메라를 닫을 때 자신의 비디오 보기를 숨기려면
showMyViewWithVideoOnly
의 ZegoUIkitPrebuiltCallConfig
매개변수를 false로 설정하여 숨기면 됩니다.3) 작은 보기 끌기
비디오 보기를 드래그하는 기능을 구현하려면
isSmallViewDraggable
에서 ZegoUIkitPrebuiltCallConfig
매개변수를 설정하기만 하면 됩니다.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분을 무료로 이용하실 수 있습니다.
알고 계셨나요? 👏
Like and Follow is the biggest encouragement to me
Follow me to learn more technical knowledge
Thank you for reading :)
더 알아보기
이것은 라이브 기술 문서 중 하나입니다. 다른 기사에 오신 것을 환영합니다:
Android 음성 채팅 SDK를 선택하는 방법
ZEGOCLOUD용 DavidRelo ・ 9월 26일 ・ 4분 읽기
#android
#java
#api
#programming
사진에서 아바타를 만드는 방법
ZEGOCLOUD용 DavidRelo ・ 9월 6일 ・ 3분 읽기
#android
#java
#programming
#tutorial
라이브 스트리밍 앱을 구축하는 방법은 무엇입니까?
ZEGOCLOUD용 DavidRelo ・ 7월 29일 ・ 5분 읽기
#java
#android
#mobile
#programming
화상 통화 API를 사용하여 라이브 화상 통화 앱을 구축하는 방법
DavidRelo ・ 7월 25일 ・ 6분 읽기
#ios
#mobile
#api
#programming
Reference
이 문제에 관하여(쉬운 통합을 위한 비디오 SDK), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/zegocloud/video-sdk-for-easier-integration-1p7g텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)