You need to enable JavaScript to run this app.
导航

iOS

最近更新时间2023.12.18 15:25:31

首次发布时间2022.08.16 20:40:54

为了更好的上手移动端视频直播 App 的搭建工作,我们推出了 VeLiveQuickStartDemo ,VeLiveQuickStartDemo 基于视频直播 SDK 开发,目前接入了基础、高级、互动三大功能模块。

  • 基础功能模块:基础推拉流能力。
  • 高级功能模块:码率自适应、自采集推流、H265 硬编码推流、RTM 推流、画中画。
  • 互动功能模块:主播和观众连麦、主播和主播 PK。

您可以根据下列操作指引快速跑通 Demo。

环境要求

  • iOS 11.0 以上的 iPhone 或者 iPad 真机。
  • Xcode 14.0 以上版本。
  • CocoaPods 1.11.3 及以上。
  • 项目已配置有效的开发者签名。

前提条件

准备工作

本章节介绍跑通 Demo 前的准备工作。

获取视频直播 SDK License

  1. 登录视频直播控制台

  2. 左侧导航栏选择功能管理 > 应用管理,单击创建应用,在弹出的对话框中填写应用信息。

  3. 单击下一步,配置 License,单击确认返回应用列表。

  4. 在应用列表,记录 App ID ,将新建应用的 SDK License 下载到本地。

获取实时音视频 AppID 和 Token 信息

说明

如果您没有互动直播的体验需求,请跳过此操作。

  1. 登录实时音视频控制台

  2. 左侧导航栏选择应用管理,单击创建应用,在弹出的对话框中填写应用名称选择默认项目,单击确定,返回应用列表。

  3. 在应用列表记录实时音视频应用的 AppID。

  4. 在应用列表,单击应用操作列的临时 Token ,在弹出的对话框中生成 Token 信息。

    • A 主播连麦场景:使用 A 主播的 RoomId、UserId,生成 Token。

    • A 主播 PK B 主播:使用 B 主播的RoomId,A 主播的UserId,生成 Token。

跑通 Demo

本章节介绍从下载 Demo 到编译 Demo 的详细操作步骤。

下载 Demo 源码

  1. GitHub地址下载 Demo 源码。

  2. Demo文件目录结构说明。

    iOS/VeLiveQuickStartDemo
    └── VeLiveQuickStartDemo
        ├── App /// App Demo 入口页面
        ├── Features /// 功能入口
        │   ├── Basic /// 基础功能入口
        │   │   ├── PullStream /// 基础拉流能力
        │   │   └── PushCamera /// 摄像头采集基础推流能力
        │   ├── Advanced /// 高级功能入口
        │   │   ├── PushAutoBitrate /// 码率自适应
        │   │   ├── PushBeauty /// 美颜
        │   │   ├── PushCustom /// 自采集推流
        │   │   ├── PushH265Codec /// 265 硬编码推流
        │   │   ├── PictureInPicture /// 画中画
        │   │   └── PushRTM /// RTM 推流
        │   └── Interact /// 互动直播
        │       ├── Link /// 主播和观众连麦
        │       ├── Manager /// 互动直播交互管理
        │       └── PK /// 主播和主播PK
        ├── Helper /// 一些工具类,包含 SDK 初始化和自采集
    

配置 SDK License

  1. 修改使用下载到本地的 SDK License 文件名称为 ttsdk.lic
  2. 使用修改好名称的 SDK License 文件替换 iOS/VeLiveQuickStartDemo/Resource/ 目录下的 ttsdk.lic文件。

更新 CocoaPods

  1. 打开终端应用程序(Terminal)。
  2. 进入 iOS Demo 项目目录。
  3. 执行 pod install --repo-update 更新所有 pod 源。

配置推流/拉流能力

  1. 使用 xcode 打开 VeLiveQuickStartDemo/Helper/VeLiveSDKHelper.h 文件。

  2. 设置视频直播的 APP ID、推流地址、拉流地址。

    说明

    推流地址和拉流地址使用视频直播控台的地址生成器生成。

    // AppID
    #define TTSDK_APP_ID @"536110"
    /*
     License 名称,当前 Demo文件存放在与本文件同级目录下,如果做SDK快速验证,可直接替换 ttsdk.lic 文件内容
    */
    #define TTSDK_LICENSE_NAME @"ttsdk.lic"
    
    /*
     rtmp, RTM, Quic 推流地址
     生成方式:通过控制台生成 https://console.volcengine.com/live/main/locationGenerate
    */
    #define LIVE_PUSH_URL @""
    #define LIVE_RTM_PUSH_URL @""
    
    /*
     RTM, rtmp、flv、m3u8 拉流地址
     生成方式:通过控制台生成 https://console.volcengine.com/live/main/locationGenerate
    */
    #define LIVE_PULL_URL @""
    #define LIVE_RTM_PULL_URL @""
    
    

配置连麦/PK 能力

  1. 使用 xcode 打开 VeLiveQuickStartDemo/Helper/VeLiveSDKHelper.h 文件。

  2. 设置的互动直播场景时实时音视频的 AppID 和 Token 信息。

    /*
     互动直播AppID
    */
    #define RTC_APPID @""
    
    /*
     互动直播主播房间ID
    */
    #define RTC_ROOM_ID @""
    
    /*
     互动直播主播用户ID
    */
    #define RTC_USER_ID @""
    
    /*
     互动直播主播用户 Token
     生成方式:使用主播房间ID和主播用户ID在RTC控制台生成
     https://console.volcengine.com/rtc/listRTC
    */
    #define RTC_USER_TOKEN @""
    
    /*
     主播与主播PK时,对方主播的房间ID
    */
    #define RTC_OTHER_ROOM_ID @""
    
    /*
     主播与主播PK时,当前主播加入对方主播房间内的Token
     生成方式:使用当前主播的用户ID和对方主播的房间ID在控制台生成
    */
    #define RTC_OTHER_ROOM_TOKEN @""
    

配置应用包名(Bundle ID)

  1. 打开 VeLiveQuickStartDemo/VeLiveQuickStartDemo.xcworkspace 文件。

  2. 修改 Bundle Identifier 为创建视频直播应用时填写的 Bundle ID。

  3. 选择开发者签名文件(Provisioning Profile)。

编译 Demo App

  1. 使用 iPhone 或 iPad 真机连接计算机。

  2. 在 xcode 中选择连接的 iPhone 或 iPad 真机,选择 Product > Run,或通过快捷键 Command + R 运行。

  3. 待编译完成后,将会在连接计算机的 iPhone 或 iPad 真机上安装并运行视频直播 Demo App。