完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
Hi All,
请问一下在dvrrdk的目录中ti_tools/hdvpss/hdvpss_01_00_01_37_patched/packages/ti/psp/examples/common/vps/capture/captureVip/src/CaptureVip_main.c编译后生成了ti_tools/hdvpss/hdvpss_01_00_01_37_patched/build/hdvpss_examples_captureVip/bin/ti816x-evm/hdvpss_examples_captureVip_m3vpss_debug.xem3文件,这个文件可以直接执行吗?我在开发板启动完毕后,先运行了./init.sh、./load.sh,这两个脚本是负责加载一下相应驱动以及固件,然后我在运行hdvpss_examples_captureVip_m3vpss_debug.xem3,结果报如下错误: root@dm816x:/opt/dvr_rdk/ti816x# ./hdvpss_examples_captureVip_m3vpss_debug.xem3 Killed 直接异常退出了,请问是什么原因造成的? |
|
相关推荐
16 个讨论
|
|
uryyywerw 发表于 2019-2-20 09:45 是的,我刚接触这些,多有麻烦之处,还请多见谅。谢谢 我看过编译过程,CaptureVip_main.c就只生产了这个.xem3的固件,没有看到生产了相对应的.out问题,我有个疑问,既然这个是个可执行的main.c程序,为何要生产了一个xem3的固件,那如果我通过load.sh加载这个固件,会是什么个效果? |
|
|
|
|
|
|
|
shaoye88 发表于 2019-2-20 09:53 这个是HDVPSS包中的demo代码,意思是你可以仿照这个来写测试程序,刚刚看了下例子,你可能需要使用rdk下的工具fwloader来加载改程序运行 dvr_rdkmcfwsrc_linuxutilsfw_loadsrc编译后生成的fw_load.out来加载你生成的这个M3固件,如果加载你可以参考脚本load_vpss.sh。 HDVPSS是个独立的安装包,能不能实现独立的自测,还真不太清楚,大致看了下程序,感觉应该得依赖于别的工具。具体你可能得咨询TI的FAE。 |
|
|
|
|
|
|
|
uryyywerw 发表于 2019-2-20 10:06 Robin,很感谢你给我的帮助。 还有个疑问,如果我用fw_load.out来加载生产的那个M3固件,那是不是等同于我运行了那个程序,加载固件会直接从编译的那个源码的main函数开始执行呢? 还是需要别的方式来启动这个demo来运行。还有个问题,你是如果了解到要执行M3固件必须用fw_load.out来加载的,之所以这个问题,我想以后遇到了类似的问题,自己就可以知道怎么解决,免得麻烦大家。 另外,我想了解一下DVRRDK这套架构可以实现prot0 A、B和Port1A、B各自连接一路8bit的输入源,同时采集工作,能做到这个效果吗?假如这四路bit输入是tvp5147 decode |
|
|
|
|
|
|
|
shaoye88 发表于 2019-2-20 10:21 加载后,会运行的,这部分你可以看firmware loader的代码,参考下http://blog.csdn.net/crushonme/article/details/10287693 loader部分说明,在dvrrdk中在运行后是会给HOST端发送一个字符 's',来确认slave已经在跑程序了。你这个不知道行不行,看了下程序,貌似用了vps_printf,这个程序是需要先运行remote_debug的。 DVRRDK确定是可以实现port0 A、B ,port 1 A、B同时采集8bit数据的,这个我们有产品做过。 |
|
|
|
|
|
|
|
uryyywerw 发表于 2019-2-20 10:36 Robin,我用fw_load.out加载了这个固件,运行情况如下: root@dm816x:/opt/dvr_rdk/ti816x# bin/fw_load.out startup VPSS-M3 hdvpss_examples _captureVip_m3vpss_debug.xem3 Attached to slave procId 2. Loaded file hdvpss_examples_captureVip_m3vpss_debug.xem3 on slave procId 2. Started slave procId 2. After Ipc_loadcallback status [0x00000000] After Ipc_startcallback status [0x00000000] root@dm816x:/opt/dvr_rdk/ti816x# 好像还没有从main()函数开始运行,是否还需要别的方法来启动这个demo程序呢? 另外,还有个问题想问问你,我看过你的这篇csdn的文章了,里面有提到输入分Single Channel和Multi Channe两种方式,Multi模式应该指的是像tvp5158这种可以通过一个输入端口(例如port0 A口或者port0B口)采集到将四路输入合并到一个平面上视频源吧?如果是我理解的这样,那是不是说如果prot0A、B和Prot1A、B各种接入一个8bit一路输入源,其模式就是Single Channel模式吗? 在dvrrdk中,有定义几个传入到HDVPSS xem3固件中的参数,这些参数是用来告诉HDVPSS输入源的模式的,几种模式如下: /** * brief Video capture operation mode */ typedef enum [ VPS_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC = 0, /**< Single Channel non multiplexed mode */ VPS_CAPT_VIDEO_CAPTURE_MODE_MULTI_CH_LINE_MUX_EMBEDDED_SYNC, /**< Multi-channel line-multiplexed mode */ VPS_CAPT_VIDEO_CAPTURE_MODE_MULTI_CH_PIXEL_MUX_EMBEDDED_SYNC, /**< Multi-channel pixel muxed */ VPS_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_DISCRETE_SYNC_HSYNC_VBLK, /**< Single Channel non multiplexed discrete sync mode with HSYNC and VBLK as control signals. */ VPS_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_DISCRETE_SYNC_HSYNC_VSYNC, /**< Single Channel non multiplexed discrete sync mode with HSYNC and VSYNC as control signals. */ VPS_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_DISCRETE_SYNC_ACTVID_VBLK, /**< Single Channel non multiplexed discrete sync mode with ACTVID and VBLK as control signals. */ VPS_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_DISCRETE_SYNC_ACTVID_VSYNC, /**< Single Channel non multiplexed discrete sync mode with ACTVID and VBLK as control signals. */ VPS_CAPT_VIDEO_CAPTURE_MODE_MULTI_CH_LINE_MUX_SPLIT_LINE_EMBEDDED_SYNC, /**< Multi-channel line-multiplexed mode - split line mode */ VPS_CAPT_VIDEO_CAPTURE_MODE_MAX /**< Maximum modes */ ] Vps_CaptVideoCaptureMode; 我看了dvrrdk中,如果输入源是tvp5158,他们用的参数是VPS_CAPT_VIDEO_CAPTURE_MODE_MULTI_CH_PIXEL_MUX_EMBEDDED_SYNC,如果是16bit的输入,例如tvp7002、sil9135,它们用的就是VPS_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC。假如说我现在要通过prot0B 口(不是A口)采集一路来自tvp5147 8bit(或者8bit的高清输出decode)的输入源,那我这个定义应该选择哪一个呢? |
|
|
|
|
|
|
|
shaoye88 发表于 2019-2-20 10:43 1、出现以上打印不代表你的VPSS核没跑,只是因为你没有做remote debug,所以VPSS侧的打印没法输出到linux下的串口。 2、 Multi模式应该指的是像tvp5158这种可以通过一个输入端口(例如port0 A口或者port0B口)采集到将四路输入合并到一个平面上视频源吧? 是的。 如果是我理解的这样,那是不是说如果prot0A、B和Prot1A、B各种接入一个8bit一路输入源,其模式就是Single Channel模式吗? 是的。 假如说我现在要通过prot0B 口(不是A口)采集一路来自tvp5147 8bit(或者8bit的高清输出decode)的输入源,那我这个定义应该选择哪一个呢? TVP5147,我看了下手册,貌似是多路选择一路编码,如果是这样的话,就应该VPS_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC或者是外同步模式,这个根据你实际情况选择。 这个问题根据TVP5147具体是干嘛的,我只是随便看了下它的手册,或许理解不正确,你需要确认下。 PS:如果你满意我的回答,请将答案钩绿。 |
|
|
|
|
|
|
|
uryyywerw 发表于 2019-2-20 10:56 Robin,谢谢你给了我这么多的帮助。 还有个问题想问问你,比如说我现在要换一个采集视频的芯片,不用tvp5158这些dvrrdk已有的解码器,换成别采集芯片,dvrrdk中demos/link_api_demos/common/chains_main.c这些例子的相应的调整方式,在ti论坛上有没有相关的介绍如果更改的资料呢? |
|
|
|
|
|
|
|
uryyywerw 发表于 2019-2-20 11:25 Hi Robin,有个问题还想请教一下你,又得麻烦你了,谢谢 目前dvrrdk这套软件对外部设备是通过I2C1总线来访问的,也就是说dvr这套软件运行起来后,是会占用I2C1总线的,而现在我有个实验需要使得linux内核访问I2C1总线,所以需要dvr这套软件启动时,不再占用I2C1总线(如果这样做导致dvrrdk无法采集视频也没有关系,我只需要系统加载了dvrrdk这些vpss、hdcvp等等固件就行,根据我了解到的,在vpss固件加载时,会去做占用I2C1总线的操作),你知道再哪里改成放弃M3对I2C1的控制权吗? |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
601 浏览 0 评论
1655 浏览 0 评论
2096 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1542 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1387 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1794浏览 29评论
2822浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1748浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1668浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1681浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-15 13:53 , Processed in 1.205788 second(s), Total 90, Slave 75 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1781