LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: wjf215

请教:mplayer中的OSD函数

[复制链接]
 楼主| 发表于 2008-5-5 17:48:49 | 显示全部楼层
我只做了两个简单的处理,没有你说的那些帧同步之类的方法。首先,把要显示的文字交给set_osd_msg()这个函数,这样就能在画面上显示出文字信息来,然后在vo_draw_text_from_buffer()中,把obj->bbox.x1减去一个常量,比如说1,让文字的显示的位置一个像素点一个像素点的往左移,这样就能实现滚动效果,但是就会有我所说的重叠现象
回复 支持 反对

使用道具 举报

发表于 2008-5-5 21:56:14 | 显示全部楼层
mplayer 每一帧刷新一次图像 (但不一定在一次接口调用中完成整幅图像的刷新), 如果楼主每帧绘制多于一次文字, 并且不保存背景, 那么就会重叠
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-6 10:07:18 | 显示全部楼层
有什么方法可以解决这个问题呢
回复 支持 反对

使用道具 举报

发表于 2008-5-6 12:08:01 | 显示全部楼层
我前边提到过, 如果楼主控制一下自己绘制的节奏, 那么问题就不存在了. 否则只能手工备份背景并恢复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-6 15:40:08 | 显示全部楼层
哪个量可以控制字体的大小
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-6 16:22:53 | 显示全部楼层
好郁闷啊,又有新的问题出现了,当我要显示的文字长度超过画面宽度的时候,超出部分就被截了,不显示出来
回复 支持 反对

使用道具 举报

发表于 2008-5-6 20:31:26 | 显示全部楼层
似乎只能控制字体大小与屏幕大小的百分比. man mplayer 查找 subfont-text-scale
回复 支持 反对

使用道具 举报

发表于 2008-5-6 20:32:50 | 显示全部楼层
Post by wjf215;1846402
好郁闷啊,又有新的问题出现了,当我要显示的文字长度超过画面宽度的时候,超出部分就被截了,不显示出来


如果不想自己手工绘制文字, 那就进行截短吧.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-7 10:17:00 | 显示全部楼层
手工绘制该如何绘制,有哪些接口函数可用
回复 支持 反对

使用道具 举报

发表于 2008-5-7 13:39:05 | 显示全部楼层
细节我就不了解了. 不过无外乎 load 一种字体, 生成一个字符串的位图, 再把它画到图像的需要位置上
回复 支持 反对

使用道具 举报

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

本版积分规则

快速回复 返回顶部 返回列表