Hi3516开发指南

6 篇文章 0 订阅

其实我刚刚接触3516.

下面给出一个例子,来说明3516如何调用api函数。

HI_S32 hi3516_frame_thresh(HI_U32 PhyAddrSrc,HI_U32 PhyAddrDst,FRAME_SIZE frame_size){
    HI_S32 s32Ret = HI_SUCCESS;

    IVE_SRC_INFO_S stSrc;
    IVE_MEM_INFO_S stDst;
    IVE_HANDLE IveHandle;
    HI_BOOL bInstant =  HI_TRUE;

    HI_BOOL bFinish, bBlock;

    IVE_THRESH_CTRL_S pstThreshCtrl;

    stSrc.enSrcFmt = IVE_SRC_FMT_SINGLE;
    stSrc.stSrcMem.u32PhyAddr = PhyAddrSrc;
    stSrc.stSrcMem.u32Stride = frame_size.Stride;
    stSrc.u32Height = frame_size.Height;
    stSrc.u32Width = frame_size.Width;

    stDst.u32PhyAddr = PhyAddrDst;
    stDst.u32Stride = frame_size.Stride;

    pstThreshCtrl.enOutFmt=IVE_THRESH_OUT_FMT_BINARY;
    pstThreshCtrl.u32Thresh=30;
    pstThreshCtrl.u32MinVal=0;
    pstThreshCtrl.u32MaxVal=255;

    getstarttime();
    s32Ret = HI_MPI_IVE_THRESH(&IveHandle, &stSrc,&stDst, &pstThreshCtrl,bInstant);
    //bBlock = HI_FALSE;
    bBlock = HI_TRUE;
    s32Ret = HI_MPI_IVE_Query(IveHandle, &bFinish, bBlock);
    if (HI_SUCCESS == s32Ret){
        if(bFinish==HI_TRUE)
            printf("Success: %s finished!\n", __FUNCTION__);
        else
            printf("Success: %s Unfinished!\n", __FUNCTION__);
    }
    else
        printf("Error: %s=%x\n",__FUNCTION__,s32Ret);
    getendtime(__FUNCTION__);
   
    return s32Ret;
}

 

void main()

{

。。。

hi3516_frame_thresh(PhyAddrFilter,PhyAddrThresh,frame_size);

。。。

其中PhyAddrFilter和PyhAddrThresh指向缓存池内存块地址。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值