阿里云首页 低代码音视频工厂

iOS端集成

本文介绍了低代码音视频工厂以SDK集成方式的iOS端集成步骤。适用于互动直播、互动课堂等场景。

前提条件

环境要求

  • iPhone:均支持。

  • iPad:均支持。

  • CPU架构:支持实体设备架构armv7+arm64,不支持模拟器i386、x86架构。

  • 系统版本:支持iOS 10.0及以上版本。

  • 其他:不支持bitcode,不支持屏幕旋转。

集成步骤

步骤一:添加SDK依赖

SDK依赖可基于CocoaPods添加或基于本地framework依赖方式添加,推荐使用基于CocoaPods添加的方式。

  • 方式1:基于CocoaPods添加SDK依赖(推荐)

    所需SDK库根据需要的功能进行添加,以互动直播互动课堂为例,两种场景包含的功能及对应的SDK库如下所示。

    音视频场景

    包含功能

    所需SDK库

    互动直播

    主播推流直播+观众拉流观看(无连麦功能)

    AliInteractiveRoomBundle、AliInteractiveLiveCore、AlivcLivePusher、Queen、Masonry、AliInteractiveVideoPlayerCore、AliPlayerSDK_iOS、RtsSDK、AliPlayerSDK_iOS_ARTC(低延迟播放需要)

    互动课堂

    连麦+旁路直播+白板+文档

    AliInteractiveRoomBundle、AliInteractiveRTCCore、AliRTCSdk、AliInteractiveWhiteBoardCore、AliInteractiveDocumentCore、AliInteractiveVideoPlayerCore、AliPlayerSDK_iOS、RtsSDK、AliPlayerSDK_iOS_ARTC(低延迟播放需要)

    根据需要在已有Xcode工程的Podfile文件中增加代码,对于互动直播场景(主播推流直播+观众拉流观看,无连麦功能),需要添加的代码有:

      #阿里云低代码音视频工厂总入口库
      pod 'AliInteractiveRoomBundle', '1.4.0'
    
      #阿里云低代码音视频工厂依赖的三方库
      pod 'Masonry'
      
      #阿里云低代码音视频工厂主播推流端相关库
      pod 'AliInteractiveLiveCore', '1.4.0'
      pod 'AlivcLivePusher', '4.2.1'
      pod 'Queen', '1.4.1-official-lite'
    
      #阿里云低代码音视频工厂观众拉流相关库
      pod 'AliInteractiveVideoPlayerCore', '1.4.0'
      pod 'AliPlayerSDK_iOS', '5.3.2'
      pod 'AliPlayerSDK_iOS_ARTC', '5.3.2'    #超低低延迟拉流相关(可选)
      pod 'RtsSDK', '1.9.0'                            #超低低延迟拉流相关
    说明

    美颜库Queen的'1.4.1-official-lite'版本是免授权的基础版本,如果需要更高级的美颜功能,可以通过美颜特效SDK产品介绍进行了解和购买。

    对于互动课堂场景(连麦+旁路直播+白板+文档),需要添加的代码有:

      #阿里云低代码音视频工厂总入口库
      pod 'AliInteractiveRoomBundle', '1.4.0'
    
      #阿里云低代码音视频工厂观众拉流相关库
      pod 'AliInteractiveVideoPlayerCore', '1.4.0'
      pod 'AliPlayerSDK_iOS', '5.3.2'
      pod 'AliPlayerSDK_iOS_ARTC', '5.3.2'     #超低低延迟拉流相关(可选)
      pod 'RtsSDK', '1.9.0'                             #超低低延迟拉流相关
    
      #阿里云低代码音视频工厂RTC相关库
      pod 'AliInteractiveRTCCore', '1.4.0'
      pod 'AliRTCSdk', '2.2'
    
      #阿里云低代码音视频工厂白板能力相关库
      pod 'AliInteractiveWhiteBoardCore', '1.4.0'
    
      #阿里云低代码音视频工厂文档能力相关库
      pod 'AliInteractiveDocumentCore', '1.4.0'
  • 方式2:基于本地framework添加SDK依赖

  1. 下载并解压SDK。

    登录低代码音视频工厂控制台,导航至应用管理 > SDK下载,下载最新iOS端SDK。

    解压之后,文件结构如下图所示。

    iOS SDK文件截图
  2. 打开Xcode,将所需的解压后的SDK文件复制到工程中。

    音视频场景

    包含功能

    所需framework及相应的资源文件

    互动直播

    主播推流直播+观众拉流观看(无连麦功能)

    AliInteractiveRoomBundle.framework、AliInteractiveLiveCore.framework、AliInteractiveVideoPlayerCore.framework、AlivcLibRtmp.framework、AlivcLivePusher.framework、alivcffmpeg.framework、AliyunPlayer.framework、queue.framework、RtsSDK.framework、AliInteractiveLiveBeautyResource.bundle、queen-ios.Bundle

    互动课堂

    连麦+旁路直播+白板+文档

    除下列文件外全部需要:AliInteractiveLiveCore.framework、AlivcLibRtmp.framework、AlivcLivePusher.framework、queue.framework、AliInteractiveLiveBeautyResource.bundle、queen-ios.Bundle

  3. 在工程TARGETSGeneral页签下,在Frameworks, Libraries, and Embedded Content区域中添加以下framework,并修改对应的Embed属性,其中AliInteractiveLiveCore.framework和queen.framework设置为Do Not Embed,其余的设置为Embed & Sign

    互动直播场景中,所需SDK文件及对应的配置如下所示:

    添加互动直播framework

    互动课堂场景中,所需SDK文件及对应的配置如下所示:

    添加互动课堂framework
  4. 把资源文件添加到自己的工程目录下(与系统Assets.xcassets平级)。

    互动直播场景中,需要添加美颜相关的资源文件AliInteractiveLiveBeautyResource.bundle和queen-ios.Bundle如下图所示:

    美颜资源文件互动课堂场景中,需要添加白板相关的资源文件AliInteractiveWhiteBoardCoreResource.xcassets如下图所示:

    白板资源文件

步骤二:修改Xcode工程配置

  1. Build Settings页签中设置Enable BitcodeNo

  2. Build Settings页签中添加-ObjC链接选项。

    添加ObjC
  3. Signing & Capabilities页签中打开后台音频权限。

    说明

    为保障应用进入手机后台之后,通话可以保持不中断,建议您开启后台音频权限。SDK默认进入后台之后继续推送音频流。

    打开音频权限
  4. 编辑info.plist文件添加权限,按下表修改参数值。

    Key

    Value

    Privacy - Camera Usage Description

    Use camera

    Privacy - Microphone Usage Description

    Use microphone

    Application uses Wi-Fi

    YES

    编辑info.plist

步骤三:完成集成

  1. 使用Xcode连接终端设备,按Command+B,如果界面提示Build Success,表示SDK集成成功。

  2. 完成集成SDK操作后,您可以实现不同音视频场景的功能,具体代码实现可以参考阅读iOS端集成与使用