qn1567564800

qn1567564800

0个粉丝

36

问答

0

专栏

0

资料

qn1567564800  发布于  2020-01-03 11:09:17
采纳率 0%
36个问答
2502

nnie Runtime+mpp运行时报错

有一个关于mpp的问题,我仿照nnie里面rfcn(RFCN(VI->VPSS->NNIE->VGS->VO))的写法(我用的是runtime的api),首先用
HI_MPI_VPSS_GetChnFrame(s32VpssGrp, as32VpssChn[1], &stBaseFrmInfo, s32MilliSec);函数得到stBaseFrmInfo,然后给input image赋值:
        s_gstTrackerBlobs.stInputBlobImage.u64PhyAddr = stBaseFrmInfo.stVFrame.u64PhyAddr[0];
        s_gstTrackerBlobs.stInputBlobImage.u64VirAddr = stBaseFrmInfo.stVFrame.u64VirAddr[0];
        s_gstTrackerBlobs.stInputBlobImage.u32Stride  = stBaseFrmInfo.stVFrame.u32Stride[0];
但是stBaseFrmInfo.stVFrame.u64VirAddr[0]是NULL,stBaseFrmInfo.stVFrame.u64PhyAddr[0]以及Stride是有效的。而虚拟地址无效的话调用HI_SVPRT_RUNTIME_ForwardGroupASync进行推断的时候会报错:
E[hirt] param pstMemInfo error
E[hirt] computeNnieSeg:[-1] flush stMem for src in the loop error
我猜测是这个API会调用FlushCache,而因为虚拟地址无效,所以无法FlushCache。然后我使用了Mpp文档里的
s32Ret = HI_MPI_VB_MmapPool(pstExtFrmInfo->u32PoolId)
s32Ret = HI_MPI_VB_GetBlockVirAddr(pstExtFrmInfo->u32PoolId, pstExtFrmInfo->stVFrame.u64PhyAddr[0], ppExtVir);
查看了/proc/umap/vi和/proc/umap/vpss都是如我所愿配置的。也就是在RFCN(VI->VPSS->NNIE->VGS->VO)的配置上只有vpss的ch1的尺寸不同。
我的nnie和mpp单独运行都是可以的,但是放到一起就是不行。
我来回答
回答0个
时间排序
认可量排序
易百纳技术社区暂无数据
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
无更多相似问答 去提问
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区