设备端开发概述
Link Visual(标准版)为您提供设备端SDK用于设备接入和视频接入。本文介绍设备端SDK的基本信息和设备端的开发流程。
SDK简介
Link Visual(标准版)为设备端开发提供了2个SDK,用于设备接入和视频业务接入,分别是Link SDK和LinkVisual SDK。其中Link SDK提供物联网通道能力,LinkVisual SDK通过响应Link SDK的控制消息来处理流媒体业务。
Link SDK和LinkVisual SDK提供的功能如下:
Link SDK:物联网通道能力,包括MQTT长连接、上下行消息、事件上报等。
LinkVisual SDK:物联网音视频的能力,包括视频直播、视频文件播放、图片上传、智能告警事件上报、PTZ控制等。
数据流转过程示意图
图序号 | 描述 |
① | App客户端转交用户请求至物联网平台。 |
② | 物联网平台建立信令通道,接收用户请求。 |
③ | 转交用户请求至LinkVisual SDK。 |
④ | 建立媒体通道,生成媒体文件的链接。 |
⑤ | 通知IPC设备发送媒体数据。 |
⑥ | IPC设备发送媒体数据至LinkVisual SDK。 |
⑦ | LinkVisual SDK发送媒体数据至Link Visual(标准版)。 |
⑧ | Link Visual(标准版)将媒体数据发送给App客户端。 |
环境要求
SDK | 资源占用 | 平台支持 | C/C++要求 |
Link SDK |
| Linux | C98以上。 |
LinkVisual SDK |
| Linux | 支持C++ 11标准,且需确保GCC为4.8.1以上版本。 |
获取SDK
当前Link Visual(标准版)采用咨询开通模式,如果您需要使用设备SDK,请参考以下步骤进行申请。
在产品管理页面,单击目标项目。
在项目主页面的产品开发页签,找到并单击目标产品。
在产品详情页面,单击设备调试。
在设备调试页面,选择获取设备端SDK,单击立即申请。
在申请SDK对话框,输入您的相关信息,单击确定。
提交信息后,相关工作人员会及时与您联系。
使用流程
前提条件
已创建产品和设备,具体操作,请参见产品开发。
已获取SDK,具体操作,请参见本文上方的获取SDK。
该SDK的开发编译环境推荐使用Ubuntu18.04。SDK的开发编译环境会用到cmake、git等软件,可以使用如下命令行安装。
sudo apt-get install -y build-essential make git gcc g++ cmake tree
操作步骤
使用命令
tar -xf lv_2.5.1-xxx-xxx.tar.gz
解压SDK压缩包。说明压缩包文件名含有版本等可变信息,执行命令时以实际压缩包名称为准。
进入
lv_2.5.1-xxx-xxx
文件夹,查看文件夹的内容。# 进入SDK文件夹 cd lv_2.5.1-xxx-xxx # 查看文件夹内容 tree -L 2 # tree的执行结果和说明如下 |-- CMakeLists.txt # 基于cmake的编译框架实例 |-- library # linkvisual提供的库 | |-- cJSON # 三方库cJSON,提供json解析能力 | |-- linkkit # 一方库linkkit,提供物联网接入能力 | |-- linkvisual # 一方库linkvisual,提供物联网视频接入能力 | `-- mbedtls # 三方库mbedtls,提供TLS能力 |-- sample # 示例代码 | |-- demo_ipc.c # IPC形态产品的示例代码 | |-- demo_nvr.c # NVR形态产品的示例代码 | |-- ipc_operation # IPC/NVR的模拟代码,用于产生模拟视频源 | `-- sdk_api_operation # SDK API的使用示例代码 `-- version.txt # 版本更新说明
准备编译示例代码:打开
CMakeLists.txt
文件,在TOOLCHAINS_PREFIX参数后填写您的交叉编译工具链的前缀,例如arm-linux-。set(TOOLCHAINS_PREFIX "arm-linux-" CACHE STRING "set the toolchain")
依次执行命令编译文件。
# 建立一个build文件夹,用于归类编译产物 mkdir -p build # 进入build目录,使用根目录的CMakeLists.txt进行cmake cd build cmake .. # 编译并安装运行所需相关文件 make make install
执行命令
./link_visual_ipc -p ${YourProductKey} -n ${YourDeviceName} -s ${YourDeviceSecret}
运行设备Demo。其中,变量参数说明如下:
变量
参数
示例
说明
${YourProductKey}
ProductKey
g18l****
您添加设备后,保存的设备证书信息。
您也可在物联网平台控制台中设备的设备详情页面查看。
${YourDeviceName}
DeviceName
Device1
${YourDeviceSecret}
DeviceSecret
b2e6e4f1058d8****
运行结果
如果是调试设备,按照如下步骤,在Link Visual(标准版)控制台的设备调试页面,查看设备状态。
在产品设备页面,单击目标项目。
在项目主页面中,单击产品开发页签。
单击目标产品卡片,进入产品开发详情页面。
单击设备调试,查看设备状态。
若设备状态为在线,则设备接入完成。