现场设备配置说明

最近更新时间:2024-02-20 10:59:32

我的收藏

JSON 配置文件样例

文件名:config.json 文件位置:$(workspace)/config.json 文件类型:json
注意:"//"后注释在使用时要删除。最小节点如下 { "device_id":"dev1", //修改为控制台中创建的现场设备ID "device_name":"vin234", "device_streams":1, //如果是多路输入,修改这里的流数目,并增加streams_config数组中的元素个数 "cloud_mode":"public", "certificate":"./device.pem", "projectid" : "xxxxx", //修改为控制台中创建的项目ID "password": "xxxxx", //修改为控制台中创建的密码 "streams_config": [ { "fps":30, "bps":2000, "width":1920, "height":1080, "camera":0, //修改为实际接入的相机,对应/dev/videox "protocol":"v4l2" //如果为外部输入yuv数据,修改为outside。 如果为外部输入编码流数据,修改为outenc } ] }

JSON 配置根节点含义

节点名
类型
含义
缺省值
备注
参数范围
device_id
字符串型(String)
设备 ID,用于注册到服务器的唯一编码
-
必填
-
device_name
字符串型(String)
设备名称,用于辨识设备信息
-
必填
-
force_login
数字型(Number)
是否强制登录
0
同名 ID 登录是否剔除之前的设备登录
0 :已有相同 ID 登录时,当前设备登录被剔除
1: 已有相同 ID 登录时,当前设备会强制登录,将之前设备剔除
server_ip
字符串型(String)
信令服务端 IP
-
公有云账号无需指定,私有化必填
-
server_port
数字型(Number)
信令服务端端口号
-
公有云账号无需指定,私有化必填
-
rtc_server_ip
字符串型(String)
媒体服务端 IP
-
公有云账号无需指定,私有化必填
-
rtc_server_port
数字型(Number)
媒体服务端端口号
-
公有云账号无需指定,私有化必填
-
projectid
字符串型(String)
项目 ID
-
公有云必填
-
cloud_mode
字符串型(String)
云模式
"private"
可选
public:公有云
private:私有云
password
字符串型(String)
设备密钥
-
公有云必填
-
certificate
字符串型(String)
服务器公钥证书
-
公有云必填,device.pem 文件路径
-
log_enable
布尔型(Boolean)
日志开关
0
可选
0:不使能
1:info 日志
2:debug + info 日志
sdk_mode
字符串型(String)
流传输模式
"server"
可选
-
min_port
数字型(Number)
本地传输端口最小值
50000
可选
-
max_port
数字型(Number)
本地传输端口最大值
50100
可选
-
audio_enable
数字型(Number)
是否采集音频
0
可选
0:不采集
1:采集
audio_receive
数字型(Number)
是否接收音频
1
可选
0:不接收
1:接收
device_streams
数字型(Number)
设备视频流数目
-
必填
1-8
streams_config
JSON 数组(JSON Array)
流配置数组
-
必选
数量与 device_streams 一致
network_bind
字符串数组(String Array)
指定网卡ip
-
可选
有指定网卡或多网需求时设置,"network_bind":["ip1","ip2"],配置指定通信网卡的本地 IP
output_path
字符串型(String)
文件存储路径
"./"
可选
配置 sdk 运行过程中日志和临时文件的输出路径
log_file_num
数字型(Number)
日志文件存储数目
7
可选
-
use_local_conf
数字型(Number)
是否使用本地配置
0
可选(仅限私有化)
0:使用远端配置
1:使用本地配置
use_local_license
数字型(Number)
是否使用本地license
0
可选(仅限私有化)
0:使用远端 license
1:使用本地 license
fec_enable
数字型(Number)
开启 FEC
0
可选
0:关闭本地 FEC
1:开启本地 FEC
up_fec_rate
数字型(Number)
指定上行 fec 冗余度
0
可选
0:自动冗余度
>0: 指定冗余度%,最大100
down_fec_rate
数字型(Number)
指定下行 fec 冗余度
0
可选
0:自动冗余度
>0: 指定冗余度%,最大100

streams_config 流配置含义

节点名
类型
含义
默认值
备注
参数范围
fps
数字型(Number)
视频帧率
-
必选
-
bps
数字型(Number)
流传输码率
-
必选,根据画质需求及实际网络负载配置。码率越高,画质越清晰,传输数据量越大
-
min_bps
数字型(Number)
期望最低传输码率
默认值与 bps 相同
可选,根据最低画质需求填写。

-
width
数字型(Number)
视频源宽度
-
必选,相机采集为相机分辨率,外部输入视频时,根据输入分辨率填写
-
height
数字型(Number)
视频源高度
-
必选,相机采集为相机分辨率,外部输入视频时,根据输入分辨率填写
-
encode_width
数字型(Number)
编码传输的视频宽度
默认与 width 一致
可选
-
encode_height
数字型(Number)
编码传输的视频高度
默认与 height 一致
可选
-
min_width
字符串型(String)
最小调整编码分辨率宽
与encode_width一致
可选
开启动态分辨率时设置
min_fps
数字型(Number)
最低 fps
20
可选
调整动态帧率时设置
forece_min
数字型(Number)
是否开启强制最低码率
0
可选
0:动态控制最低码率
1:将期望最低码率作为最低码率
major
数字型(Number)
是否配置为主流
0
可选
0:否
1:是,高优先保障主流
protocol
字符串型(String)
采集协议
“v4l2”
可选
“v4l2”:由SDK采集 v4l2相机数据
“outenc”:客户通过接口输入编码流数据
"outside":客户通过接口输入图像数据
camera
数字型(Number)
v4l2相机编号
0
填写数字X对应设备 /dev/videoX ,当protocol 字段配置为“v4l2”时,此字段生效
-
codec
数字型(Number)
编码类型
0
可选
0:h264
1:h265
2:av1
encoder_type
数字型(Number)
视频编码方式
1
可选
0:软编优先
1:硬编优先
frame_type
数字型(Number)
yuyv-uyvy 图像反转
0
可选
0:不反转
1:反转
record_on
数字型(Number)
是否开启本地存储
0
可选
0:不开启
1:开启
capture_acc
数字型(Number)
是否开启采集加速
0
可选
0:不开启
1:开启
need_mirror
数字型(Number)
是否开启镜像
0
可选
0:不开启
1:开启
always_push
数字型(Number)
是否开启强制推流
0
可选
0:不开启
1:开启

streams_config 流配置 protocol 扩展及网络相机采集配置

1. 拉取 rtsp 相机场景参见 streams_config 节点配置
参考配置: "streams_config": [ { "fps":25, "bps":2000, "width":1920, "height":1080, "protocol":"normal", "cameras": [ { "width":1920, "height":1080, "protocol":1, "url":"rtsp://xxxxx" } ] } ]
2. 多画面拼接场景参考 streams_config 节点配置
"streams_config": [
{
"fps":25,
"bps":2000,
"width":2560,
"height":1440,
"protocol":"combine",
"cameras": [
{
"width":640,
"height":480,
"camera":1,
"protocol":2,
"url":"/dev/video0"
},
{
"width":640,
"height":480,
"camera":1,
"protocol":2,
"url":"/dev/video1"
},
{
"width":640,
"height":480,
"camera":1,
"protocol":2,
"url":"/dev/video2"
},
{
"width":640,
"height":480,
"camera":1,
"protocol":2,
"url":"/dev/video3"
}
],
"combine_config": {
"basic_width":1920,
"basic_height":1080,
"pattern": [
{
"x1":0,
"y1":0,
"x2":640,
"y2":480
},
{
"x1":640,
"y1":0,
"x2":1280,
"y2":480
},
{
"x1":0,
"y1":480,
"x2":640,
"y2":960
},
{
"x1":640,
"y1":480,
"x2":1280,
"y2":960
}
]
}
}
]
节点名
类型
含义
默认值
备注
参数范围
protocol
String
图像处理类型
"normal"
默认不处理
normal:解码后正常传输
rtsp_enc:透传编码流
combine:混流拼接
cameras
JSON Array
视频源相机
-
涉及多个相机组合时,需配置多个相机节点
-
width
(cameras 节点中)
Number
相机采集宽度
-
-
-
height
(cameras 节点中)
Number
相机采集高度
-
-
-
protocol
(cameras 节点中)
Number

采集协议类型
1
-
1:rtsp 采集
2:v4l2 mmap 采集
3:v4l2 dma 采集
url
(cameras 节点中)
String

采集数据源地址
-
配合相机采集协议类型
protocol=1:网络相机拉流 rtsp URL
protocol=2/3:/dev/videox