文档

设备端开发概述

更新时间:
一键部署

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控制等。

数据流转过程示意图

image

图序号

描述

App客户端转交用户请求至物联网平台。

物联网平台建立信令通道,接收用户请求。

转交用户请求至LinkVisual SDK。

建立媒体通道,生成媒体文件的链接。

通知IPC设备发送媒体数据。

IPC设备发送媒体数据至LinkVisual SDK。

LinkVisual SDK发送媒体数据至Link Visual(标准版)。

Link Visual(标准版)将媒体数据发送给App客户端。

环境要求

SDK

资源占用

平台支持

C/C++要求

Link SDK

  • RAM:300 KB。

  • ROM:300 KB(一方库)+700 KB(三方库)。

  • 可读写存储:8 KB。

Linux

C98以上。

LinkVisual SDK

  • RAM:1000 kbps码率下,占用500 KB的RAM内存。随着码率增大,RAM占用也增大。

  • ROM:占用1.4 MB的ROM内存。

Linux

支持C++ 11标准,且需确保GCC为4.8.1以上版本。

获取SDK

当前Link Visual(标准版)采用咨询开通模式,如果您需要使用设备SDK,请参考以下步骤进行申请。

  1. 登录Link Visual(标准版)控制台

  2. 产品管理页面,单击目标项目。

  3. 在项目主页面的产品开发页签,找到并单击目标产品。

  4. 在产品详情页面,单击设备调试

  5. 在设备调试页面,选择获取设备端SDK,单击立即申请

  6. 在申请SDK对话框,输入您的相关信息,单击确定

    提交信息后,相关工作人员会及时与您联系

    image.png

使用流程

前提条件

  • 已创建产品和设备,具体操作,请参见产品开发

  • 已获取SDK,具体操作,请参见本文上方的获取SDK

    该SDK的开发编译环境推荐使用Ubuntu18.04。SDK的开发编译环境会用到cmake、git等软件,可以使用如下命令行安装。

    sudo apt-get install -y build-essential make git gcc g++ cmake tree

操作步骤

  1. 使用命令tar -xf lv_2.5.1-xxx-xxx.tar.gz解压SDK压缩包。

    说明

    压缩包文件名含有版本等可变信息,执行命令时以实际压缩包名称为准。

  2. 进入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								# 版本更新说明
  3. 准备编译示例代码:打开CMakeLists.txt文件,在TOOLCHAINS_PREFIX参数后填写您的交叉编译工具链的前缀,例如arm-linux-

    set(TOOLCHAINS_PREFIX "arm-linux-" CACHE STRING "set the toolchain")
  4. 依次执行命令编译文件。

    # 建立一个build文件夹,用于归类编译产物
    mkdir -p build
    # 进入build目录,使用根目录的CMakeLists.txt进行cmake
    cd build
    cmake ..
    # 编译并安装运行所需相关文件
    make
    make install
  5. 执行命令./link_visual_ipc -p ${YourProductKey} -n ${YourDeviceName} -s ${YourDeviceSecret} 运行设备Demo。

    其中,变量参数说明如下:

    变量

    参数

    示例

    说明

    ${YourProductKey}

    ProductKey

    g18l****

    您添加设备后,保存的设备证书信息。

    您也可在物联网平台控制台中设备的设备详情页面查看。

    ${YourDeviceName}

    DeviceName

    Device1

    ${YourDeviceSecret}

    DeviceSecret

    b2e6e4f1058d8****

运行结果

如果是调试设备,按照如下步骤,在Link Visual(标准版)控制台的设备调试页面,查看设备状态。

  1. 登录Link Visual(标准版)控制台

  2. 产品设备页面,单击目标项目。

  3. 在项目主页面中,单击产品开发页签。

  4. 单击目标产品卡片,进入产品开发详情页面。

  5. 单击设备调试,查看设备状态。

    若设备状态为在线,则设备接入完成。

    image.png