## 智能猫眼3516开发样例 ### 样例简介 本Demo是基于Hi3516开发板,使用开源OpenHarmony开发的RTSP协议流媒体应用。达到将Hi3516开发板中摄像头获取的数据通过RTSP协议传输到手机并显示 。 rtsp实现可参考文档:[openharmony_1.0.1实现RTSPServer](../RTSPServer/RTSPServer.md) #### 运行效果  ![运行效果](./media/run.png) #### 样例原理  ![原理示意图](./media/principle.png) 如上图所示,手机播放3516摄像头采集的视频数据。 #### 工程版本 - 系统版本/API版本:OpenHarmony 1.0.1 release - IDE版本:DevEco Device Tool Release 3.0.0.401 ### 快速上手 #### 准备硬件环境 - 预装windows系统的PC机 - Hi3516DV300 IoT Camera开发板套件 #### 准备开发环境 开发环境安装配置参照文档:[DevEco Device Tool 环境搭建](../南向IDE环境搭建/README.md) #### 准备工程 本用例采DevEco Device Tool工具进行开发,当配置完开发环境后,我们可以在IDE上进行工程的配置下载。 - 打开DevEco Device Tool,连接远程linux服务器:[DevEco Device Tool 环境搭建](../南向IDE环境搭建/README.md) - 点击左下角DevEco插件图标,然后点击左边框出现的主页,弹出主页界面,主页中选择新建项目,如下图:  ![main_config](media/main_config.png) - 配置下载工程  ![config download](media/config_download.png) 如上图所示,填写对应样例工程的名称,选择对应的样例组件和样例工程存放路径后,点击创建即可进行样例工程的下载。下载界面如下:  ![download](media/download.png) 当三个进度条都为100%即下载完成。 #### 准备工具链 - 在Projects中,点击Settings按钮,进入配置工程界面。  ![进入工程配置页面](media/config_toolchain1.png) - 在toolchain页签中,DevEco Device Tool会自动检测依赖的编译工具链是否完备,如果提示部分工具缺失,可点击SetUp按钮,自动安装所需工具链。 - 如果出现安装pip组件失败,可参考[修改Python源的方法](https://gitee.com/link?target=http%3A%2F%2Fdevice.harmonyos.com%2Fcn%2Fdocs%2Fdocumentation%2Fguide%2Fide-set-python-source-0000001227639986)进行修改,完成尝试重新安装。  ![工具链配置界面](media/config_toolchain2.png) - 工具链自动安装完成后如下图所示。  ![工具链配置成功](media/config_toolchain3.png) #### 编译 样例代码下载完成后,DevEco Device Tool会重新要求连接远程服务器,输入密码连接后会进入对应的代码编辑界面,此时点击左下角DevEco插件图标,选择PROJECT TASKS可以查看到对应的样例工程,点击build选项进行编译,并可在终端查看对应的编译结果。  ![build](media/build_ok.png) 固件生成在对应工程目录的out/hispark_taurus/smart_door_viewer_3516/目录下。  ![firm](media/firm.png) #### 烧录/安装 编译完成后可以通过DevEco Device Tool进行烧录,在烧录前需要做一些烧录的配置: ##### 配置准备 在配置烧录前需要先查看DevEco Device Tool是否可以正常识别串口。 - 点击左边栏"REMOTE DEVELOPMENT",找到 并点击” Local PC “ 选项。 - 查看 Local PC右边图标 如若图标为![方型图标](media/zhengfang_icon.png),则代表DevEco Device Tool已连接本地,可以正常识别串口。 如若图标为![箭头图标](media/sanjiao_icon.png),则代表DevEco Device Tool未连接本地,不能识别串口,此时需要点击该绿色图标进行连接,连接成功后图标会变为![方型图标](media/zhengfang_icon.png)。  ![check local pc](media/check_local_pc.png) - 点击主页,在主页选择对应工程,点击配置工程进入到配置页面  ![start config project](media/config_project.png) ##### 配置串口 配置页面选择的板级配置页面,在该页面查找到烧录选项,配置烧录选项中的upload_port和upload_protocol,upload_port选择开发板对应的串口号,upload_protocol选择hiburn-usb,最后点击右上角的保存按钮进行保存。  ![config searail](media/config_serail.png) ##### 烧录 + 当配置完串口以及固件后,直接点击左边栏工程管理中的upload即可启动烧录。  ![](media/burn.png) + 在终端窗口显示如下蓝色提示信息时,在终端按下任意键继续烧录。  ![](./media/continueburn.png) + 在终端窗口显示如下提示信息时,按住复位键,插拔USB线,最后松开复位键启动烧录。  ![](media/startburn.png) + 启动烧录后,界面提示如下信息时,表示烧录成功。  ![](media/burnseccess.png) 更多烧录细节可以参考[Hi3516DV300开发板烧录](https://device.harmonyos.com/cn/docs/documentation/guide/ide-hi3516-upload-0000001052148681#section198818610417)。 ##### 设备启动 如果是第一次烧录程序的话,单板在启动的时候需要设置bootargs,否则不能正常启动。单板第一次启动会停在hisilicon界面:  ![set bootargs](./media/bootargs.png) 输入以下启动参数: ``` setenv bootcmd "mmc read 0x0 0x80000000 0x800 0x4800; go 0x80000000"; setenv bootargs "console=ttyAMA0,115200n8 root=emmc fstype=vfat rootaddr=10M rootsize=20M rw"; saveenv reset ``` #### 操作体验 ##### 开启热点 准备一部手机开启热点设置 ``` ssid为"SMedia", password为”12345678“。 ``` ##### 设备连接热点 - 准备一张SD卡插入到插槽内。 + 进入3516的shell输入如下命令连接热点: ``` ./bin/wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf ```  ![wifi connect](./media/start_connect_wifi.png) + 在3516中输入ifconfig查看连接状态:  ![wifi state](./media/wifi_state.png) ##### 运行应用 + 在串口下输入 ``` ./bin/rtsp_server ```  ![start app](./media/start_app.png) 打印如下表示设备应用已准备完毕  ![app ready](./media/app_ready.png) + 在手机应用市场中搜索”完美播放器“并下载安装。  20211204171806 + 打开菜单选择网址播放。  ![select](./media/select_url.png) + 输入rtsp播放地址,其中ip地址192.168.43.118为3516DV300板子中的地址。  ![set_url](./media/select_url.png) ##### 效果动图  ![效果图](./media/run.gif) ### 参考资料 + [系统基础环境搭建](https://gitee.com/openharmony/docs/blob/OpenHarmony_1.0.1_release/zh-cn/device-dev/quick-start/%E6%90%AD%E5%BB%BA%E7%B3%BB%E7%BB%9F%E5%9F%BA%E7%A1%80%E7%8E%AF%E5%A2%83.md) + [Hi3516搭建环境](https://gitee.com/openharmony/docs/blob/OpenHarmony_1.0.1_release/zh-cn/device-dev/quick-start/Hi3516%E6%90%AD%E5%BB%BA%E7%8E%AF%E5%A2%83.md) + [DevEco Device Tool 环境搭建](../南向IDE环境搭建/README.md) + [Hi3516开发板介绍](https://gitee.com/openharmony/docs/blob/OpenHarmony_1.0.1_release/zh-cn/device-dev/quick-start/Hi3516%E5%BC%80%E5%8F%91%E6%9D%BF%E4%BB%8B%E7%BB%8D.md) + [3516上快速运行Hello OHOS](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/quick-start/quickstart-lite-steps-hi3516-running.md)。 + [openharmony_1.0.1实现RTSPServer](../RTSPServer/RTSPServer.md) + [知识体系](https://gitee.com/openharmony-sig/knowledge)