DirectShow 怎样往显示的视频上面叠加字幕,即OSD信息

wmrwinhap 2004-09-10 02:08:54
我想在显示的视频左上角或右下角显示一些固定的字串信息,即叠加字幕或者叫OSD

我试过往视频数据上面叠加YUV格式的字幕数据,但由于视频是YUYV格式,有一半的点没有U、V分量,所以叠加的结果有些点或线不清晰(如果是YUV4:4:4即每个点都有Y、U、V分量可能就没这个问题)

DirectShow能否直接支持字幕显示呢?或者有别的什么办法?

万望高人赐教!
...全文
446 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
wmrwinhap 2004-09-16
问题已解决。
方法还是直接修改数据源相关位置的Y、U、V值,但是要显示的字符的每个点对应一组YUYV值,即在屏幕上显示两个相同的点,这样虽然字符宽度被放大了一倍,但要显示什么颜色就显示什么颜色,效果还不错,效率也很高。
谢谢大家!
回复
large_small 2004-09-13
UP
回复
DentistryDoctor 2004-09-13
先为Overlay平面指定色键(一般是RGB(255,0,255)),然后指定文本的背景色为RGB(255,0,255),直接输入文本就行了。
回复
wmrwinhap 2004-09-13
help
回复
blackdoc 2004-09-13
我可以给你相关的源代码
回复
发动态
发帖子
界面
创建于2007-09-28

1.5w+

社区成员

VC/MFC 界面
申请成为版主
社区公告
暂无公告