oppo

oppo

0个粉丝

2

问答

0

专栏

0

资料

oppo  发布于  2016-06-02 11:16:39
采纳率 0%
2个问答
6224

Hi3531,4路OSD实时预览怎么实现?

 
Hi3531,采集4路1080P视频,想在每路视频叠加OSD信息,并且实时显示,试了用region方式实现不了,HI_MPI_RGN_AttachToChn不能绑定到HI_ID_VPSS,不知道是我实现的方式不对,还是region实现不了这个需求?
我来回答
回答11个
时间排序
认可量排序

falloutmx

1个粉丝

15

问答

0

专栏

0

资料

falloutmx 2016-06-02 11:34:25
认可0
绑VI或者VENC

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-06-02 11:35:42
认可0
没有GUI吗? 实时预览的OSD 一般用FB来实现比较好
非要用RGN来实现那么 3531 只有VI+OVERLAYEX_RGN可以用, 估计是没法满足楼主的要求的

RGN一般用于编码图上的OSD

oppo

0个粉丝

2

问答

0

专栏

0

资料

oppo 2016-06-02 11:50:25
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=31039&ptid=11496]zhuangweiye 发表于 2016-6-2 11:35[/url]
没有GUI吗? 实时预览的OSD 一般用FB来实现比较好
非要用RGN来实现那么 3531 只有VI+OVERLAYEX_RGN可以用,  ...[/quote]

谢谢,有GUI,用的QT/E+HiFB,直接操作FB的话,是不是可以用TDE实现?

oppo

0个粉丝

2

问答

0

专栏

0

资料

oppo 2016-06-02 11:51:36
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=31038&ptid=11496]falloutmx 发表于 2016-6-2 11:34[/url]
绑VI或者VENC[/quote]

谢谢,绑VENC不能实时预览,绑VI设置不了通道,好像只能绑定一路。

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-06-02 13:50:36
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=31041&ptid=11496]oppo 发表于 2016-6-2 11:50[/url]
谢谢,有GUI,用的QT/E+HiFB,直接操作FB的话,是不是可以用TDE实现?[/quote]

用qt, 那么直接qt画

oppo

0个粉丝

2

问答

0

专栏

0

资料

oppo 2016-06-02 15:13:57
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=31047&ptid=11496]zhuangweiye 发表于 2016-6-2 13:50[/url]
用qt, 那么直接qt画[/quote]

OK,谢谢。

goodman

2个粉丝

30

问答

18

专栏

17

资料

goodman 2016-06-02 18:26:50
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=31059&ptid=11496]oppo 发表于 2016-6-2 15:13[/url]
OK,谢谢。[/quote]

不需要录像或者录像里面不要OSD就界面做4个QLabel就可以了,问题解决了请结贴

oppo

0个粉丝

2

问答

0

专栏

0

资料

oppo 2016-06-02 22:20:55
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=31065&ptid=11496]goodman 发表于 2016-6-2 18:26[/url]
不需要录像或者录像里面不要OSD就界面做4个QLabel就可以了,问题解决了请结贴[/quote]

需要录制,是不是录制的OSD和预览的OSD必须要分别实现?录制用region,预览用QT?

ngswfx

1个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-06-02 22:28:51
认可0
本帖最后由 ngswfx 于 2016-6-2 22:53 编辑

[quote][url=forum.php?mod=redirect&goto=findpost&pid=31075&ptid=11496]oppo 发表于 2016-6-2 22:20[/url]
需要录制,是不是录制的OSD和预览的OSD必须要分别实现?录制用region,预览用QT?[/quote]

你首先要确定,你叠加的这个OSD是不是随着编码走,如果你希望这个OSD直接就在码流里面,一直存在,即便回放都存在,你就需要使用海斯提供的特定方法,在vi层面想方法。通常叠加时间,通道,以及特定信息。这个OSD在编码前实现,并且操作对象是送入VENC通道之前的YUV数据。通常应该是对VI的源YUV操作。

如果仅仅是显示的时候,叠加一下,用FB或者QT,这个针对的是VO,它的实际操作对象是显示的YUV数据。

虽然看起来都是叠加,效果看起来一样,但是叠加的操作对象不一样。导致录像数据是不同的。针对VI的叠加,录像数据才有OSD。



/////////当然还有一种方法,把相关信息,例如需要叠加的特定信息,直接通过私有数据接口(如果海斯有,就直接用,如果没有自己造),融入视频流里面。录像码流里面其实也有相关信息了,然后解码的时候,取出这些数据,显示的时候再次叠加。这种方法是足够灵活,你要是愿意,还可以搞奇怪的功能。不同权限的用户,看到的叠加信息还不一样。通常,录像如果希望当证据使用,具有法律效率,肯定是直接在VI里面叠加时间更具有说服力,其他的方法,那个案发时间不准。还可以随便改。:lol ,不过这种方法将直接导致录像流非标准流,你需要检查确定H264流里面是否允许添加私有数据。并按照标准存放数据,否则,解码前需要自定义剥离,如果不做这个动作,可能花屏。



//////////////

MPI2.0文档中,region描述:
区域管理可以实现区域的创建,并叠加到视频中或对视频进行遮挡。例如,实际应用
中,用户通过创建一个区域,通过 HI_MPI_RGN_AttachToChn,将该区域叠加到某个
通道(如 VENC 通道)中。在通道进行调度时,则会将 OSD 叠加在视频中。一个区域
支持通过设置通道显示属性接口指定到多个通道中(如:多个 VENC 通道,多个 VI 通
道,甚至多个 VENC 和 VI 通道),且支持在每个通道的显示属性(如位置、层次、透
明度等)都不同。

这意味着,这个region就是对视频输入源作用。和VO没关系。




枫叶尚卿

0个粉丝

6

问答

0

专栏

0

资料

枫叶尚卿 2016-06-06 10:09:27
认可0
要清楚,region 操作是针对视频流的操作,也就是改变了视频流,比如,你想叠加字符并能保存起来(如硬盘刻录),保存的文件用播放器播放时也有该字符叠加的情景;

若只是实时显示,并不需要将字符嵌入进视频流中,那么可以用 framebuff 来做,在这种情况下,视频流中是没有字符叠加的。

若是又要实时显示又想字符嵌入视频流保存起来,那么有两种方法:
1.同时操作 region 和 framebuff
2.操作 framebuff ,并回写该显示设备 vo ,然后以这个 vo 为视频源保存

beidoubushixing

0个粉丝

1

问答

0

专栏

0

资料

beidoubushixing 2018-08-15 12:58:39
认可0
要绑定HI_ID_VPSS需要用overlayex
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

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

Markdown 语法

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

举报类型

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

详细说明

易百纳技术社区