c++ 开发虚拟摄像头_开发板有了,但我们要怎么玩?
我们拿到的设备,是一个套件,各个零件单独放置的,那我们需要怎么玩呢?
一起来看看乔版主怎么介绍玩法吧!
Wi-Fi IoT
基础目标,是能控制LED灯、点亮LED显示屏;
如果玩得高级一点,还可以通过APP来控制LED,以及控制家里的灯。
AI Camera
基础目标,使用摄像头来进行拍照和录像,并直接在大屏幕上进行预览;
如果玩得高级些,可以用摄像头来进行识别,在屏幕上进行互动。
IPC DIY
基础目标,使用摄像头来进行拍照和录像;
如果玩的高级一些,能够远程查看摄像头。
要做到上面的这些,我们就需要开发一些程序,然后让它们在设备上运行,完成对应的功能,并且进行一定的调试,看看是否运行正常。
而要运行这些程序,通常需要先将代码进行编译,然后把它烧录到设备上面,或者存储到设备上以便运行。要完成开发、编译、烧录工作,我们有需要对应的软件环境来完成对应的工作。
下面,我们先对每个步骤进行一些基础的了解。
一、安装和测试
安装
这个简单,每一个设备都有介绍视频,按照视频安装即可,难度不大,细心就成。
测试设备
不同的设备,测试方法不一样,我们只需要简单测试,确保设备可用即可。设备拿到后,正常安装了,除了AIC开机能看到屏幕点亮显示简单系统,Wi-Fi IoT的LED可能会点亮,我们还可以通过串口连接设备,来检查输出信息是否正常。
二、环境搭建
搭建开发环境
主要的开发环境,在Windows系统下面;不过在其他的系统下面,我们也还是可以开发的。
Windows的开发环境,只是把烧录和调试环境给集成到了一起,方便烧录和调试,但是烧录,可以借助华为的HiTool和HiBurn来进行,调试可以借助串口工具来查看输出,所以就算没有集成开发环境,也可以也可以进行烧录,并做基本的调试。
常见的开发环境如下:
Windows系统:全套环境是VSCode+ DevEco Device Tools插件,以及其他需要的软件。
纯开发环境:VSCode即可。
MacOS系统:开发环境用VSCode即可。
Linux系统:开发环境用VSCode即可。
搭建烧录环境
因为当前烧录环境,主要是在Windows系统下的,所以我们通常需要在Windows环境进行烧录。根据开发环境的不同,主要分为以下5种:
Windows系统:全套开发环境为自带烧录环境,无需额外配置。
纯开发环境:使用HiBurn和HiTool烧录。
MacOS系统:使用WinE或者CrossOver提供。
Windows环境:使用HiBurn和HiTool烧录。
Linux系统:使用WinE或者CrossOver提供Windows环境,使用HiBurn和HiTool烧录。
经过研究,我们也可以通过命令来进行烧录,后续将专门开新文章说明。
搭建编译环境
目前的编译环境,是在Linux环境运行的,所以我们需要一个Linux的环境,来完成编译工作。
只要是符合要求,能够正常运行编译环境的Linux,都可以拿来使用,通常我们使用:
Linux真机:Ubuntu20、CentOS7均可。
Linux虚拟机:VmWare、VirtualBox安装Ubuntu20、CentOS7均可。
Docker中的Linux:类似虚拟机环境,但是所需要的系统资源更小,一般以ubuntu20为好。
WSL:Windows10内置的Linux子系统。
云主机:主流的云平台(阿里、腾讯、华为等),安装Ubuntu20、CentOS7均可。
我们推荐使用Docker,能够以最快的速度,最小的代价,运行起来编译环境。
需要注意的是,如果不是在编译环境所在的Linux系统上面进行开发,则通常需要将编译目录和开发环境的代码目录关联起来,以便开发的代码,马上可以进行编译,通常有下面的办法:
虚拟机共享:VMWare、VirtualBox、Docker、WSL均可设置,是虚拟机环境下最好的方式。
网上邻居共享:方便共享,但是容易出问题。
sftp共享:
在开发机上面,通过VSCode的sftp插件,可以连接到Linux环境上,编辑文件和代码,以及拷贝文件。
通过WinSCP软件,也可以直接在Windows上面链接Linux环境传输文件
文件同步:可以通过命令ssh拷贝,rsync,ftp等方式来进行代码的同步。
推荐环境方案
经过反复测试和挑选,力求让初学者能够快速上手,在轻松愉悦的心情下开始学习,我们推荐的开发、编译、烧录环境如下:
Windows系统:
最简化方案:
开发:VSCode
烧录:HiBurn/HiTool
编译:Docker无忧包
MacOS系统:
最简化方案:
开发:VSCode
烧录:CrossOver-HiBurn/HiTool
编译:Docker无忧包
Linux系统:
最简化方案:
开发:VSCode
烧录:Wine-HiBurn/HiTool
编译:Docker无忧包
以上方案均经过验证,包可用,可以放心使用!!!
其他可选环境方案
Windows系统:
开发方案:全套开发环境(开发+烧录)
烧录方案:同上
编译方案:
方案1:Docker从头配置方案
方案2:虚拟机Linux
方案3:WSL,Win10自带Linux子系统
方案4:云主机或真机Linux,类似虚拟机Linux
MacOS系统:
开发方案:VSCode
烧录方案:
虚拟机Win10,HiBurn/HiTool,参考Windows系统的方案
WinE,HiBurn/HiTool,类似CrossOver
编译方案:
Docker从头配置方案
虚拟机Linux
Linux系统:
开发方案:VSCode
烧录方案:
虚拟机Win10,HiBurn/HiTool,参考Windows系统的方案
WinE,HiBurn/HiTool
命令操作烧录(有难度)
编译方案:
系统自身
Docker从头配置方案(不改变系统现有环境)
三、开发应用程序
根据手头对应设备,参考鸿蒙设备官方网址,即可开始开发;你放心,初始开发比较简单的,第一个第二个基础程序,很快就能完成,你马上就会觉得不尽兴,想要深入学习的。
四、编译、烧录、调试
编译
开发完成之后,需要编译代码,以检验开发的代码是否正确,及准备烧录镜像文件。
烧录
通过烧录工具,我们得以将编译后的镜像文件(.img或者.bin)写到设备的emmc存储中,以便运行。
调试
不同的设备,有不同的调试方案,通常通过串口进行交互,查看对应的信息,发送对应的指令,执行相关的程序等;更进一步,需要使用JATG连接和JLink进行调试,属于高级话题了,后面有时间再讲。
扫码关注我们
华为官方合作共建
HarmonyOS技术社区
c++ 开发虚拟摄像头_开发板有了,但我们要怎么玩?相关推荐
- WinXP下虚拟摄像头驱动程序开发 1
WinXP下虚拟摄像头驱动程序开发 摄像头驱动程序的主要目的是通过硬件捕捉视频信号.微软公司提供了一套视频驱动的接口,可以满足这个接口的视频驱动程序.第三方厂商开发的软件,如QQ和MSN等软件,都可以 ...
- WinXP下虚拟摄像头驱动程序开发
摄像头驱动程序的主要目的是通过硬件捕捉视频信号.微软公司提供了一套视频驱动的接口,可以满足这个接口的视频驱动程序.第三方厂商开发的软件,如QQ和MSN等软件,都可以通过这个接口读取视频摄像头采集的数据 ...
- 怎么通过media foundation将图像数据写入虚拟摄像头_千倍成本压缩!特斯拉开发虚拟激光雷达,替代最贵自动驾驶传感器...
「谁用激光雷达,谁完蛋!」 在去年特斯拉举办的 Autonomy Day 上,特斯拉 CEO Elon Musk 言辞激烈地炮轰激光雷达. 「昂贵的传感器是不必要的,这就像是一大堆昂贵的附属品.」 「 ...
- 怎么通过media foundation将图像数据写入虚拟摄像头_不知道怎么挑手机?性价比神机绝对适合你...
阅读本文前,请您先点击上面的蓝色字体,再点击"关注",这样您就可以继续免费收到最新文章了.每天都有分享.完全是免费订阅,请放心关注.注:本文转载自网络,不代表本平台立场,仅供读者参 ...
- 火星开发的价值_开发火星是幌子,月球才是必争之地
欧空局的"月球村"计划假想图 近日,我国科学家基于嫦娥四号数据在月背发现月球深部物质的消息引发公众的关注与兴趣,也使月球研究再次进入人们的视野.笔者认为,我们的确应该脚踏实地认真做 ...
- python开发项目流程_开发流程
开发流程 创建 Django 项目 创建应用 模型 数据库配置 数据库表的定义 定义模型类 生成数据表 模版 视图 服务器管理 站点管理 1.创建 Djan ...
- 手机虚拟摄像头_没键盘也能打字?三星展示最新虚拟键盘Selfie Type:是真的
1月8日消息,三星在近日举行的2020 CES国际消费电子展上展示了虚拟键盘Selfie Type,它是一款全新的概念产品,由三星内部的创意实验室C-Lab研发,能够通过手机的前置摄像头来智能识别用户 ...
- java开发工作经历_开发人员在寻找第二份工作时会经历什么
java开发工作经历 Just a little background before we begin. I have been working as a mobile app developer f ...
- 敏捷开发人员结构_开发人员可以在敏捷外观方面发表意见的4种方法
敏捷开发人员结构 敏捷已成为开发软件的默认方法. 有时,似乎每个组织都在做(或想做)敏捷. 但是,许多公司没有尝试改变其文化以使其变得敏捷,而是试图将诸如scrum的框架强加给开发人员,寻找提高生产率 ...
最新文章
- 基于RESTful API 怎么设计用户权限控制?
- db9针232接口波特率标准_RS232和RS485与RS422接口的基础知识详细介绍
- GitHub热榜第一,标星近万:这个用Python做交互式图形的项目火了
- 对精致码农大佬的 [理解 volatile 关键字] 文章结论的思考和寻找真相
- 怎样编写测试类测试分支_测试技巧–不编写测试
- DI容器是代码污染者
- linux---基础04
- 查询表授权给谁了_SQL Server 全局临时表竞争条件漏洞利用
- NPM ----快速删除node_modules
- 淘宝手淘搜索怎么做?大神导航,一个神奇的网站,从此开启大神之路!
- C盘满了怎么办?最强清理工具来了
- springboot 架构图
- 生成BMP格式图片备忘
- Thematic Contests CodeForces - 1077E
- 法官的假发是用来吓人的?
- 新浪微博模拟登录分析(含验证码)
- 5年前,榨干程序员老公1300万资产,逼其跳楼自杀的翟欣欣如今怎样了?
- 计算机无法读取内存,图文教你如何修复电脑无法识别读取的U盘(SD卡)!-内存卡在电脑上读不出来怎么办...
- 【日语词汇类编】自然与人:气候与环境
- linux内核snat分析,(十)洞悉linux下的Netfilteriptables:网络地址转换原理之SNAT
热门文章
- Yarn和SparkAlone对比
- thinkpython2e电子书下载_《Think Python 2e》中译版电子书分享
- 数据挖掘:银行评分卡制作——数据分箱、WOE、IV的意义
- python之条件判断、循环和字符串格式化
- 【MATLAB】设定坐标的轴的范围
- JavaScript事件冒泡简介及应用
- 沐雪微信平台---企业微信营销专家
- 自己编译vim,解决Ubuntu 12.04 terminal里执行gvim会挂起的问题
- siblings() 获得匹配集合中每个元素的同胞,通过选择器进行筛选是可选的。
- 常用SQL Server数据修复命令DBCC一览(转载)