此示例源码为一个桌面端跨平台的 Qt5 C++ 应用程序,同时支持 Windows/macOS/Linux 平台,示例源码中已附带了三个平台最新版本的 SDK 包,可以直接运行。
本文介绍如何快速跑通示例源码,体验基础的音视频通话服务。
请确保开发环境满足以下技术要求:
Windows:Windows 7 或以上版本,安装了 Visual Studio 2019 或以上版本。
macOS:macOS 11.0 或以上版本,安装了 Xcode 15.0 或以上版本。
Linux:任意具有 GLIBC 2.16 或以上版本的 Linux 发行版系统,支持 x86_64, aarch64, armhf 架构。
其他通用要求:
安装了 CMake:下载 CMake。
麦克风、摄像头等支持音视频功能的外部设备正常。
QtCreator 8.0.1 之前的版本,在 macOS 12 Monterey 或以上的系统上,可能会遇到在调试此 Demo 时无法请求摄像头、麦克风权限从而导致 Demo 崩溃的问题,详情参考 此 issue。
解决方案:可下载安装 QtCreator 8.0.2 或以上版本,而不要使用 Qt5 安装包自带的 QtCreator。
开发者可以从 QtCreator Github Release 或 Qt 官网 下载,或者使用 HomeBrew 安装:brew update && brew install --cask qt-creator
已在 ZEGO 控制台 创建项目,并申请有效的 AppID 和 AppSign,详情请参考 控制台 - 项目管理 中的“项目信息”。
SDK 同时也支持 Token 鉴权,若您需要升级鉴权方式,可参考 如何从 AppSign 鉴权升级为 Token 鉴权。
安装完 CMake 和 Qt 后需要添加环境变量,下面提供的 CMake 和 Qt 路径仅供参考,用户需要根据自己设备上的实际路径填写。
Windows 系统:
C:\Program Files\CMake\bin
C:\Qt\Qt5.12.12\5.12.12\msvc2017\bin
QTDIR
用户变量为 C:\Qt\Qt5.12.12\5.12.12\msvc2017
macOS 系统:
export PATH="$PATH:$HOME/Qt5.12.12/5.12.12/clang_64/bin"
export QTDIR="$HOME/Qt5.12.12/5.12.12/clang_64"
Linux 系统:
export QTDIR="/usr/local/Qt-5.12.12"
export PATH="$PATH:$QTDIR/bin"
export LD_LIBRARY_PATH="$QTDIR/lib:$LD_LIBRARY_PATH"
下列结构为 video 子目录的文件结构,下文所涉及的文件路径均为相对于此目录的路径。
.
├── README_zh.md
├── README.md
├── libs
│ ├── ScreenCapture
│ └── ZegoExpress
│ ├── linux # ZegoExpressVideo Linux SDK 存放目录
│ ├── mac # ZegoExpressVideo macOS SDK 存放目录
│ │ └── ZegoExpressEngine.xcframework
│ └── win # ZegoExpressVideo Windows SDK 存放目录
│ ├── x64
│ └── x86
└── ZegoExpressExample
├── KeyCenter.cpp # 填写申请的 AppID 和 AppSign
├── KeyCenter.h
├── ZegoExpressExample.pro # Qt 工程文件
├── Examples
├── HomePage
...
修改 “/ZegoExpressExample/KeyCenter.cpp” 文件,填写 SDK 初始化所需的 “AppID” 和 “AppSign”。
请使用本文 前提条件 已获取的 AppID 和 AppSign 正确填写,否则示例源码无法正常运行。
打开工程。
使用 QtCreator 打开 “./ZegoExpressExample/ZegoExpressExample.pro” 工程文件。
编译和运行项目工程。
方式 1:通过 QtCreator 直接 Run 或者 Build。
打开 Qt 工程后,单击左下角的 “Run”、“Debug”、“Build” 按钮,构建并运行 Demo。
方式 2:通过 qmake 和 make 构建。
Windows
cd \path\to\this\folder
命令进到此文件所在的目录。call "\path\to\your\vcvarsall.bat" x86
命令设置 MSVC 环境。qmake ZegoExpressExample\ZegoExpressExample.pro CONFIG+=Win32 -o .\build\Makefile
命令通过 qmake 生成 Makefile。cd build
进入 build 目录,并通过 nmake
命令构建工程。cd ..
回到上级目录,并通过 windeployqt .\bin\release\ZegoExpressExample.exe
命令部署 Qt App。macOS
cd /path/to/this/folder
命令,进入此文件所在目录。qmake ZegoExpressExample/ZegoExpressExample.pro CONFIG+=x86_64 -o ./build/Makefile
命令,通过 qmake 生成 Makefile。cd build
命令进入 build 目录,并通过 make
命令构建工程。cd ..
命令回到上级目录,并通过 macdeployqt ./bin/release/ZegoExpressExample.app
命令部署 Qt App。Linux
cd /path/to/this/folder
。qmake ZegoExpressExample/ZegoExpressExample.pro -o ./build/Makefile
,通过 qmake 生成 Makefile。cd build
,进入 build 目录并执行 make
构建工程。bin/release
目录下,找到 ZegoExpressExample
工程文件,即可运行。ZegoExpressExample.pro
中的配置)。/usr/aarch64-linux-gnu/Qt-5.12.12
目录。export TARGET_LINUX_ARCH=aarch64
,此环境变量是为帮助 ZegoExpressExample.pro
识别当前要构建的目标平台。/usr/aarch64-linux-gnu/Qt-5.12.12/bin/qmake ZegoExpressExample/ZegoExpressExample.pro -o ./build/Makefile -spec linux-aarch64-gnu-g++
,通过 qmake 生成目标平台为 aarch64 的 Makefile。cd build
,进入 build 目录并执行 make
构建工程。bin/release
目录下的产物和 /usr/aarch64-linux-gnu/Qt-5.12.12/lib
目录拷贝到您的目标平台上,即可运行。在真机中运行项目,运行成功后,可以看到本端视频画面。
为方便体验,ZEGO 提供了一个 Web 端调试示例 ,在该页面下,输入相同的 AppID、RoomID,输入不同的 UserID、以及对应的 Token,即可加入同一房间与真机设备互通。当成功开始音视频通话时,可以听到远端的音频,看到远端的视频画面。
联系我们
文档反馈