V833@Melis4.0 开发QuickStart
-
- Melis4.0简介
Melis3.0及之前的版本过于严格的模块化设计,增加了系统不必要的复杂性,有过分设计之嫌,随着新的特性和问题fix补丁的不断引入,系统出现了僵化,顽固,粘滞,重复的问题, 使设计难以改变,难以重用,难以做正确的事情,八股文式的模块封装机制,产生了大量重复的代码,不但增加了系统运行时负载,还限制了系统的开放能力和方案容量。有鉴于此,Melis4.0是在Melis3.0的基础上,对系统架构进行了重新设计,去除了全系统模块化,混合内核等复杂的内核机制,淡化模块化,采用大内核小模块,弱化混合内核,增强宏内核特性等措施。增加了对Posix, V4L2,OpenMax,MPP, Debug子系统,Linux style的设备管理以及抽象Hardware层的支持,整体向Linux风格靠拢,不但使系统更容易使用, 而且在多媒体处理能力上得到了增强。Melis4.0整体架构如下图所示,其中浅色的ffmpeg/gstreamer组件是未来计划引入的部分,之所以引用gstreamer是因为相对于其它的多媒体框架,Gstreamer整体框架调度性能更优秀,而FFMPEG的跨平台性性能和软编性能够好,可以作为核心编解码组件,两者相辅相成,并不冲突.内核仍然基于熊大的rt-thread进行拓展,作为一款有高度的高性能内核,RT-Thread不但可以适配MCU级的应用方案,更可以支撑Linux级的大型应用方案,这是zephyr, freeRTOS等内核无法比拟的,另外,pthread, shell,以及网络组件等部分也是从熊大社区直接拿来用的,在这里向熊大表示深深的感谢 @熊大.https://www.rt-thread.org/
V4L2,OMX, MPP的引入增强的了系统对多媒体的扩展能力和兼容能力,不但可以降低sensor移植时的难度,而且能够有效利用既有Linux上的方案成果,使用户能够快速从Linux向小成本的Melis4.0方案上迁移。
- 环境配置:
sdk目录下 source melis-env.sh,初始化环境变量
选择工程,公版工程为:v833-smart-doorbell
如果需要进行自定义配置,可以在lunch基础上执行make menuconfig,比如选择新的sensor类型等操作可以在这里进行。
当然,如果默认的lunch配置已经满足要求,PASS掉这一步即可。- 编译:
执行make -j4,启动多线程编译:
- 打包:
和tina类似,执行pack命令,进行打包。
图中用红色字体输出的文件即是打包结果镜像。 - 烧录:
这一步操作和tina完全一致,windows系统使用phinuxsuilt进行烧录:
烧录完成后,系统自动启动进入串口终端,等待用户输入命令。 - 验证:
在终端下,输入vin_preview,即可从屏幕端观察到图像输出。
Sensor->CSI->ISP->V4L2->VIPP->DISPLAY的通路用例:
传统上,Melis系统的强项是多媒体处理,主要侧重点是解码,4.0在3.0基础上加强了对编码的支持能力。
今后Melis的发展方向目前想到的有三点:
1.图形图显增强:支持用户界面设计工具,增强用户GUI界面的设计体验。
2.网络:melis虽然移植了各种各样的协议栈,但支持的模组却不多,这方面有待加强。
3.开源:至于方式和形式,等老板们决定。
最后,重点来了,Melis4.0,D1也完美支持!
- 环境配置:
-
@caozilong 坐等, 会像TINA一样优秀地开放SDK吗?
-
@whycan 晕哥 开放会的,可能需要一些时间.
现在通过NDA官方发布或者代理商可以有,具体渠道可以咨询我们的业务人员.
-
大哥,开了CONFIG_FRAME_POINTER就跑不起来了,求救!
-
终于把melis上支持ap6212/ap6181的驱动搞稳定咯,melis什么时候把自带的ap6203开源啊?
-
@pcmxz 在 V833@Melis4.0 开发QuckStart 中说:
终于把melis上支持ap6212/ap6181的驱动搞稳定咯,melis什么时候把自带的ap6203开源啊?
望分享模组集成的过程,让坛主给你加鸡腿
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号