CN101374213A - 电视人机界面自定义的实现方法 - Google Patents
电视人机界面自定义的实现方法 Download PDFInfo
- Publication number
- CN101374213A CN101374213A CNA2008101559012A CN200810155901A CN101374213A CN 101374213 A CN101374213 A CN 101374213A CN A2008101559012 A CNA2008101559012 A CN A2008101559012A CN 200810155901 A CN200810155901 A CN 200810155901A CN 101374213 A CN101374213 A CN 101374213A
- Authority
- CN
- China
- Prior art keywords
- osd
- user
- interface
- man
- self
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供一种电视人机界面自定义的实现方法,包括下列步骤:第一,使用面向对象的设计方法,根据OSD物件基本属性构建一数据结构和一数组,视频处理器内部软件完成该数组数据的解析;第二,软件合成一个OSD图形显示,并提供一些用户可配置的UI布局配置参数供用户自由选择;第三,用户完成操作后,软件读取更新后的参数,并完成解析;第四,软件调用对应的驱动代码,完成UI的显示。本发明提供合理配置的界面供用户自由选择,既节省软件工程师重复编写实现代码和关心与特定硬件平台相关的驱动代码细节,又可以让用户自己设计定义相关的OSD的界面及风格,进一步达到人机界面的更好交互,提升产品的形象和档次。
Description
技术领域
本发明涉及一种电视技术,具体地说是一种在电视上根据使用者的喜好来实现自定义不同用户界面(UI:User Interface)屏显(OSD:On ScreenDisplay)的方法。
背景技术
当前,在电视显示设备中,绚丽多彩、功能丰富的OSD界面开发占据了软件开发工程师大量的开发时间。OSD的主要作用是提供一个直观的图形界面,帮助用户完成各种对机器的控制和信息获知等任务,不少的工程师需要不断地重复着同样的工作,为每一款机器编写不一样的OSD文字、图标、图像及人机交互的界面互动代码。在UI及OSD较复杂的系统里,该部分的代码量工作量很大,几乎占到总工作量的30-60%,同时,调试过程中BUG(软件错误)层出不穷,调试过程也占用了大量的研发时间。
传统的处理OSD UI手法是将特定场景下的OSD物件逐一用代码“画”出来,在遇到特定的UI事件时,再利用一堆if else判断出特定场景和操作对象,并做相应的OSD处理。在OSD较简单的情况下,其不失为一个可行的方法。但在遇到OSD场景和模式较多的情况下,这个if else的结构会变得很大,而且更为重要的是极易出错以及维护成本提高。
随着OSD越来越复杂以及代码工作量的不断提高,人们意识到我们需要花费太多时间在这些“表面文章”上,而真正重要的应用层和设备驱动层的开发时间会受到影响,进而影响新产品的开发进度。工程师也不愿不断重复编写同样代码来满足不断改变客户的特定OSD需要,这突出了开发一个统一的OSD UI平台的重要性。
发明内容
本发明的目的旨在通过面向对象的处理技术,提供一些可修改的对象属性供用户自行修改,让普通的电视消费者享受电视的个性化UI,并简化电视的UI OSD软件开发过程。
本发明是通过以下技术方案实现的:一种电视人机界面自定义的实现方法,其特征在于,包括下列步骤:
第一,使用面向对象的设计方法,根据OSD物件基本属性构建一数据结构,该结构的所有信息属性构成一数组,视频处理器内部软件可完成对该数组数据的解析;
第二,视频处理器内部软件合成一个OSD图形显示,并提供一些用户可配置的UI布局配置参数供用户自由选择;
第三,用户完成操作后,视频处理器内部软件读取更新后的UI布局配置参数,并完成解析;
第四,视频处理器内部软件调用OSD发生器中的对应的驱动代码,完成用户界面UI的显示。
其中,所述步骤二中,视频处理器内部软件构建各类OSD界面控件,包括:标签、图标、文字、进度条、下拉框、列表选择框,合成一个OSD图形显示;
所述的用户可配置的UI布局配置参数包括:颜色、位置、大小、动画、系统各类功能;
所述的用户可配置的UI布局配置参数还包括:开机的屏保,开关机拉幕的方式;
用户可以回放、修改、保存或加载目标不同的界面主题文件;
用户还可以在计算机特定的工具软件中实现电视人机界面自定义的编辑,然后将该编辑好的界面主题文件下载到电视机的界面主题存储设备中;
电视机的界面主题存储设备中界面主题文件也可以上传到计算机中。
本发明的有益效果为:
本发明使用面向对象、结构化的编程方法,其直接的好处是编程效率的提高和维护成本的下降,同时对于程序的健壮性也有帮助。开发人员只需构建OSD驱动结构,利用平台支持的各种“控件”,进行有序的组织构造一个OSD图形表现,提供合理配置的界面供用户自由选择,既节省软件工程师重复编写实现代码和关心与特定硬件平台相关的驱动代码细节,又可以让用户自己设计定义相关的OSD的界面及风格,以进一步达到人机界面的更好交互,提升产品的形象和档次。
附图说明
图1、2为本发明的采用的位图形OSD类型。
图3为本发明调整背景色的OSD UI。
图4为本发明实现的软件流程图。
图5为本发明OSD面向对象构建流程图。
具体实施方式
下边结合附图和具体实施方式对本发明作进一步的描述:
本发明采用的是位图形OSD类型,位图OSD的处理原理较直观和简单:通过对最终显示内容上特定区域的每个像素点进行改变,直接将OSD信息叠加到最终的显示画面上,其按像素进行控制的方式可以保证具有多色及足够的表现能力。位图OSD发生器通常建在视频处理器内部,并共享使用其主显示缓存。
位图OSD的显示效果理论上可以做到非常完美的程度,可以提供类似Windows中具有立体感的各种物件,如具有阴影的按钮、颜色丰富的图形和文字等(如图1、2)。
本发明涉及到的OSD的UI基本概念及元素如下:
UI语言:指OSD内容中的文字部分使用的语言类型;
UI模式:指OSD内容适用的环境,例如不同的信号源(电视、DVD、PC)带来的模式变化,其作用主要区分不同的环境下OSD的不同表现;
UI场景:特定语言模式下及较多信息页面情况下,当前OSD适用的特定页面;
UI事件:用户利用输入设备向UI系统提供的操作命令;
UI动作表:指在特定UI场景中,对于UI输入的命令进行对应处理的索引表;
OSD画布:指整个OSD呈现的区域,通常为一个矩形区域;
OSD位置:通常指在OSD画布中,相较左上角原点的相对位置;
OSD物件:呈现在画布上,表达特定信息,具有特定属性的像素组合。
OSD包含的基本元素:区域、标签、图标、文字、进度条、动画、数字、可选图标、导航信息等(需要说明的是,这些物件并不能涵盖现在和将来所有的OSD中可能出现的内容,但却是OSD的基本的和主要的内容,通过对它们进行分类和进行统一的处理,可以帮我们完成通常意义上的OSD的80-90%的工作)。
本发明的软件实现流程如图4、5所示,首先使用面向对象的设计方法,根据OSD物件基本属性构建一数据结构,其代码可为:
typedef struct
{
byte mode;//UI场景适用的模式
byte lan;//UI语言
byte scene;//UI场景
byte last;//UI上个场景
byte next;//UI下个场景
byte sel;//UI当前场景对物件的选择
byte sel_total;//UI当前场景中选择项的总数
byte*info;//UI的物件指针
byte pos_v;//物件垂直方向位置
byte pos_h;//物件水平方向的位置
byte col_f;//物件的前景颜色
byte col_b;//物件的背景颜色
byte att;//物件的其它显示属性
ACT_Struct(*act)[];//该物件的响应动作表指针
byte*note;//导航说明信息
}UI_Struct;
这样的结构是为了描述一个OSD物件的基本属性及规定其对于动作的相应表现。利用这样的结构将场景中的每个物件描述清楚,则一个特定UI场景的OSD内容就可以被确定,而同时被确定的还有其上一个场景、下一个场景及动作响应特性等所有UI特性。
这样的信息构成一个数组,由一个统一的视频处理器内置的OSD处理器软件对其进行翻译和描述。视频处理器内部软件构建各类OSD界面控件,包括:标签、图标、文字、进度条、下拉框、列表选择框,合成一个OSD图形显示,并提供一些用户可配置的UI布局配置参数供用户自由选择,这些参数包括:颜色、位置、大小、动画、系统各类功能、开机的屏保,开关机拉幕的方式(图3所示为界面背景色的调整)。
下边的结构完成了一个语言选项(文字物件)的翻译和描述:
//获取当前的语言类型
BYTE cLanguage=i_appUIMi scLanguageGet();
//判断语言类型是否发生了改变
if(bUIChanged)
{
//对改变了的语言进行更新
i_appUIMiscLanguageSet(cLanguage);
//更新界面的其他元素
appUILaunchBarRedrawTopmenu();
}
当用户通过电视机输入按键或者红外遥控器完成参数设置操作时,视频处理器内OSD处理器软件读取更新后的UI布局配置参数,完成其进行翻译和描述,修改后的UI布局配置参数形成新的界面主题文件;视频处理器内部软件调用OSD发生器中的对应的驱动代码,完成用户界面UI的显示。用户可以回放、修改、保存或加载目标不同的界面主题文件,当需要改变OSD发生器或基于不同平面显示控制器平台时,只需要更新少量OSD部分驱动代码,从而实现UI系统“平台无关化”。
通过在软件中向用户有限开放一些资源,让用户获得对系统的OSD界面的控制权,满足用户界面自定义的需求,因此在不影响系统功能的前提下,我们都可以把这些对象的属性开放给终端用户,完成UI的个性化设计。
此外,基于在电视机中能够实现主题界面改变的事实,还可以进行大量的其他的边缘创作,如:用户还可以在计算机特定的工具软件中实现电视人机界面自定义的编辑,然后将该编辑好的界面主题文件下载到电视机的界面主题存储设备中;或者将电视机的界面主题存储设备中界面主题文件也可以上通过接口上传到计算机中。
Claims (7)
1.一种电视人机界面自定义的实现方法,其特征在于,包括下列步骤:第一,使用面向对象的设计方法,根据OSD物件基本属性构建一数据结构,该结构的所有信息属性构成一数组,视频处理器内部软件可完成对该数组数据的解析;
第二,视频处理器内部软件合成一个OSD图形显示,并提供一些用户可配置的UI布局配置参数供用户自由选择;
第三,用户完成操作后,视频处理器内部软件读取更新后的UI布局配置参数,并完成解析;
第四,视频处理器内部软件调用OSD发生器中的对应的驱动代码,完成用户界面UI的显示。
2.根据权利要求1所述的电视人机界面自定义的实现方法,其特征在于,所述步骤二中,视频处理器内部软件构建各类OSD界面控件,包括:标签、图标、文字、进度条、下拉框、列表选择框,合成一个OSD图形显示。
3.根据权利要求1所述的电视人机界面自定义的实现方法,其特征在于,所述的用户可配置的UI布局配置参数包括:颜色、位置、大小、动画、系统各类功能。
4.根据权利要求1所述的电视人机界面自定义的实现方法,其特征在于,所述的用户可配置的UI布局配置参数还包括:开机的屏保,开关机拉幕的方式。
5.根据权利要求1所述的电视人机界面自定义的实现方法,其特征在于,用户可以回放、修改、保存或加载目标不同的界面主题文件。
6.根据权利要求1所述的电视人机界面自定义的实现方法,其特征在于,用户还可以在计算机特定的工具软件中实现电视人机界面自定义的编辑,然后将编辑好的界面主题文件下载到电视机的界面主题存储设备中。
7.根据权利要求1所述的电视人机界面自定义的实现方法,其特征在于,电视机的界面主题存储设备中界面主题文件也可以上传到计算机中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008101559012A CN101374213A (zh) | 2008-10-13 | 2008-10-13 | 电视人机界面自定义的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008101559012A CN101374213A (zh) | 2008-10-13 | 2008-10-13 | 电视人机界面自定义的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101374213A true CN101374213A (zh) | 2009-02-25 |
Family
ID=40448113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008101559012A Pending CN101374213A (zh) | 2008-10-13 | 2008-10-13 | 电视人机界面自定义的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101374213A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004647A (zh) * | 2010-12-24 | 2011-04-06 | 青岛海信信芯科技有限公司 | Osd应用程序框架的实现方法、装置及多媒体终端 |
CN102043628A (zh) * | 2010-12-24 | 2011-05-04 | 青岛海信信芯科技有限公司 | Osd应用软件的开发方法、系统及多媒体终端 |
CN102098579A (zh) * | 2011-02-21 | 2011-06-15 | 深圳市同洲电子股份有限公司 | 数字电视主页界面显示方法及装置、终端 |
CN102170445A (zh) * | 2011-04-29 | 2011-08-31 | 广州市水晶球信息技术有限公司 | 一种交互式的数字多媒体管理系统 |
CN102801936A (zh) * | 2012-08-02 | 2012-11-28 | 东莞中山大学研究院 | 实现在屏显示的方法 |
CN103648038A (zh) * | 2013-11-15 | 2014-03-19 | 乐视致新电子科技(天津)有限公司 | 智能电视的窗体显示控制方法和控制装置 |
CN106843830A (zh) * | 2016-12-13 | 2017-06-13 | 北京元心科技有限公司 | 主题修改方法及装置 |
CN108733443A (zh) * | 2018-05-09 | 2018-11-02 | 成都市极米科技有限公司 | 一种基于Android系统的APP动态配置系统及其实现方法、动态配置方法 |
US10120539B2 (en) | 2010-10-29 | 2018-11-06 | Zte Corporation | Method and device for setting user interface |
CN109257651A (zh) * | 2018-09-10 | 2019-01-22 | 深圳市同洲电子股份有限公司 | 智能电视portal界面的调整方法及调整装置 |
CN109766069A (zh) * | 2019-01-15 | 2019-05-17 | 京东方科技集团股份有限公司 | 辅助显示方法、装置、电子设备及计算机可读存储介质 |
CN112930523A (zh) * | 2018-09-10 | 2021-06-08 | 阿韦瓦软件有限责任公司 | 边缘hmi模块服务器系统和方法 |
CN113039521A (zh) * | 2018-09-10 | 2021-06-25 | 阿韦瓦软件有限责任公司 | 状态边缘模块服务器系统和方法 |
-
2008
- 2008-10-13 CN CNA2008101559012A patent/CN101374213A/zh active Pending
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10120539B2 (en) | 2010-10-29 | 2018-11-06 | Zte Corporation | Method and device for setting user interface |
CN102004647A (zh) * | 2010-12-24 | 2011-04-06 | 青岛海信信芯科技有限公司 | Osd应用程序框架的实现方法、装置及多媒体终端 |
CN102043628A (zh) * | 2010-12-24 | 2011-05-04 | 青岛海信信芯科技有限公司 | Osd应用软件的开发方法、系统及多媒体终端 |
CN102098579A (zh) * | 2011-02-21 | 2011-06-15 | 深圳市同洲电子股份有限公司 | 数字电视主页界面显示方法及装置、终端 |
CN102170445A (zh) * | 2011-04-29 | 2011-08-31 | 广州市水晶球信息技术有限公司 | 一种交互式的数字多媒体管理系统 |
CN102801936A (zh) * | 2012-08-02 | 2012-11-28 | 东莞中山大学研究院 | 实现在屏显示的方法 |
CN102801936B (zh) * | 2012-08-02 | 2015-04-15 | 东莞中山大学研究院 | 实现在屏显示的方法 |
CN103648038B (zh) * | 2013-11-15 | 2018-06-01 | 乐视致新电子科技(天津)有限公司 | 智能电视的窗体显示控制方法和控制装置 |
CN103648038A (zh) * | 2013-11-15 | 2014-03-19 | 乐视致新电子科技(天津)有限公司 | 智能电视的窗体显示控制方法和控制装置 |
CN106843830A (zh) * | 2016-12-13 | 2017-06-13 | 北京元心科技有限公司 | 主题修改方法及装置 |
CN108733443A (zh) * | 2018-05-09 | 2018-11-02 | 成都市极米科技有限公司 | 一种基于Android系统的APP动态配置系统及其实现方法、动态配置方法 |
CN109257651A (zh) * | 2018-09-10 | 2019-01-22 | 深圳市同洲电子股份有限公司 | 智能电视portal界面的调整方法及调整装置 |
CN112930523A (zh) * | 2018-09-10 | 2021-06-08 | 阿韦瓦软件有限责任公司 | 边缘hmi模块服务器系统和方法 |
CN113039521A (zh) * | 2018-09-10 | 2021-06-25 | 阿韦瓦软件有限责任公司 | 状态边缘模块服务器系统和方法 |
CN112930523B (zh) * | 2018-09-10 | 2024-01-23 | 阿韦瓦软件有限责任公司 | 边缘hmi模块服务器系统和方法 |
CN109766069A (zh) * | 2019-01-15 | 2019-05-17 | 京东方科技集团股份有限公司 | 辅助显示方法、装置、电子设备及计算机可读存储介质 |
CN109766069B (zh) * | 2019-01-15 | 2023-05-12 | 高创(苏州)电子有限公司 | 辅助显示方法、装置、电子设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101374213A (zh) | 电视人机界面自定义的实现方法 | |
CN110069257B (zh) | 一种界面处理方法、装置及终端 | |
JP5713459B2 (ja) | グラフィックオブジェクトの表示 | |
CN104135684B (zh) | 一种基于Firefox OS的界面显示方法及装置 | |
Smith et al. | Android recipes: a problem-solution approach | |
US20070245250A1 (en) | Desktop window manager using an advanced user interface construction framework | |
JP2012521041A (ja) | 連続および不連続プロパティのスムーズレイアウトアニメーション | |
WO2011116601A1 (zh) | 实现移动终端横竖屏切换的装置及方法 | |
CN102221993A (zh) | 复杂用户界面状态变更的声明性定义 | |
CN106658139B (zh) | 一种焦点控制方法及装置 | |
Mew | Learning Material Design | |
CN112445564B (zh) | 界面显示方法及电子设备、计算机可读存储介质 | |
CN109445891B (zh) | 画面组态及展示方法、装置、计算机可读存储介质 | |
CN112698905B (zh) | 一种屏保显示方法、显示设备、终端设备及服务器 | |
CN111524221A (zh) | 基于Unity平台的虚拟仿真实验制作系统 | |
CN111459501A (zh) | 基于SVG的Web组态画面存储与展示系统和方法及介质 | |
US20090153435A1 (en) | Presentation System | |
CN113610984A (zh) | 一种基于Hololens2全息眼镜的增强现实方法 | |
CN112445501A (zh) | 数据烧录方法及设备、计算机可读存储介质 | |
CN104077114A (zh) | 一种更换应用软件的显示界面的方法及电子设备 | |
US10579713B2 (en) | Application Markup language | |
Mew | Mastering Android Studio 3 | |
CN114281228B (zh) | 一种显示设备及多级菜单面板显示的控制方法 | |
CN102541528B (zh) | 一种菜单制作方法以及装置 | |
TW201727512A (zh) | 具有可視化編程功能的控制系統及其方法與內儲具有可視化編程功能的控制程式之電腦程式產品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20090225 |