ZLMediaKit Linux 安装 流媒体服务器

docker run -it --privileged=true -v /home/mp4:/opt/media/bin/www -id -p 1935:1935 -p 8080:80 -p 8443:443 -p 8554:554 -p 10000:10000 -p 10000:10000/udp -p 8000:8000/udp -p 9000:9000/udp zlmediakit/zlmediakit:master

sudo firewall-cmd --zone=public --add-port=1935/tcp --permanent
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --zone=public --add-port=8443/tcp --permanent
sudo firewall-cmd --zone=public --add-port=8554/tcp --permanent
sudo firewall-cmd --zone=public --add-port=10000/tcp --permanent
sudo firewall-cmd --zone=public --add-port=10000/udp --permanent
sudo firewall-cmd --zone=public --add-port=8000/udp --permanent
sudo firewall-cmd --zone=public --add-port=9000/udp --permanent

systemctl restart firewalld.service

docker exec -it 054869ec5077 /bin/bash

--推流 RTSP - 开源协议:要求URL最少2级
ffmpeg -re -i a.mp4 -c copy -rtsp_transport tcp -f rtsp rtsp://192.168.1.207:8554/stream/001
--拉流
ffplay rtsp://192.168.1.207:8554/stream/001

--推流 RTMP - Adoube隐私协议
ffmpeg -re -stream_loop -1 -i a.mp4 -vcodec copy -acodec copy -f flv rtmp://192.168.1.207:8554/stream
--拉流
ffplay rtmp://192.168.1.207/stream

-stream_loop : -1 表示循环推流 -0 表示单次推流,也是默认值;
-i :表示输入文件,MV.mp4 就是本例中的输入文件;
-vcodec :视频编码;
-acodec :音频编码;
copy :表示复用;


secret=VnVGRTYsGay7858016NuBVVCfbtZUKVm

--播放列表
http://192.168.1.207:8080/index/api/getApiList?secret=VnVGRTYsGay7858016NuBVVCfbtZUKVm
--查看服务器配置
http://192.168.1.207:8080/index/api/getServerConfig?secret=VnVGRTYsGay7858016NuBVVCfbtZUKVm

***************************************结果*******************************************

--实时查看ZLMediaKit日志,根据日期产生文件

--进入容器

docker exec -it id /bin/bash

1.root@054869ec5077:/opt/media/bin/log# tail -f 2023-09-07_00.log

2.VLC Media player windows 下的播放器

3.windows 推流。

### 使用 ZLMediaKit 搭建流媒体服务器 #### 1. 下载与安装 可以从官方提供的地址下载已经编译好的 Windows 版本的 ZLMediaKit 或者源码自行编译。如果选择已编译版本,则可以直接解压文件到目标目录运行[^1]。 对于需要更高定制化需求的情况,建议从源码开始配置环境并完成编译过程。具体可以参考项目的 GitHub 维基页面中的说明文档来启用特定功能模块如 WebRTC 支持等设置项[^2]。 #### 2. 编译准备 (针对Linux/MacOS用户) 如果是 Linux 或 MacOS 用户,在本地环境中需先安装必要的依赖库以及工具链才能顺利执行后续操作步骤前准备工作如下所示: ```bash sudo apt-get update && sudo apt-get install -y cmake g++ git libssl-dev pkg-config build-essential autoconf automake libtool nasm yasm python3-pip ffmpeg pip3 install meson ninja ``` 上述命令会帮助你准备好基础开发套件以便于之后进行更深入的操作流程。 #### 3. 配置选项调整 编辑 `config.h` 文件或者通过 CMake 参数指定开启哪些协议的支持情况比如 RTMP、HLS 和 SRT 等多种常见传输方式;另外还可以定义最大并发数等相关参数以满足不同业务场景下的性能要求[^3]。 #### 4. 启动服务端程序 当所有前期工作都完成后就可以启动应用程序了,默认情况下它会在后台监听某些固定端口等待来自外部设备发起请求接入进来形成完整的数据交换链条结构图示例代码片段如下所列: ```cpp #include "ZLMediaKitServer.h" int main(){ MediaKit::init(); // Start server on port 1935 for rtmp and other ports as needed. std::shared_ptr<HttpServer> http_server = HttpServer::Instance().start(8080); std::shared_ptr<RtspServer> rtsp_server = RtspServer::Instance().start(554); while(true){ sleep(1); } } ``` 此部分展示了如何初始化一个简单的 HTTP 和 RTSP 流媒体服务器实例。 #### 5. 客户端测试验证 最后利用 VLC Player 或其他第三方播放器软件尝试访问刚才创建出来的直播频道链接地址确认整个系统的正常运作状态是否符合预期效果描述标准[^4]。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值