TI中文支持网
TI专业的中文技术问题搜集分享网站

关于capturelink中的参数pVipOutPrm->pitch的作用?

我在8127上将cameralink修改为了capturelink,通过模拟摄像头采集视频数据,将数据送至A8核在ipcframesin link中将图像保存,但是保存下来的图像出现了一条宽度为16个像素点的灰色带,也就是说原来720*288的图像在rawplayer上需要736*220的格式打开才是一帧正确图像。通过打印信息发现是在capturelink_drv.c文件中的CaptureLink_drvCreateInst函数中存在关于pVipOutPrm->pitch[0],pVipOutPrm->pitch[1],pVipOutPrm->pitch[2]的设置,默认值分别为1472,1472和0。我们将pVipOutPrm->pitch[0和pVipOutPrm->pitch[1]强制设置为1440(720*2)后存储下来的图像变成了正常的720.

请问,关于这个三个picth的作用是什么?

另外,我们现在保存的图像还一直存在存储起始位置不对的问题,存储下来的图片打开后像是正常的一帧图像被竖直从中间切开,然后将左半边图片搬移至了右边?请问各位有没有遇到过这种情况?是如何解决的呢?

Ternence_Hsu:

1. picth , 这里是一行数据占用的内存空间,yuv422i 就一个平面,pitch0=2*width,pitch1=0,pitch2=0,

    如果是yuv422sp,就是两个平面,pitch0 = witch, pitch1 = witch,pitch2=0 ;就是这样计算的

2. 这个可以是你前端采集同步信号和时序处理不对引起的

Yang Elroy:

回复 Ternence_Hsu:

谢谢您的回复。

我们在将cameralink替换为capturelink上折腾了很久的时间,最后发现保存图像时出现灰色带和起始点错位问题是因为在capturelink之后并未加deilink导致的,在原来的capturelink之后增加了deilink后,保存下来的图像就是正常的720宽度图像了,而且起始点错位的情况也不复存在了。在这里与大家分享自己的一些教训,希望能帮助到具有相同困惑的朋友。

赞(0)
未经允许不得转载:TI中文支持网 » 关于capturelink中的参数pVipOutPrm->pitch的作用?
分享到: 更多 (0)