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

iOS

最近更新时间2024.05.11 16:00:58

首次发布时间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 和 AppKey 信息

说明

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

  1. 登录实时音视频控制台
  2. 左侧导航栏选择应用管理,单击创建应用,在弹出的对话框中填写应用名称选择默认项目,单击确定,返回应用列表。
  3. 在应用列表记录实时音视频应用的 AppID 和 AppKey。

跑通 Demo

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

下载 Demo 源码

  1. GitHub地址下载 Demo 源码。

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

    iOS/VeLiveQuickStartDemo
    └── VeLiveQuickStartDemo
        ├── App /// App Demo 入口页面
        ├── Features /// 功能入口
        │   ├── Basic /// 基础功能入口
        │   │   ├── PullStream /// 基础拉流能力
        │   │   └── PushCamera /// 摄像头采集基础推流能力
        │   ├── Advanced /// 高级功能入口
        │   │   ├── PullRTM /// RTM 拉流
        │   │   ├── 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、推流地址、License 文件名称、域名空间、推拉流域名、应用名称。

    // App ID,在视频直播控制台应用管理页面获取 https://console.volcengine.com/live/main/sdk 
    #define TTSDK_APP_ID @"536110"
    
    // License 名称,如果您替换了 License 文件,需同步修改此处文件名称。如果做 SDK 快速验证,可直接替换原 License 文件(ttsdk.lic)内容
    #define TTSDK_LICENSE_NAME @"ttsdk.lic"
    
    // 配置 API 访问密钥,在访问控制页面获取您账号的 API 访问密钥 https://console.volcengine.com/iam/keymanage/
    #define ACCESS_KEY_ID @""
    #define SECRET_ACCESS_KEY @""
    
    // 配置您推拉流域名所属的域名空间,您可以在域名管理页面查看域名及所属域名空间信息,此处域名空间示例为 push.example.com
    #define LIVE_VHOST @"push.example.com"
    
    /* 
    * 推拉流地址组成示例 https://{推流域名或拉流域名}/{AppName}/{StreamName}.flv
    * 配置推流地址中使用的 AppName,支持由大小写字母、数字、下划线、短横线组成,最大长度 30 个字符,此处示例为 live
    */
    #define LIVE_APP_NAME @"live"
    
    
    // 配置推流域名,,在视频直播控制台>域名管理页面获取,https://console.volcengine.com/live/main/domain/list
    #define LIVE_PUSH_DOMAIN @"push.example.com"
    
    // 配置拉流域名,,在视频直播控制台>域名管理页面获取,https://console.volcengine.com/live/main/domain/list
    #define LIVE_PULL_DOMAIN @"pull.example.com"
    

配置连麦/PK 能力

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

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

    // 互动直播 AppID,https://console.volcengine.com/rtc/listRTC
    #define RTC_APPID @""
    
    // 互动直播 AppKey https://console.volcengine.com/rtc/listRTC
    #define RTC_APPKEY @""
    

配置应用包名(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。