Skip to content

监控录像服务安装 ​

1. 监控平台整体架构 ​

2. 视频部署步骤 ​

2.1. 服务器开放端口 ​

  • 5061:5061 //sip tcp端口号
  • 5061:5061/udp //sip udp端口号
  • 8082 //流媒体服务器api http接口
  • 8443 //流媒体服务器api https接口
  • 554:554 //rtsp推流接口
  • 1935:1935 //rtmp推流接口
  • 8000:8000 //rtc接口
  • 30000-30500:30000-30500 //rtp tcp推流端口
  • 30000-30500:30000-30500/udp //rtp udp推流端口

注意!!!务必到服务器安全组开放对应端口,否则设备上线,点播和直播等功能无法使用。

2.2. 修改sip配置和record配置,并编译jar包 ​

  • 配置文件在fastbee-admin/src/main/resources/application-prod.yml
yml
# sip 配置 默认情况下是关闭sip服务的,需要时开启该服务
sip:
  enabled: true
## 注意!!!docker部署保持默认即可,window测试环境填本地网卡内网IP
  ip: 177.7.0.13
  port: 5061
  domain: 3402000000
  id: 34020000002000000001
  password: 12345678
  • record配置文件在fastbee-record/src/main/resources/application-prod.yml
yml
# [可选] 监听的HTTP端口, 网页和接口调用都是这个端口
# 您需要使用实际的证书名称替换domain_name.jks
# 证书获取参考文档:https://help.aliyun.com/zh/ssl-certificate/user-guide/enable-https-on-spring-boot
server:
    port: 18081
    servlet:
        context-path: /         # 应用的访问路径
    #  HTTPS配置, 默认不开启
    ssl:
        # 是否开启HTTPS访问 默认关闭
        enabled: false
        # enabled: true
        # 证书文件路径,您需要使用实际的证书名称替换domain_name.jks。
        key-store: classpath:fastbee.online.jks
        # 证书密码 修改为对应密码
        key-store-password: fastbee
        # 证书类型, 默认为jks,根据实际修改
        key-store-type: JKS

2.3. 将jar包,https证书复制到docker部署目录,然后启动 ​

record包目录证书和zlm配置文件目录zlm运行日志

2.4. 非Docker部署,服务拆分部署 ​

  • 保证服务器对应服务的端口开放
  • java sip配置根据本地接口环境,添加对应网卡接口ip
  • zlmediakit conf/config.ini的hook api 添加java api回调地址
  • 设备管理-> 视频配置-> 修改 zlmediakit 服务器IP 服务器域名 流媒体密钥等信息

3. 录像模块部署 ​

3.1. Docker 部署 ​

  • 根据部署环境修改fastbee-record包的配置文件application-prod.yml,使用到redis缓存,根据需要修改对应host和password
  • 编译fastbee-record.jar包,然后放在部署文件夹/data/zlmedia/record下面
  • 项目路径下 /docker/data/zlmedia/record 有打包容器的dockerfile,会把record包和ZLMediaKit打包到一起
  • 把docker-compose.yml的注释去掉,执行"docker-compose up -d" 即可。
yml
  zlmedia-record:
    build:
      context: /var/data/zlmedia/record
    # image: zlmediakit/zlmediakit:master
    container_name: zlmedia-record
    privileged: true
    restart: always
    ports:
     - 18081:18081
     - 8082:80
     - 8443:443
     - 554:554
     - 1935:1935
     - 8000:8000
     - 30000-30100:30000-30100/udp
    expose:
     - "80"
     - "443"
     - "554"
     - "1935"
    volumes:
     - /var/data/zlmedia/record/fastbee-record.jar:/fastbee-record.jar
     - /var/data/zlmedia/record/logs:/opt/assist/logs
     - /var/data/zlmedia/logs:/opt/media/bin/log
     - /var/data/zlmedia/data/www:/opt/media/bin/www
     - /var/data/zlmedia/conf/config.ini:/opt/media/conf/config.ini
     - /var/data/zlmedia/conf/default.pem:/opt/media/bin/default.pem
    networks:
      network:
        ipv4_address: 177.7.0.15

3.2. Windows&Linux环境 部署 ​

  • 安装ffmpeg和ffprobe工具,并修改fastbee-record项目配置文件的工具路径和录像路径
  • 单独运行fastbee-record.jar包和ZLMediaKit,
  • 执行 "java -jar /fastbee-record.jar &"
yml
# fastbee-record项目配置
userSettings:
    # [必需修改 ] zlm配置的录像路径,
    record: /opt/media/bin/www/record
    # [必需修改 ] ffmpeg路径
    ffmpeg: /usr/bin/ffmpeg
    # [必需修改 ] ffprobe路径, 一般安装ffmpeg就会自带, 一般跟ffmpeg在同一目录,用于查询文件的信息
    ffprobe: /usr/bin/ffprobe

注意!!! ffmpeg和ffprobe需要与ZLMediaKit配套使用,会管理流媒体服务器的录像文件。

3.3. 录像相关接口切换为https ​

最新master版本的录像接口支持https/http切换,请更新代码

1. 下载JKS证书 ​

参考文档:https://help.aliyun.com/zh/ssl-certificate/user-guide/enable-https-on-spring-boot

2. 修改配置文件,重新部署jar包 ​

  • enabled:使能开关
  • key-store:证书路径
  • key-store-password:证书密码
yml
# [可选] 监听的HTTP端口, 网页和接口调用都是这个端口
# 您需要使用实际的证书名称替换domain_name.jks
# 参考文档:https://help.aliyun.com/zh/ssl-certificate/user-guide/enable-https-on-spring-boot
server:
    port: 18081
    #  HTTPS配置, 默认不开启
    ssl:
        # 是否开启HTTPS访问 默认关闭
        enabled: true
        # enabled: true
        # 证书文件路径,您需要使用实际的证书名称替换domain_name.jks。
        key-store: classpath:fastbee.online.jks
        # 证书密码 修改为对应密码
        key-store-password: fastbee
        # 证书类型, 默认为jks,根据实际修改
        key-store-type: JKS

3. 修改流媒体服务器的播放协议为https ​

3. 修改流媒体服务器的播放协议为https截图

3.4. 常见问题 ​

1. 修改录像文件长度 ​

yml
# zlmedia/conf/config.ini  流媒体服务配置文件
[record]
appName=record
fileBufSize=65536
filePath=./www
fileSecond=3600
sampleMS=500
fastStart=0
fileRepeat=0

# Java 中 ZmlHookServiceImpl  onPublish函数
...... playrecord
ret.put("mp4_max_second", 10);
...... download
ret.put("mp4_max_second", 10);
...... 
# 默认为10s  可以根据需要修改

2. 录像存放路径 ​

  • zlmedia/data/www/record/ 摄像头录像文件

4. window环境下搭建调试监控设备环境 ​

4.1. 使用docker脚本部署zlmediakit ​

下载docker桌面版本

使用docker目录下脚本启动zlmediakit

4.1 使用docker脚本部署zlmediakit页面截图

进入docker/data目录下,输入: docker-compose -f docker-compose-window.yml up -d

4.1 使用docker脚本部署zlmediakit页面截图

4.2. 修改sip配置 ​

查看网卡ip

4.2 修改sip配置截图4.2 修改sip配置截图

修改java配置中的sip配置

4.2 修改sip配置截图

启动后端和前端项目
后端 启动FastBeeApplication应用

4.2 修改sip配置截图

前端 输入 npm run dev启动项目

4.2 修改sip配置截图

4.3. 在fastbee平台新增流媒体服务器 ​

新增服务器

4.3 在fastbee平台新增流媒体服务器截图

添加局域网ip为192.168.31.159的服务器

4.3 在fastbee平台新增流媒体服务器截图

修改HookUrl为:host.docker.internal:8080

4.3 在fastbee平台新增流媒体服务器截图

蜂信物联 | fastbee.cn