关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > MIPS架构的医院智能导诊系统设计

MIPS架构的医院智能导诊系统设计

作者: 时间:2012-05-09 来源:网络 收藏

c.jpg


SMP8654分层服务模型如图3所示。最下面的一层是相关硬件,如CPU、视频解码器、音频解码器、并行I/O接口。中间的一层MRUA(Movim iento rectiline unitormemente acelerado)提供了访问这些硬件的抽象接口,另外DCC(Decoding Chain Control)是通过访问MRUA的接口实现对视频播放控制、音频解码的操作。最顶层是软件播放器,可以基于DCC实现网络流媒体应用,或者定制自己的软件播放器。
3.2 利用图形加速引擎优化文字和高清图片显示
DCC是为应用程序提供的编程接口,而MRUA面向底层硬件,为上层的DCC提供硬件抽象和功能接口。在深入理解了DCC是如何控制硬件显示文字、处理图片以及播放视频之后,利用MRUA库函数直接操作硬件特性,加快字体显示、图片处理效率,以及提升视频播放等各方面性能。DCC提供的多个对象为应用程序完成实际的功能提供函数接口,这些对象包括:
①Route。可以将Route理解为某个具体的媒体内容(Content)到硬件视频混合器(Hardware Video Mixer)的数据通道,它只负责把具体的媒体内容传送到硬件视频混合器中。
②Surface。可以将Surface理解为视频对象层(Video Object layer)。视频信息,屏幕显示以及字幕组成了一个完整的Content。在每一个Route对象中,通常会存在相同类型的多个Surface对象。
③VideoSource。可以将VideoSource理解为一个专为Surface生成图片的生产者,这个生成者可能是一个硬件视频解码器(Hardware MPEG decoder)。
④AudioMixer。可以将AudioMixer理解为一个类似Route的东两,它代表的也是一个数据通道,只不过它只负责将AudioSource这个音频生产者生成的音频帧信息组合成一个输出。
⑤AudioSource。可以将AudioSource理解为音频帧的生产者。
⑥DemuxSource。它是一个可分离流,并且将数据发送到视频、音频解码器的一个对象。当然也可以将它理解为一个生成者,负责将流(stream)数据分离出音频和视频信息,并发送到相关处理单元处理。
如图3所示,流解析器从内存中检索到与文件有关的信息之后,将数据流分解,然后组包成视频解码器以及音频解码器所处理的数据,并且交由DSP和Display Engine这样的设备进行处理。这些都可以由DCC控制,是由MRUA层抽象出的相关硬件功能。只要通过DCC层去控制相关硬件设备,便可以实现图片和文字的高清显示。下面将介绍如何通过DCC去控制GFX引擎实现图片和文字的显示。
GFX在图中没有画出,它是某个具体的图形加速设备。当要播放一个高清的图片或者绘制文字时,通常要经过几个步骤:RUA实例初始化,DCC实例初始化,设置图片的显示窗口,初始化GFX引擎,执行绘制,清空资源并退出。下面以伪码的方式给出其具体实现过程:
int main(int argc,char*argv[]){
创建RUA实例;
创建DCC对象实例;
初始化图片的显示选项;
初始化视频的湿示选项;
初始化播放控制选项;
从命令行参数获得欲显示的文件信息以及图片、视频播放控制选项(如果没有就使用默认值)
装载相关硬件单元微码;
创建硬件混合器Mixer;
创建ScaIer对象;
//scaler=EMHWLIB_MODULE(DispGFXMultiScaler,0);
为当前的Mixer对象创建一个关联Scaler对象的索引;
初始化GFX引擎;
设置GFX对象的各通道属性;
开始在GFX上投递绘制请求;
关闭GFX引擎,并依次关闭DCC实例对象,RUA实例对象;
}

结语
基于MiniGUI和SMP8654的SDK完成了视频播放、文字图片显示的功能。基于MiniGUI的图形及文字绘制函数,如CreateLog Font、DrawText、LoadBitmap等的使用以及利用与硬件相关的图形加速引擎绘制图片和文件相结合的方式,增加了的图形绘制效果,提升了系统性能。
综上所述,系统基于实现了高清播放机所要完成的视频播放以及图片文字显示功能。通过研究基于下的高清播放机最终选择了速度比较好的高清播放机芯片SMP8654,使得视频处理更加稳定,图片的加速解码及显示的速度更快。基于此的系统,可以扩展到各种信息发布系统中,如的信息发布系统、车载娱乐系统,具有很好的应用前景。

光耦相关文章:光耦原理


万用表相关文章:万用表怎么用


dc相关文章:dc是什么


手机电池相关文章:手机电池修复


c语言相关文章:c语言教程


linux相关文章:linux教程


c++相关文章:c++教程



上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭