jugg

jugg

4个粉丝

18

问答

0

专栏

2

资料

jugg  发布于  2019-03-25 11:59:40
采纳率 0%
18个问答
2451

Hi3536 VPSS user模式与解码性能问题

 
Hi3536的解码能力 :16x1080p@30fps H.265/H.264解码

但是我这样做
vdec(16路 0-15)->vpss(user 0-15)->vpss(auto 16-31)->vo(16mux)  
vo完全没有图像

改成
vdec(10路 0-9)->vpss(user 0-9)->vpss(auto 10-20)->vo(16mux)  
vo可是输出 但是播放一会儿就会卡住几路

最后改成4路解码 vpss user模式 才正常

如果不使用user模式 直接vpss 到vo 16路解码正常

是vpss的缩放路数达不到与解码路数相同吗? 还是有性能瓶颈?我在文档上面没有看到关于这个的说明。
有了解的朋友可以指教一下吗?
我来回答
回答6个
时间排序
认可量排序

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2019-03-25 13:34:31
认可0
应该不会


估计是楼主VB没有开够导致, vpss级联vpss是需要VB的

jugg

4个粉丝

18

问答

0

专栏

2

资料

jugg 2019-03-25 13:58:29
认可0
本帖最后由 jugg_kai 于 2019-3-25 14:08 编辑

[quote][url=forum.php?mod=redirect&goto=findpost&pid=140970&ptid=73646]zhuangweiye 发表于 2019-3-25 13:34[/url]
应该不会


[/quote]

VB这里我也试过开大点

[code]


HI_VOID        SAMPLE_COMM_VDEC_ModCommPoolConf(VB_CONF_S *pstModVbConf,
    PAYLOAD_TYPE_E enType, SIZE_S *pstSize, HI_S32 s32ChnNum)
{
    HI_S32 PicSize, PmvSize;
       
    memset(pstModVbConf, 0, sizeof(VB_CONF_S));
    pstModVbConf->u32MaxPoolCnt = 10;
       
    VB_PIC_BLK_SIZE(pstSize->u32Width, pstSize->u32Height, enType, PicSize);       
    pstModVbConf->astCommPool[0].u32BlkSize = PicSize;
    pstModVbConf->astCommPool[0].u32BlkCnt  = 10*s32ChnNum;

}

[/code]

这里的u32MaxPoolCnt是[0,256] 试过4
下面的 u32BlkCnt  使用16*s32ChnNum 、20*s32ChnNum的时候会提示0xA007800C(分配内存失败)

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2019-03-25 14:02:57
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=140971&ptid=73646]jugg_kai 发表于 2019-3-25 13:58[/url]
VB这里我也试过开大点


[/quote]

给个运行时的 /proc/umap/vb 看看

jugg

4个粉丝

18

问答

0

专栏

2

资料

jugg 2019-03-25 14:14:41
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=140973&ptid=73646]zhuangweiye 发表于 2019-3-25 14:02[/url]
给个运行时的 /proc/umap/vb 看看[/quote]

这是运行时VB
u32MaxPoolCnt = 10;

u32BlkCnt = 10*16;(16指的是解码路数)

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2019-03-25 14:27:32
认可0
本帖最后由 zhuangweiye 于 2019-3-25 14:34 编辑

[quote][url=forum.php?mod=redirect&goto=findpost&pid=140974&ptid=73646]jugg_kai 发表于 2019-3-25 14:14[/url]
这是运行时VB
u32MaxPoolCnt = 10;

[/quote]

楼主的VB分配有问题

1. Owner = 4的VB是VDEC的 module VB, 没有必要开那么多, 抠门点的只要开(ref_num+disp_num+1)*vdec_chn_num个即可, 一般来说ref_num = 2, disp_num = 1, 当然这些都要根据vdec的创建参数来定
注意这个VB pool只能vdec来用, vpss是用不了的, 开多了也是浪费, 楼主的log上free = 117, minifree=114,浪费了300M+

2. Owner = -1的这个是公共VB pool, 是VI/VPSS可以用的
楼主的log上看free =0, minifree=0, 意味着都用光了
楼主需要增加个数, 一般说个数可以设成3*ChnNum
另外大小可以根据vpss(user mode)的输出大小来设, 而不用设成1080P, 可以节约内存

jugg

4个粉丝

18

问答

0

专栏

2

资料

jugg 2019-03-25 14:43:03
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=140977&ptid=73646]zhuangweiye 发表于 2019-3-25 14:27[/url]
楼主的VB分配有问题

1. Owner = 4的VB是VDEC的 module VB, 没有必要开那么多, 抠门点的只要开(ref_n ...[/quote]

一直去看vdec的缓冲池去了,遗漏了VPSS的user模式下需要单独的VB
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

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

Markdown 语法

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

举报类型

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

详细说明

易百纳技术社区