Hi:
TI技术支持。我使用的linux内核为咱们的linux-2.6.32-psp03.00.01.06编译而来。我想问的是当我的camera并行输出8位RAW格式分辨率1024*768数据时,我拍照时可以修改分辨率为1200*800,1207*768,640*480等等得到预览画面并拍出相应分辨率的照片。可是当我的camera输出YUV格式时我发现我无法调整分辨率了,我只能在1024*768分辨率下预览并拍照。我觉得这是ISP的resizer没有处理的缘故。请问ISP在接受RAW数据时是不是默认就开启resizer功能的?而当接受YUV数据时需要额外的设置?
Feng Dong:
修改前端输出的分辨率应该是和sensor相关的.
Jason Yuan:
回复 Feng Dong:
feng dong:
您好。“修改前端输出的分辨率应该是和sensor相关的”,请问是和sensor的输出的数据格式相关吗?是否是因为输出YUV格式时AM3715的ISP就无法resizer了?
因为用sensor输出raw时我输出的分辨率也是固定1024*768的,没有在sensor驱动里特别设置不同的尺寸。但是raw拍出的照片可以随应用程序的设置而变换不同的分辨率,但是当sensor输出YUV时,sensor输出分辨率还是1024*768,可是此时拍出的照片已经无法随应用程序而改变分辨率了。我想知道这是怎么回事。
iMage:
回复 Jason Yuan:
修改分辨率要同时修改sensor 和isp模块设置,你resizer模块就是经过软件处理的,不是真正原始分辨率。
yuv格式也可以resize,估计你软件没弄好。
Jason Yuan:
回复 iMage:
To iMage:
感谢你对我问题的解述。我再次查看了TI提供的linux-2.6.32-psp03.00.01.06中附带的ISP的驱动程序。发现咱们的ISP只有在接收camera送给的RAW数据时才会进行ISP_PREVIEW和ISP_RESIZER的处理。当我们的摄像头输出的为别的数据格式时(比如YUV),咱们的ISP就只做ISP_CCDC处理了。
虽然硬件指导手册说ISP在接收YUV数据时也具有resizer功能,但是在TI提供的linux-2.6.32-psp03.00.01.06源码包里对这项功能默认是未实现的,现在就是不知道有没有办法可以实现,或者说是修复。
Yang Elroy:
我在mcfw/link_api/isplink.h中看到过如下一段话:
ISP link does M2M (Memory To Memory) Image Signal Processing of RAW BAYER/YUV data to generateupto maximum of ISPLINK_MAX_OUT_QUE streams.
If input data format is RAW BAYER then IPIPE and RSZ processings are applied.
If input data format is YUV then only RSZ processing is applied.
User should tune clkDivM and clkDivN values to make ISP work depending on the DDR loadapplied based on the use case.
我的理解是,ISP接收YUV数据应该是自动启用RSZ功能,希望能帮到你。