MHP主要系统模块功能

(1)申请(申请)

参考模型提供的环境可以轻松地测试和验证应用程序,完全按照参考模型设计的应用程序通常可以顺利运行。对于应用提供商来说,他们的权益也是受到保护的。因为他们可以设计灵活的应用,可以广泛应用于不同的平台,不受机顶盒底部的限制。

DVB-TAM将应用定义为能够实现与软件模块交互服务的功能性应用。一个应用也可以看作是一系列可以激活MHP软硬件资源的功能。

交互式应用程序由以下两个基本部分组成:

应用程序脚本(解释性或程序性);

内容/场景(用户图形界面和媒体流)。

用户图形界面(GUI)是用户与机顶盒交互的界面,包括场景设计、选择按钮、静止图像、文本等。整个用户图形界面可以说是由很多场景组成的,每个场景又由一系列的小部件、编程对象和属性组成。场景和编程对象之间的连接是通过一种特殊的机制来完成的。

过程化应用是基于低端函数和类库的程序,通常在需要优化主机资源时使用(比如最大化利用传输网络资源等。).它一般是平台相关的,所以移植到不同的主机平台时需要更改。

解释性应用由高端函数和类库组成。这允许我们使用独立于平台的参考模型来测试应用程序是否平台兼容。

事实上,应用程序不一定都是解释性的或程序性的。例如,我们可以在解释性应用程序中嵌入过程化代码,这可以大大减少代码长度和程序执行效率。平台无关性问题由嵌入主机的实时引擎和虚拟机解决。当然,如果在平台设计上不考虑兼容性,很难实现不同平台的良好移植性。

应用程序是可识别的,它可以自动运行或应请求运行。应用程序的显示模式可调整大小或在后台运行。应用程序的管理包括:中断、错误处理、优先级模式和动态资源管理。退出应用程序时,应该释放系统资源。

(2)应用交付机制。

程序脚本和相关内容被打包成应用程序对象,并转换成DSM-CC对象。DSM-CC标准是由MPEG组织制定的。类似于网络通信协议,数据广播前端和数据广播接收设备之间必须有一套通信协议来保证数据的传输和解码。MPEG-2标准的第六部分DSMCC就是这样一个开放的协议。与其他协议相比,DSMCC主要考虑如何在接收端设备资源有限的情况下实现快速数据传输。DSM-CC UU是一个接口,允许我们从广播流或远程服务器获得DSM-CC格式的对象。

DSM-CC对象允许数据环模块携带一个或多个程序对象。对象是模块化的,这可以优化内存使用性能。DSM-CC还提供了压缩工具来格式化程序对象和数据环对象,发送机制也保证了下载数据环对象的安全性。

(3)编程接口定义(API)

DVB-TAM将API定义为一系列高端函数、数据结构和协议,用于表示平台无关软件的标准接口。它应用面向对象语言,可以灵活地重用已有的功能。

一个应用按照高端API的定义描述一系列对象。它定义了应用程序与本地硬件资源和软件资源之间的接口。

API定义了以下要求。

继承:它是可重用的。对于面向对象语言来说,可继承性是一个非常重要的特性。超类中的数据或方法可以被其子类继承,子类的子类也可以继承,实现了数据重用,大大提高了编程效率。

开放性:可以被其他接口实例引用。

抽象:低端功能被抽象数据类型封装,不能直接使用。只有通过授权的行为才能与外界进行交互,从而保证源代码的完整性和安全性。

灵活性:独立于硬件,未来可因硬件升级和切换到不同硬件系统而升级API。例如,可以通过下载来添加新的类库。

根据应用的格式不同,低端API用于处理流程函数,高端API用于处理解释函数。

低端API对应一个工艺程序。这种API不仅要明确应用功能,还要关心资源。

高端API对应的是解释程序。抽象解释层的层次越高,系统的独立性越强。API只需要明确应用功能,不需要关心资源是否被激活。开放API的定义将保证DVB机顶盒能够实现硬件无关的功能。

DVB-MHP将API的功能描述如下。

支持本地存储或实时下载的应用程序。

支持所见即所得。

支持访问数据库(如DVB-SI表单)。

兼容性。

作为MHP计划的核心部分,一个开放的、有前途的API标准应该是模块化的、可移植的、灵活的和可扩展的。它允许内容和服务提供商应用不同但兼容的平台来提供服务。

(4)导航/选择系统

当机顶盒启动时,嵌入式导航功能通过调用相应的API运行第一层的导航程序。API也可以用来控制TS流,比如浏览频道和节目。

导航也可以由可执行代码直接运行,不需要使用API和相关的解释器。在DVB-TAM推荐的模型中,导航系统模块和API位于同一级别,这样可以很容易地从数据管道和TS流中获取数据。

基本导航系统包括以下两个功能。

列出所有可用的程序。

提供快捷键,方便用户访问程序内容。

增强的导航系统由电子节目指南(EPG)实现,增强的功能包括用户文件夹和书签。

(5)应用启动和控制。

应用程序的运行包括启动、应用和演示。程序代码可以驻留在机顶盒中或者从远程服务器下载。如果从远程服务器下载,应用程序可以自动升级。

应用程序管理器的功能是。

获取和释放系统资源。

错误管理和异常处理。

初始和中断的会话。

验证代码和数据的完整性。

同步指令和信息。

调整显示图形格式以满足不同平台的要求。

允许* * *享受内容和变量。

有一个有序整洁的表达风格。

(6)加密功能(安全功能)

虽然加密模块的定义还没有完成,但是DVB还是定义了与加密相关的API的要求。

应该使用公共加密模块来确保不同广播运营商和内容提供商在交换节目时的兼容性。

涉及加密的API应该独立于条件接收系统。如有必要,MHP API应该对CA相关功能开放。

重要的安全考虑还涉及:

防止系统资源被滥用,如过度访问内存。

保护私人数据免受未经授权的访问。

(7)中间件

节目服务商通过传输渠道(如宽带多媒体数据网、有线电视网)(如EPG)以应用程序的形式发布各种服务项目,用户打开电视,通过机顶盒浏览。用户的需求信息(例如视频点播(VOD))通过上传通道(例如电话线调制解调器或有线电视电缆)传输到视频服务器,根据请求选择相应的服务项目,并通过传输通道以应用程序的形式下载到用户终端-机顶盒的闪存中。应用程序调用机顶盒Flash中中间件包含的API,执行应用程序,完成用户请求的功能。

中间件的目的是以API的形式向机顶盒厂商提供机顶盒的基本和通用功能,从而规范数字电视的交互功能,同时最大限度地减少从服务项(以应用程序的形式通过传输通道)下载到用户终端——机顶盒的数据量。中间件产品一般由非节目提供商和机顶盒厂商的第三方提供,这对于节目提供商和机顶盒厂商进一步简化和规范节目制作非常有利。这是知识经济时代市场更加细分的具体表现。

中间件的实现直接取决于应用程序的格式(无论是解释性的还是过程性的)以及高端还是低端API的应用。每一个成功的中间件实现都是根据本地平台的特点定制的。

有不同的方法来实现交互式和实时引擎,但通常需要以下模块。

库函数;

脚本和内容解释器;

事件管理器(处理远程控制和其他设备、用户响应、识别、计时、错误处理);

引导程序(加载程序)。

通过使用API,实时引擎提供了与系统硬件和软件的底层接口。实时引擎可以唤醒驻留在本地计算机中的程序,并且驻留的程序可以是平台相关的,从而提高系统性能并减少解释应用级的操作限制(例如压缩下载的应用对象的大小)。实时引擎是可执行代码,参考参考模型,根据各平台特点进行优化。

虚拟机通常用于运行程序功能(如复杂计算、信息和文本处理、数据压缩)或常驻程序,以增强解释性应用程序的性能。

由于实时引擎和虚拟机的应用,API可以实现平台无关的应用。

(8)软硬件资源。

MHP应该有一个友好的用户界面。对于外围设备,显示设备,输入设备如(遥控器)是必要的,此外,您可以选择使用键盘,本地内置或外部存储设备。这些外围设备的连接应该是“即插即用”的。

对于一个基于MHP的机顶盒,内部硬件资源包括:前端、解复用、解码、滤波、通用接口、通信接口、CA系统、内存以及相关驱动。

要实现目前DVB的标准功能,机顶盒至少需要1MB的闪存和1MB的内存,CPU的速度需要达到20MIPS。如果你有16MB的闪存,32MB的内存,100 IPS的CPU,就可以轻松搞定。硬件资源可以专门分配,比如70%的CPU处理时间指定用于运行应用,剩下的30%用于系统管理。

以下内容存储在存储器中:

API的解释器;

库函数;

实时引擎和虚拟化器;

引导程序(加载程序);

系统工具;

文件系统;

固件;

操作系统(包括启动、内存管理、任务管理、资源管理、时针等。);

开车;

导航系统。

允许将应用程序的多个版本下载到闪存中。同时,内存的管理也相当灵活,采用块管理,不同程序使用的内存段有不同的标识,只能刷新某个内存段。

DSM-CC周期发送的应用程序存储在RAM中,RAM可用于存储视音频解码的数据缓冲区,用于动态平台管理(如堆栈和进程排队),用于存储应用程序中使用的变量。

最基本的系统设置和出厂设置通常存储在EEPROM中(一般不超过10KB)。