LiveGBS 常见问题

页面打不开

LiveCMS 和 LiveSMS都部署起来后,浏览器输入 ip:10000 端口打不开LiveCMS的页面。这种情况一般是LiveCMS的10000端口被其他程序占用了导致。可以先卸载LiveCMS,打开livecms.ini文件,把http端口从 10000 改成 10002 或其他端口,再重新安装LiveCMS。

设备无法注册

网页打开后,设备无法注册上来,需要检测 5060 端口 UDP & TCP 是否开放。

修改服务IP

修改服务IP时,需要同时修改LiveCMS和LiveSMS配置页面里面的IP,不能只修改LiveCMS,否则可能会出现设备在线但是无法播放的问题。

播放花屏、卡顿

播放视频时概率性出现花屏、卡顿等问题时,一般是由于设备端视频向服务端传输时网络跟不上导致,可以在设备端的配置页面,把视频的码率降低。一般公网播放的话建议码率设置到256-1024kbps之间。如果码率太高,设备端上行带宽很可能跟不上。

还可以将流传输模式改为 TCP 被动 来改善播放效果: LiveGBS 界面, 右上角登录后, 进入国标设备列表, 在列表视图找到 流传输模式 列, 下拉调整.

注意

TCP 被动 流传输模式需要设备支持, 同时要求默认的 TCP 30000-40000 收流端口区间开放, 如果以上条件不满足, 以 TCP 被动模式拉流, 将获得错误信息: "ack sms wait response error"

支持录像回放吗?

LiveGBS 支持三种形式的录像, 我们称之为 设备录像, 云端录像, 实时录像

  • 设备录像

    GB28181 国标协议范围内的录像, 存储在设备SD卡或硬盘录像机

  • 云端录像

    开启后, 只要拉流上来, 就会持续录像, 录像的起停跟随直播流的起停, 存储在服务器, 支持指定存储目录([基础配置] > [流媒体服务配置] > [云录像目录]), 存储格式是 HLS

  • 实时录像

    是在直播过程中, 手动或者通过接口触发的录像, 存储在服务器, 存储格式是 MP4

“sms not found”

排查LiveSMS服务是否正常运行

"invite sms wait response error"

可能的问题是配置的公网IP,但是本机的LiveCMS没法直接通过这个公网IP访问自己的LiveSMS。 这种情况比较少,如果遇到的话,需要先卸载LiveSMS服务,然后修改livesms.ini文件,将[sip]段落下的host改为127.0.0.1,wan_ip设置成之前的公网ip, 然后use_wan_ip_recv_stream=1,再重新安装LiveSMS。

“ack sms wait response error”

LiveSMS 收不到下级推流, 首先需要排查服务器端 TCP 30000-40000, UDP 50000-60000 端口是否开放。 其次排查 livesms.ini > [sip] > host 是否配置为下级可访问的IP

开启输出 RTSP 流

编辑 LiveSMS 压缩包下面的 livesms.ini > [rtsp]

[rtsp]
port=554

注意

在 Linux 下面开启 554 端口通常需要 root 权限, 需要以 sudo 来运行 livesms 服务程序

拉取一路直播流, 通过接口 /api/v1/stream/list 可以查看流信息, 其中包含了这一路直播流的 RTSP 流地址, 如图

在这里插入图片描述

这个 RTSP 地址可以用 ffplay 来播放

在这里插入图片描述

开启 HTTPS 服务

  • 配置 LiveCMS 开启 HTTPS

    livecms.ini > [https] > 配置证书路径和 CMS HTTPS 端口

以上配置操作完成后, 重启 LiveCMS, 浏览器访问 https://证书域名:CMS HTTPS 端口 验证 HTTPS 是否开启成功

上万接入通道, 文件数据库操作慢?

LiveGBS 默认使用 sqlite3 文件数据库, 当接入通道数量达到万级时, 文件数据库会拖慢系统;

这时我们建议使用 Mariadb(推荐) 或 Mysql 数据库, 数据库服务需要您提前安装好, 切换到 Mariadb 数据库很简单:

  1. 首先, 创建数据库实例

    DROP DATABASE IF EXISTS `livegbs`;
    CREATE DATABASE IF NOT EXISTS `livegbs` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
    USE `livegbs`;
    
  2. 配置 livecms.ini > [db] > Mariadb/Mysql 连接信息(其中 dialect 固定为 mysql)

    [db]
    ; dialect=mysql
    ; url=username:passowrd@(ip:port)/livegbs?charset=utf8&parseTime=True&loc=Local
    
  3. 重启 LiveCMS 服务, 系统自动完成建表操作, 至此, 数据库切换完成

配置了国标级联, 上级看不到通道?

配置上级级联的时候, 有个 选择通道 的 button, 选择哪些通道共享给上级, 这个地方, 记得进去勾选一下, 否则上级看不到通道

国标级联_选择通道

如何部署多个 LiveSMS 集群?

部署多个 LiveSMS 有助于提升视频流分发性能, 配置 livesms.ini redis 指向同一个 livecms 节点即可:

[redis]
; 指向 CMS Redis
host=127.0.0.1
port=26379
password=livegbs@2019

服务器硬件配置

服务器配置

WEB 播放器

播放器下载

详细介绍

播放鉴权

与您业务系统鉴权对接, 配置文件位置:LiveCMS安装包解压目录 > livecms.ini > [sip] > stream_auth_url

此处填写您业务系统提供的鉴权地址

填写示例: stream_auth_url=http://yourhost:port/playauth

流程说明:

  • 用户请求播放地址

    示例如: http://localhost:10001/flv/hls/t.flv?param1=111&param2=222

    其中param1和param2是附加的任意传参,名称不限

  • LiveGBS系统会GET请求回调上面stream_auth_url地址的接口,并透传附加的参数

    示例如:http://yourhost:port/playauth?param1=111&param2=222

    等待您的鉴权接口的返回:

    • 成功:200 (Status Code)

    • 失败:401

    LiveGBS判断返回的鉴权结果:

    • 成功 : 开始播放

    • 失败 : 阻止播放