关于SS528(Hi3531D)编解码,在教学系统里多路视频监控方向的疑难杂症的技术分享
文章目录
第一次接触:大名鼎鼎
妹子:靓仔,听说你很牛掰啊,在海思领域,大名鼎鼎啊。
我:不要瞎说,哥只是个传说,一切都是虚名。你要干啥子事的?
妹子:我现在遇到了问题,我在用易百纳的SS528的开发板做教学课程的直播应用,多路视频监控,遇到了一些问题,可以请教你吗?
我:说明白点。
妹子:是这样的,靓仔。我现在有6个通道的流同时拉了进来,但是我想把1和2通道的视频合成一个新的视频再推出去的话,那我是不是需要把1和2通道的视频分别复制到两个新的通道比如7和8进行合成一个新的视频?
我:vdec->VPSS GROUP->CHN0->VO显示,CHN1->虚拟VO->WBC->VENC。
我:VDEC绑定VPSS就可以有最多四路CHN输出了,然后把要编码输出的显示到虚拟VO上,再通过WBC把虚拟VO编码。
我:等等,好像有问题,刚刚确认了下,WBC不支持虚拟VO,所以还是得用物理VO来搞。如果视频输出用完了的话试试VGS看看。
妹子:我这边的vpss里有6个grp,用的都是物理通道1,然后每个grp又绑定到每个vo的通道中显示,给你看图
我:VO开启两个,VPSS通道开启多个,VPSS CHN1绑定VO0显示,VPSS CHN2绑定到VO1再绑定到WBC。
我:等等,你只用到一个输出设备吗?
妹子:是滴,我现在只用了一个VO设备。
妹子:VPSS通道指的是物理通道吗?最多只有4个
妹子:WBC官方是没有相关例程的是吗?
我:大概是这样的流程,WBC之后可以直接绑定VENC或者经过VPSS再绑定VENC
我:你看下这些API即可,WBC功能比较简单,几个参数即可配置
妹子:好的,我先整理一下,谢谢靓仔。
第二次接触:事情还没结束
妹子:靓仔,在不?
我:说事。
妹子:我还没完全跑起来,现在是这样子的,如果我想把venc之后的视频显示在这里,是不是还要正常走一次vdec-vo的流程?
我:你可以WBC之后绑定VPSS,然后把一个VPSS通道绑定到这里
妹子:一个vpss grp的组里,最多可以开四个通道,四个通道的数据都是一样的是吗?
我:是的,只要chn参数一致,出来的图像都是一样的。
妹子:好的,我再试试看
第三次接触:主动出击
我:妹子,搞定了没?
妹子:还在努力中
我:我找到了虚拟VO的用法了
妹子:那是用虚拟VO的方法比较好?
我:都可以,可以先用WBC实现
妹子:奇怪,我WBC设置的属性,返回错误,检查了一遍也没啥问题,是不是还有什么是需要特别留意下的?
我:。。。。(过了一会)
妹子:搞定!谢谢靓仔,你人真好
第四次:还来?
妹子:靓仔,在不?
我:嗯
妹子:我如果要把这个左上角的流推出去的话,是不是一定要走WBC,我现在左上角显示的是VHD2,下面显示的使VHD0,是用两个视频层显示的,能否直接就把VHD2视频层进行编码直接推出去?
我:(擦擦的,现在都不跟我客气一下啊)不行,要视频层编码必须走WBC。
妹子:WBC的分辨率最大是1080P?
我:看规格书啊,1920*1080。
(应该结束了吧。。。。)
第五次:再来?
妹子:靓仔,因为PIP层是VHD2,如果想将PIP层回写的话,按照文档的描述,应该是不能回写到PIP了对吧?
我:有这个现在的话就不行了。VHD1呢?应该还没用吧?
妹子:VHD1还没用,目前就用了VHD0
我:那就用VHD1试一下
妹子:目前是这样的,那我就把VHD2改成VHD1试试
妹子:奇怪的是,如果我把图中的VHD2和VHD0调转过来的话,VHD0就不显示了,只显示VHD2了
我:VHD2是会叠加到视频层VHD0/VHD1上面的,直接挡住这两个
妹子:可是我不是全屏显示的,都是显示一个框,也会被挡住吗?
我:调转是指?
妹子:调转的就是把下面的变成VHD2,上面的变成VHD0,这个时候,上面的不显示,下面的可以正常显示。
妹子:我也把坐标改了
我:cat /proc/umap/vo看看,调转前后的都cat
妹子:我看过vo,坐标显示和通道显示都是正常的
我:(妹子给了日志后),调转之后你的PIP层的大小就是整个屏幕大小了哦,直接盖住了VHD0啊
妹子:那我改成只显示下面那部分应该就可以了,然后用VHD0去做回写
妹子:(过了一个世纪后。。。)改了显示之后,hdmi就无法正常打开了,这个办法似乎行不通
我:把PIP层的大小改成只有下面一半,我觉得还是用VHD1+WBC简单的,后面都是操作VPSS了
妹子:VHD1可以显示在VHD0上面吗
我:不可以,只能有一个绑定到DHD层,不能同时绑定。把VHD1固定到DHD1
妹子:一个HDMI设备只能开一个DHD是吗
我:一个HDMI设备只能输出一个DHD
妹子:因为我试了一下,我想上面的画面用VHD1,绑定在DHD1,但是程序跑不了,是不是同一个HDMI不能同时用DHD0和DHD1?
我:是的
我:VHD1->WBC->VPSS,在这之后操作的是VPSS了,不需要把VHD1显示到HDMI上呀,直接把VPSS显示到VHD0即可,DHD1随便用BT1120/VGA都可以
妹子:BT1120是不是那个单层的HDMI?
我:硬件上如果接了BT1120转HDMI那就是HDMI输出,软件上都是BT1120
妹子:那用了BT1120的话,会不会影响到时候用那个单层HDMI的输入输出功能?
我:会影响输出,不会影响输入
妹子:DHD1是不是一定要用一个BT1120或者VGA
我:如果不想影响这些外围的话,虚拟VO应该可以,不过这个我没测试过
妹子:一般做画面合成是不是用WBC的多
我:WBC可以把整个显示的视频层/显示层编码,至于画面合成有多种方式,虚拟VO VGS这些都可以
妹子:像我那个视频合成的框的大小,分辨率也才8百多乘5百多,如果用wbc的话,编码出来的分辨率是实际的显示分辨率8百多乘5百多吗
我:这些都可以设置的呀。假如VHD1用1080P->WBC直接1080P->VPSS 可配置输出chn大小->VO显示 可配置显示大小->VENC 可配置编码大小(注意有缩放限制,可以把缩放放到VPSS处理)
我:这些都不够的话还可以用VGS进行缩放,方式是有多种多样的
妹子:如果用vgs的话,可以把VHD2编码不
我:VGS是比较高级的用法,这里提到的拼接只支持928
妹子:VHD+WBC听你讲是大概明白的
我:可以试试VHD+WBC先实现了后面再试试虚拟VO。虚拟VO的话看说明也不难,只是需要多测试下
妹子:先试试用VHD1,板子上没有VGA接口,我是不是可以把VHD1绑定到VGA那边去
我:可以
妹子:视频层是一定要绑定到输出接口才可以的是吗
我:是有这个限制的
妹子:靓仔,BT1120和HDMI的区别是什么哈?
我:对应不同的硬件接口
妹子:是芯片层的硬件接口是吧?
我:是的
妹子:谢谢靓仔,帮我解答了那么久
第六次接触:该结束了
妹子:靓仔,是不是可以把VHD0作为pip层,然后VHD0叠加在VHD2上面?
我:嗯
妹子:我试了一下,改了一下优先级,这样VHD0就叠加在VHD2上面了,我就可以用VHD0去做WBC了
我:很棒
妹子:原来这个修改也可以让视频层叠加在图形层上面的
暂时告一段落,拜拜
- 分享
- 举报
-
wu 2024-01-10 11:34:40回复 举报大佬你好,看了你很多在海思ss928芯片下面的评论,我现在遇到了棘手的问题,希望能向您请教,我的v:13269913599
-
david 2023-09-26 19:04:52回复 举报高质量文章~
-
浏览量:1220次2023-07-13 14:05:43
-
浏览量:3651次2022-01-04 09:00:18
-
2023-03-31 09:52:52
-
浏览量:4276次2018-12-25 20:34:34
-
浏览量:1157次2024-01-26 15:15:36
-
2024-08-23 14:25:36
-
浏览量:1545次2023-03-29 17:15:23
-
浏览量:2194次2018-11-26 14:56:03
-
浏览量:6461次2020-08-24 21:24:41
-
浏览量:3709次2020-08-24 21:28:44
-
浏览量:2381次2022-01-10 09:00:16
-
浏览量:3575次2020-07-27 15:12:15
-
浏览量:2982次2020-07-27 15:26:51
-
浏览量:1288次2023-07-12 14:00:38
-
浏览量:5617次2021-05-11 17:35:27
-
浏览量:2262次2022-02-28 09:00:18
-
浏览量:2328次2023-03-29 16:55:16
-
浏览量:2046次2018-01-17 10:48:02
-
浏览量:3106次2018-05-07 16:22:35
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
四叶草~
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明