1 ZLMediaKit 是什么🤔
ZLMediaKit是一个开源的基于C++11的高性能运营级流媒体服务框架。可以实现rtsp、rtmp、http-flv、gb28181、webrtc等协议的推拉流、代理、互转等等功能。
2 前期准备
- windows系统(10或11)
- cmake编译工具
- OpenSSL软件库包
- libsrtp安全实时传输协议的开发包
- ZLMediaKit流媒体服务器代码
❗︎注意:由于ZLMediaKit
使用了一些其他的开源代码库,所以你不能直接通过 GitHub 网站上的 Download ZIP 的方式下载,而是需要Git Bash
执行以下代码下载,然后打包上传到你需要编译的服务器
sh
# 国内用户推荐从同步镜像网站gitee下载
git clone --depth 1 https://gitee.com/xia-chu/ZLMediaKit
cd ZLMediaKit
# 初始化并更新子模块
git submodule update --init
😉为了方便,我已提供了打包好的 ZLMediaKit 编译包
3 开始安装
3.1 安装 Microsoft Visual Studio 2022
按如下选择:
❗︎需要勾选上适用于 Linux 的 C++ CMake 工具
,不然可能会出问题(截图标注有误)
更改安装位置,开始安装
安装完成后需要重启电脑
3.2 安装 cmake
解压文件 cmake-3.24.2-windows-x86_64.zip
即可
3.3 安装OpenSSL
3.3.1 安装
后面直接默认下一步
3.3.2 配置环境变量
打开 cmd 输入:openssl version
,出现版本信息即代表安装成功
❗︎如果出现版本对应不上的情况,是因为其他软件安装了 OpenSSL 并配了环境变量造成冲突,不需要管它,只要配了环境变量cmake
就能识别
3.4 安装 libsrtp
3.4.1 解压
解压文件libsrtp-2.4.2.zip
3.4.2 新建构建目录
新建build
和install
文件夹,用于存放构建
和make install
后的srtp文件
3.4.3 cmake-gui 构建
打开D:\software\cmake-3.24.2-windows-x86_64\bin
下的cmake-gui.exe
文件 设置strp源码路径
和build
路径,并点击Configure
设置生成器
选择生成器为VS 2022
,平台为x64
,然后点击Finish
待cmake完成第一次配置后:
- 勾选
BUILD_SHARED_LIBS
(关键,勾选后才会生成dll); - 点击
CMAKE_INSTALL_PREFIX
后的路径修改为刚才新建的install文件夹
; - 然后勾选
ENABLE_OPENSSL
; - 最后点击
Generate
生成。
由于之前已经配了OpenSSL
的环境变量,这里会自动加载出OpenSSL
的库文件路径。然后点击Open Project
选择VS 2022
打开(暂时跳过登录)
找到右侧的INSTALL
,右键点击
-> 生成
如图代表生成完毕
然后配置以下两个环境变量
3.5 编译生成 ZLMediaKit
3.5.1 解压
解压ZLMediaKit
源码,并新建build文件夹
3.5.2 cmake-gui 构建
跟之前一样打开cmake-gui.exe
,并配置源码
和build
路径,并点击Configure
设置同样的生成器:VS 2022
、x64
- 填写
CMAKE_INSTALL_PREFIX
路径(自己新建一个路径,这个就是ZLMediaKit
的入口); - 勾选
ENABLE_WEBRTC
; - 点击
Generate
生成; - 生成完毕后,点击
Open Project
,使用VS 2022
打开; - 找到右侧的
INSTALL
,右键点击
->生成
(此步骤需要等待较长时间)。
然后就会在刚才配置的 ZLMediaKit 入口下生成相关文件
4 运行
打开ZLMediaKit
入口bin
文件夹下的MediaServer.exe
即可启动服务
如图代表启动成功
5 参考资料
至此编译完成,有问题请在评论区指出。