前言

搭建本服务器主要是为了利用FFmpeg进行各种音视频codec的转换输出,验证客户端的解码器兼容情况。当然也可以采用其他的方案来替代。

1 ZLMediaKit开源项目搭建

1.1 源码下载

这里比较人性的一点是提供了比较详细的wiki文档

https://gitee.com/xia-chu/ZLMediaKit

编译环境是Ubuntu18.04版本,官方推荐是强烈建议使用ubuntu16或更新版本编译ZLMediaKit。

git clone --depth 1 https://gitee.com/xia-chu/ZLMediaKit
cd ZLMediaKit
#千万不要忘记执行这句命令
git submodule update --init

1.3 依赖库

这里安装了几个比较重要的库,一个是openssl,另一个是FFmpeg,用于后续推流使用

#除了openssl,其他其实都可以不安装
sudo apt-get install libssl-dev
sudo apt-get install libsdl-dev
sudo apt-get install libavcodec-dev
sudo apt-get install libavutil-dev
sudo apt-get install ffmpeg

1.4 编译

编译基本照着文档没啥大问题,接下来就是静静等着编译完成。

cd ZLMediaKit
mkdir build
cd build
#macOS下可能需要这样指定openss路径:cmake .. -DOPENSSL_ROOT_DIR=/usr/local/Cellar/openssl/1.0.2j/
cmake ..
make -j4

1.5 测试

编译完成后会在release目录下生成对应可执行文件
在这里插入图片描述
启动服务器:失败了查看下下面的日志,这边只报了一个端口被占用,修改下同目录下的配置文件config.ini即可。

./MediaServer

2 FFmpeg推流

这里主要是模拟mpeg4编码进行推流

ffmpeg -re -i “/home/learn/testvideo/Titanic.ts” -vcodec mpeg4 -f rtsp -rtsp_transport tcp rtsp://192.168.88.140/live/test

推流成功可以看到MediaServer下方的log:
在这里插入图片描述
rtsp监控采用的是vlc进行:
在这里插入图片描述

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐