当前位置: 首页 > news >正文

安装流媒体服务ZLMediaKit和ffmpeg

流媒体服务有两种安装方式,一是宿主机源码安装,一个是docker部署,这次我用的是源码安装包,正常流程:

# 复制流媒体系统文件到系统文件夹
sudo cp -R  ZLMediaKit_x86 /usr/local/ZLMediaKit
sudo chmod 777 /usr/local/ZLMediaKit/MediaServer# 设置开机自启(此步骤,需要在执行上传系统文件夹后再执行)
sudo cp ~/zt-video-analysis-system/supervisor/zlm.service /etc/systemd/system
sudo systemctl enable zlm.service# 安装FFmpeg推流工具
sudo apt install ffmpeg

安装过程中有些差异和报错,安装步骤和解决问题过程如下:

1、用xftp上传安装包

image

2、复制流媒体系统文件到系统文件夹

  • 这里因为安装包的名称有变动,目录也有变动,导致报错。

image

  • 修改为正确的路径:
  • sudo cp -R  ZLMediaKit_x86_source/ /usr/local/ZLMediaKit
    sudo chmod 777 /usr/local/ZLMediaKit/ZLMediaKit_x86_source/MediaServer

image

 

3、设置开机自启

sudo cp ./zlm.service /etc/systemd/system
sudo systemctl enable zlm.service
  • 这里的服务文件zlm.service里的路径也需要修改
  • image

     

4、安装FFmpeg

sudo apt install ffmpeg

image

 

按照上面的步骤,流媒体服务已经部署完了,但是摄像头不能播放第一个报错

ZLM_API请求异常: strHTTPConnectionPool(host='192.168.0.43', port=8050): Max retries exceeded with url: /index/api/addStreamProxy (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7faaa9a56c70>: Failed to establish a new connection: [Errno 111] ECONNREFUSED'))

错误原因分析

[Errno 111] ECONNREFUSED 表示:

  • 目标服务器 192.168.0.43:8050 的 ZLMediaKit API 服务没有运行或端口未监听
  • 客户端无法建立连接

排查和解决方案:

# 启动服务
sudo systemctl start zlm.service# 检查状态
systemctl status zlm.service# 查看日志(如果启动失败)
sudo journalctl -u zlm.service -n 50 --no-pager# 验证端口是否监听
sudo netstat -tulpn | grep 8050
# 或
sudo ss -tulpn | grep 8050

通过报错日志找到问题:

 缺少 OpenSSL 1.1 的共享库:libssl.so.1.1

error while loading shared libraries: libssl.so.1.1: cannot open shared object file

image

 解决方案:安装 OpenSSL 1.1

# 下载 OpenSSL 1.1wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb

# 安装
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb# 重启服务 
sudo systemctl restart zlm.service # 检查状态 
systemctl status zlm.service # 验证端口 
sudo netstat -tulpn | grep 8050

 

安装成功后,服务仍然不能正常启动,第二个报错:

TCP Server listening on [::]:8050 # 8050端口启动成功绑定套接字失败:address already in use  # 443端口被占用端口占用或无权限:listen on :::443 failed:address already in use 程序启动失败,请修改配置文件中端口号后重试!

image

 通过日志找到问题:端口 443 已被占用,导致 ZLMediaKit 启动失败。

解决方案:

1.查看是什么占用了443端口

sudo netstat -tulpn | grep :443
# 或
sudo lsof -i :443

2.修改 ZLMediaKit 配置文件

# 找到配置文件
cd /usr/local/ZLMediaKit/ZLMediaKit_x86_source/
ls -la config.ini# 编辑配置文件
sudo nano config.ini
# 或
sudo vim config.ini

找到 HTTP 配置,修改端口

[http]
port=8050
sslport=8443    # 将443改为8443或其他未占用端口

或者直接使用如下命令:

cd /usr/local/ZLMediaKit/ZLMediaKit_x86_source/# 备份原配置
sudo cp config.ini config.ini.bak# 修改 sslport 为 8443(如果配置文件中有这行)
sudo sed -i 's/sslport=443/sslport=8443/g' config.ini# 或者禁用 HTTPS(设置为0)
# sudo sed -i 's/sslport=443/sslport=0/g' config.ini# 查看修改结果
grep -i "sslport" config.ini

重启服务

# 重启 ZLMediaKit
sudo systemctl restart zlm.service# 等待几秒后检查状态
sleep 3
systemctl status zlm.service# 验证端口
sudo netstat -tulpn | grep -E "8050|8443"

这时候服务已经正常启动

image

 

但是摄像头播放还是报错,第三个报错,secret错误:

这个报错可以直接定位到是流媒体配置文件config.ini里的secret和系统配置文件system.ini里的secret不一致,修改成一样即可。

image

 

image

 

现在再重启系统,摄像头可以正常播放了。

 

 

http://www.jsqmd.com/news/193685/

相关文章:

  • LoRA微调显卡选择
  • GLM-TTS能否用于直播场景实时变声?流式推理能力评估
  • “解压”反成后门:陈年WinRAR为何成为国家级安全风险
  • PHP图像识别速度优化实战(从卡顿到毫秒级响应的蜕变)
  • c# invoke委托更新UI显示GLM-TTS实时进度
  • 7 个 AI 文献综述工具,把 “学术熬夜” 变成 “咖啡时间”
  • 2026年正规的一次性可视喉镜,可视化喉镜,便携可视喉镜厂家推荐榜单 - 品牌鉴赏师
  • 2026年重庆家长必看指南:孩子心理出现问题去医院挂什么科?重庆儿童心理咨询哪家医院好及专业科室解析 - 品牌2026
  • PHP视频流加密解决方案(企业级安全架构大揭秘)
  • C#推流RTMP,摄像头、麦克风、桌面、声卡(附源码)
  • 设计圈都在疯传!这10个免费站堪称素材界的显眼包
  • web performance API测量GLM-TTS请求响应时间
  • 核工业机器人电机驱动器CANFD隔离芯片国产替代方案
  • AI浪潮下的测试职业重构:四大核心护城河
  • 微pe硬件检测功能辅助选择合适GPU运行GLM-TTS
  • 为什么 AI 写得越快,软件反而越难理解
  • dvwa SQL注入防御思路迁移到API防刷机制设计
  • 测试左移落地的5个关键动作,缺一个就等于没做
  • 3种高效方法:让传统PHP系统无缝接入智能合约体系
  • OpenAI:从“开放理想”到“时代引擎”的十年跃迁
  • markdown table展示GLM-TTS不同参数组合效果对比
  • 【路径规划】基于混合双向优化算法(双向A算法和人工势场法)三维约束下平滑路径规划附Matlab代码
  • 2026年最值得投资的3类测试证书:含金量排名与深度解析
  • 2026重庆小孩心理有问题去哪个医院?青少年心理咨询正规医院推荐,重庆哪些医院有儿童青少年心理科 - 品牌2026
  • 视频版权保护全解析,手把手教你用PHP实现加密流播放
  • 让WinForms再次伟大
  • dify错误处理节点捕获GLM-TTS调用异常情况
  • Paperzz 文献综述:从 “文献堆里找方向” 到 “3 步出原创框架”,学术小白的文献整理加速器
  • 自愈测试框架的6个核心模块,开源项目推荐
  • 从 “卡壳” 到 “丝滑”:藏在 paperzzAIPPT 里的 PPT 制作 “懒人逻辑”