ZLMediaKit 流媒体服务器编译 - Windows系统(一次成功)

1 ZLMediaKit 是什么🤔

ZLMediaKit是一个开源的基于C++11的高性能运营级流媒体服务框架。可以实现rtsp、rtmp、http-flv、gb28181、webrtc等协议的推拉流、代理、互转等等功能。

2 前期准备

  1. windows系统(10或11)
  2. cmake编译工具
  3. OpenSSL软件库包
  4. libsrtp安全实时传输协议的开发包
  5. 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 新建构建目录

新建buildinstall文件夹,用于存放构建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完成第一次配置后:

  1. 勾选BUILD_SHARED_LIBS(关键,勾选后才会生成dll);
  2. 点击CMAKE_INSTALL_PREFIX后的路径修改为刚才新建的install文件夹
  3. 然后勾选ENABLE_OPENSSL
  4. 最后点击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 2022x64

  1. 填写CMAKE_INSTALL_PREFIX路径(自己新建一个路径,这个就是ZLMediaKit的入口);
  2. 勾选ENABLE_WEBRTC
  3. 点击Generate生成;
  4. 生成完毕后,点击Open Project,使用VS 2022打开;
  5. 找到右侧的INSTALL右键点击 -> 生成(此步骤需要等待较长时间)。

然后就会在刚才配置的 ZLMediaKit 入口下生成相关文件

4 运行

打开ZLMediaKit入口bin文件夹下的MediaServer.exe即可启动服务

如图代表启动成功

5 参考资料

  1. ZLMediaKit快速开始
  2. ZLMediaKit在Windows下启用WebRtc编译(64位)
  3. ZLMediaKit配置文件详解

至此编译完成,有问题请在评论区指出。

相关推荐
Eric.Lee20212 小时前
Paddle OCR 中英文检测识别 - python 实现
人工智能·opencv·计算机视觉·ocr检测
audyxiao0012 小时前
AI一周重要会议和活动概览
人工智能·计算机视觉·数据挖掘·多模态
橙子小哥的代码世界4 小时前
【计算机视觉基础CV-图像分类】01- 从历史源头到深度时代:一文读懂计算机视觉的进化脉络、核心任务与产业蓝图
人工智能·计算机视觉
小陈phd6 小时前
OpenCV学习——图像融合
opencv·计算机视觉·cv
是十一月末6 小时前
Opencv之对图片的处理和运算
人工智能·python·opencv·计算机视觉
神秘的土鸡8 小时前
LGMRec:结合局部与全局图学习的多模态推荐系统
目标检测·计算机视觉·云计算
湫ccc10 小时前
《Opencv》基础操作详解(1)
人工智能·opencv·计算机视觉
gloomyfish10 小时前
【开发实战】QT5+ 工业相机 + OpenCV工作流集成演示
图像处理·深度学习·qt·opencv·计算机视觉
是娜个二叉树!12 小时前
图像处理基础 | 查看两张图像的亮度差异,Y通道相减
图像处理·opencv·计算机视觉
古月居GYH12 小时前
【计算机视觉】opencv-停车位检测原理及代码演示
人工智能·opencv·计算机视觉