之前用的lowpower+cameraLink模式,分辨率是在multich_tristream_lowpower.c中如下设置,运行正常:
pCameraInstPrm->sensorOutWidth = 1280;
pCameraInstPrm->sensorOutHeight = 720;
pCameraOutPrm->scOutWidth = 1280;
pCameraOutPrm->scOutHeight = 720;
现在硬件改用vin0、vin1双通道采集视频后,软件也改为了lowpower+captureLink模式,参考之前,分辨率在multich_tristream_lowpower.c中如下设置:
pCaptureOutPrm->scOutWidth = 1280;
pCaptureOutPrm->scOutHeight = 720;
capture模式下结构体里面没有sensorOutWidth、sensorOutHeight变量,
但程序运行后创建ENCODE时打印分辨率还是1920*1080:
ENCODE: Creating CH0 of 1920 x 1080, pitch = (1920, 1920) [PROGRESSIVE] [NON-TILED ],
ENCODE: Creating CH1 of 1920 x 1080, pitch = (1920, 1920) [PROGRESSIVE] [NON-TILED ]
请问captureLink模式下,分辨率应该在哪里修改?谢谢。
Chris Meng:
Cai Huiliang,
你设置的是VIP里面sc的输出大小,请问你sc使能了没有?
你的pCaptureInstPrm->standard是否有正确配置?
huiliang cai:
回复 Chris Meng:
参考帖子http://www.deyisupport.com/question_answer/dsp_arm/davinci_digital_media_processors/f/39/p/110514/300255.aspx#300255改的,pCaptureInstPrm->standard尝试过SYSTEM_STD_1080P_30、SYSTEM_STD_720P_50、SYSTEM_STD_AUTO_DETECT,之前确实sc没有使能,改为pCaptureOutPrm->scEnable = TRUE使能后,分辨率可以修改了,但cat /proc/interrupts还是没有中断,且报错:
Error: SemWait: Invalid Semaphore handlerError: SemRelease: Invalid Semaphore handlerReset Count: 1Reset Count: 2Reset Count: 3Error: SemWait: Invalid Semaphore handlerError: SemRelease: Invalid Semaphore handlerReset Timer Released!!
Chris Meng:
回复 huiliang cai:
Cai Huiliang,
通常sc都是不使能的,输入多大数据,就采集多大的数据。
你的意思是配置standard为720p,后面编码还是现实编码分辨率为1080p?
huiliang cai:
回复 Chris Meng:
hi,Chris,
我们准备用vin0、vin1各采集3392*992分辨率,然后合并为一路3392*1984,因为高只有992,所以之前尝试把分辨率改为1280*720;
现在我们已经把vin0、vin1改为1920*1080 colorbar的测试数据了,sc也可以禁用,目前最关心的还是如何利用vin0在capturelink模式下把yuv数据采集成功,先采集成功一路vin0也行。
之前提到的帖子里在full模式下link精简部分没有写全,我们参考修改还没成功,请问是否有这方面的参考例程?
Chris Meng:
回复 huiliang cai:
Cai Huiliang,
请看一下captureLink_drv.c里面的CaptureLink_drvCreateInst函数,里面通过判断standard来做相应的设置。由于你的输入是非标的,请添加/修改相关代码。