问题1:HI_MPI_VB_Init失败返回0xA001800C(HI_ERR_VENC_NOMEM)

调试思路:查看系统内存容量以及VB分配设置

<1> cat /proc/media-mem

信息显示MMZ内存足够,保留仍有32MB

<2>查看VB配置的情况:

信息显示MMZ内存总计32768KB = 32MB,而此时的我试图为两路码流分配VB:

主码流1080P:

u32BlkSize = SAMPLE_COMM_SYS_CalcPicVbBlkSize(gs_enNorm,\

PIC_HD1080, PIXEL_FORMAT_YUV_SEMIPLANAR_420,  SAMPLE_SYS_ALIGN_WIDTH);

stVbConf.astCommPool[0].u32BlkSize = u32BlkSize;

stVbConf.astCommPool[0].u32BlkCnt = 10;

主码流需要分配VB空间:(1920*1080*2*10)/1024/1024约39MB

子码流VGA:

u32BlkSize = SAMPLE_COMM_SYS_CalcPicVbBlkSize(gs_enNorm,\

PIC_VGA, PIXEL_FORMAT_YUV_SEMIPLANAR_420, SAMPLE_SYS_ALIGN_WIDTH);

stVbConf.astCommPool[1].u32BlkSize = u32BlkSize;

stVbConf.astCommPool[1].u32BlkCnt = 3;

主码流需要分配VB空间:(640*480*2*3)/1024/1024约1MB

相加显然超过了MMZ内存总和32MB

<3>图像的大小

一帧1080P YUV420格式的图像大小应当是1920*1080*2 = 3145728B

但是从打印信息看,实际1080P图像的u32BlkSize是3159360B

实际VGA图像的u32BlkSize是503040B

原因是通过宏VB_PIC_HEADER_SIZE在每个VB块内加入了头部信息

<4>修改与执行结果:

将1080P的u32BlkCnt改为5,VGA的u32BlkCnt改为3。

对应分配空间则是:3159360B * 5 = 15426KB 503040B * 3 = 1473KB

在此cat /pro/media-mem,发现VB分配成功:

其它类似的内存分配问题也可以此来调试

HISI3516 MMP VB调试汇总相关推荐

  1. ※部分VB文章汇总A※

    编前篇 ★微软公告:Visual Basic 6 完全兼容 Windows 8 的整个产品周期 ★Visual Basic 十年风云 ★微软 Small Basic 简体中文版 已经发布了 ★VB:如 ...

  2. ※部分VB文章汇总C※

    ★第十部分 ★ ※VB 删除带子文件夹和文件的文件夹※ ※VB选择文件夹并取文件夹名※ ※VB谨慎使用IsMissing函数※ ※VB 冒泡算法※ ※[转]注册ActiveX控件的几种方法(转) 分享 ...

  3. ※部分VB文章汇总B※

    ★第七部分 ★ ★VB小技巧:字符变量中双引号的输入 ★VB将自定义资源中的文件释放出来 ★VB在菜单上增加图标 ★Visual Basic 十年风云 ★VB表格控件总览与例程分析 ★利用VB函数Di ...

  4. android studio控制台调试程序,Android Studio ADB网络调试汇总

    本文为大家汇总了Android Studio ADB网络调试的使用方法,供大家参考,具体内容如下 随着技术的发展,现在的安卓手机大部分开始使用type-c接口了,这对于我们安卓程序猿来说也不是件好事情 ...

  5. 计算机二级vb知识点汇总,计算机等级考试二级VB考点:控件数组

    控件数组是由一组相同类型的控件组成的,它们共用一个控件名,具有相同的数组.控件数组适用于若干个控件执行的操作相似的场合,控件组共享同样的事件过程.下面是小编为大家带来的关于控件数组的知识,欢迎阅读. ...

  6. 全国计算机二级vb选择题汇总,2013年3月全国计算机二级VB选择题整理

    2013年3月选择题题目 第一套 (1)下列关于栈和队列的描述中,正确的是( ). A)栈是先进先出 B)队列是先进后出 C)队列允许在队头删除元素 D)栈在栈顶删除元素 (2)已知二叉树后序遍历序列 ...

  7. 计算机二级vb知识点汇总,计算机二级vb基础知识考点整理(13页)-原创力文档...

    (该内容都由本人辛苦整理,希望大家好好利用 ) 数进制的基本概念 1.比特:是计算机和其他数字系统处理. 存储和传输信息的最小单位, 一般用小写的字母 "b"表示. 比特只有两种状 ...

  8. VB速查大全(数据库、表格及报表编程) ★ VB错误处理,ado常见错误,VB数据类型等,网上有很多教程是错的,强烈建议看此文

    ■ 学新的编程语言先仔细看该语言案例教程或从入门到精通的书.对具体语句.函数及可使用对象不了解或忘记的,可在该编程语言的"参考手册"中检索. <如果资料为电子书时,即使不知道 ...

  9. 自动批量生成VB控件

    自动批量生成VB控件 内容 总结 代码 内容 最近想做一个象棋程序,想用Image控件来加载棋子,这样,每个格就要放一个Image控件,共要制作90个Image控件,如下图: 先别说一个一个画了,就是 ...

最新文章

  1. 使用getopts处理长和短命令行选项
  2. levelDB数据库使用及实例 - 高性能nosql存储数据库
  3. 从头到尾打印链表c++_从头到尾创建一个C#应用程序-完整的24小时课程
  4. oracle分布式数据库中间件,分布式数据库中间件设想
  5. ODBC的JAR包和PLSQL
  6. 机器学习建模的问题大全
  7. 设置Iframe透明
  8. 安卓系统的电视机_再送出一款智能电视、电视盒子、安卓手机通用TV直播软件...
  9. Hexo 个人博客搭建完整版笔记
  10. 智齿科技宣布完成1亿美元D轮融资,暂未取得有效专利
  11. 【Docker容器镜像加速器~阿里云镜像加速器】
  12. html鼠标悬浮更换图片,Vue.js鼠标悬浮更换图片功能
  13. RepMet: Representative-based metric learning for classification and few-shot object detection
  14. 华为OD机试(21-40)老题库解析Java源码系列连载ing
  15. [网络安全学习篇1]:windowsxp、windows2003、windows7、windows2008系统部署(千峰网络安全视频笔记)
  16. 《恋上数据结构与算法》第1季:算法概述
  17. machine learning 四要素
  18. teradata安装
  19. 解决 Costmap2DROS transform timeout.问题
  20. C#松下PLC通信源代码,支持松下Mewtocol协议,支持网口通信和串口通信,部分代码稍作修改后可直接copy到自己的上位机软件使用

热门文章

  1. android 8 usb 未连接网络,让安卓手机拥有USB网络共享功能通过USB连上网络
  2. 如何抓住蝴蝶效应中的那只蝴蝶
  3. 算法与数据结构——巨人网络笔试题
  4. system(pause)
  5. 搜狗浏览器论坛下线通告:10月18日停止服务
  6. 在FME中读取Dwg格式数据的探究
  7. Spring 4 升级踩雷指南
  8. c语言实现数独游戏求解
  9. Eclipse 安装黑色主题皮肤(DarkTheme)
  10. 观点 | 我国人工智能人才仅5万人,专家建议培养要“从娃娃抓起”