Mstar OSD 详解 一、OSD 基本概念 UI 语言:指 OSD 内容中的文字部分使用的语言类型; UI 模式:指 OSD 内容适用的环境,例如不同的信号源(TV、DVD、PC)带来的模式化其作用主要区分不同的环境下 OSD 的不同表现; UI 场景:特定语言模式下及较多信息页面情况下,当前 OSD 适用的特定页面; UI 事件:用户利用输入设备向 UI 系统提供的操作命令; UI 动作表:指在特定 UI 场景中,对于 UI 输入的命令进行对应处理的索引表; OSD 画布:指整个 OSD 呈现的区域,通常为一个矩形区域; OSD 位置:通常指在 OSD 画布中,相较左上角原点的相对位置; OSD 物件:呈现在画布上,表达特定信息,具有特定属性的像素组合
二、MST OSD 流程图 Mstar 的 OSD 方案,感觉主要是在 msosd
c(底层部分),menu
c, menutbl
c这里,主要有 MenuPageType、MenuItemType、DrawSubMenuGroupType、MenuItemFuncType 等几个 Stucture,菜单位置、大小及相应操作方法都在结构体 里 ; 在Main 循 环 程 序 中 通 过 不 断 的 调 用keyDetectHander() 、irDecodeCommand()和 OsdHandler()来达到 OSD 的各种功能与目的
三、模块说明 1、User Command 这部分指的是用户利用 Keypad、Ir 或 Visual Key进行操作,产生中断触发激活KeyEvent;主要功能是在 Irfunc
c、keyPad
c 里完成的,在 keyDetectHandler()、irDecodeCommand()中获得相关按键信息,而后通过 MenuProcessKey()、ExecuteKeyEvent(