【求助】如何编程实现将文本字符叠加到视频上?

[复制链接]
查看11 | 回复9 | 2021-1-27 05:48:31 | 显示全部楼层 |阅读模式
现在在做一个项目,要求能够把文本字符叠加到视频上,看了很多资料都是说用专用芯片,不知道怎么办啊?
分 -->
回复

使用道具 举报

千问 | 2021-1-27 05:48:31 | 显示全部楼层
参考
回复

使用道具 举报

千问 | 2021-1-27 05:48:31 | 显示全部楼层
用专用芯片?直接在输出的RGB/YUV上叠不行吗?
输出的就是编码好的数据?
回复

使用道具 举报

千问 | 2021-1-27 05:48:31 | 显示全部楼层
点阵字体叠加,比如24x24点阵的字体直接将字体参加到视频帧上。
方法:在每一帧的指定位置,叠加字体,字体点阵的值为0是不改变视频数据的颜色,值为一时改变视频数据为指定颜色。
回复

使用道具 举报

千问 | 2021-1-27 05:48:31 | 显示全部楼层
directshowVMR
回复

使用道具 举报

千问 | 2021-1-27 05:48:31 | 显示全部楼层
用Direct3D显示的话,这不是一个问题。你甚至可以显示完视频之后,用GDI的透明背景文字画到窗口上去(当然这是投机)。VMR的话,叠加倒好做,但是一遇到暂停了之后,没有数据丢给VMR,你重新设置文字,VMR是不会更新你设置的文字的,你得手动丢图像给VMR,操蛋。
回复

使用道具 举报

千问 | 2021-1-27 05:48:31 | 显示全部楼层
写一个filter,直接在RGB上叠,很容易实现啊,我就是这样做的
回复

使用道具 举报

千问 | 2021-1-27 05:48:31 | 显示全部楼层
有现成的开源软件可以做,比如gstreamer。
回复

使用道具 举报

千问 | 2021-1-27 05:48:31 | 显示全部楼层
用VMR的Renderless随便你怎么搞
回复

使用道具 举报

千问 | 2021-1-27 05:48:31 | 显示全部楼层
引用3楼qqwangbalu的回复:点阵字体叠加,比如24x24点阵的字体直接将字体参加到视频帧上。
方法:在每一帧的指定位置,叠加字体,字体点阵的值为0是不改变视频数据的颜色,值为一时改变视频数据为指定颜色。

这个说得对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行