基于Davinci架构的嵌入式Web播放器

时间:2024-05-13 20:07:54 硕士毕业论文

基于Davinci架构的嵌入式Web播放器

引言
  
  嵌入式播放器被广泛应用于Intenet-TV、iDVD、Web 终端、数字电视机顶盒、掌上电脑等各种信息电器和便携式网络终端中,并在工业控制领域有着广阔的应用前景,为此高性能Web 播放器的设计也始终是嵌入式系统工程师追逐的目标。TI 公司近年来推出了面向无线领域和移动媒体的开放式多媒体应用平台(OMAP),它采用DAVINCI 架构,集成了先进的CortexA-8 结构的ARM 核和DSP64x+内核,包含了优化的硬件2D/3D 加速器[1]。尤其是OMAP 器件的低功耗特性使得它在便携式、手持式设备方面应用优势明显,从而也为实现更高性能和更低功耗的嵌入式播放器提供了可靠的硬件基础。本系统正是基于OMAP3530强大的运算及音视频处理能力设计的,旨在构建一个基于Davinci 架构的嵌入式Web 播放器,支持MP3、MPEG2/4、AVI 以及H.264 等数据流格式在线流畅的播放;并能充分利用OMAP3530 的双核特性,由DSP 核进行音视频解码,ARM 核完成系统的管理和控制。
  
  1 系统方案
  
  1.1 系统总体架构
  视频播放器由三层组成。OMAP3530 处理器及其它外围设备(如GPRS 模块、Wi-Fi 模块等)构成底层硬件平台层;Linux 内核、驱动程序及图形文件系统构成中间层系统层;而嵌入式浏览器和音视频播放插件构成了最上层应用层。嵌入式浏览器通过HTTP 协议访问流媒体服务器,当页面需要流媒体支持时,以插件方式调用音视频播放插件。系统总体架构所示。
  
  1.2 数据传输模型
  系统的数据传输以HTTP 请求/响应模型[2]为基础,当用户通过嵌入式浏览器点击音视频文件超链接时,将触发建立一条与服务器的TCP 链接,嵌入式浏览器将HTTP 请求发送到服务器,请求中包含请求方法、URI、协议版本以及相关的MIME 样式的消息。服务器响应一个状态行,包含消息的协议版本、一个成功和失败码以及相关的MIME 式样的消息(包含服务器的信息、资源实体的信息和可能的资源内容)。嵌入式浏览器在接收到HTTP 响应消息之后开始检查响应消息中的内容,当碰到自身无法解析的资源名称时,嵌入式浏览器会查询插件注册信息,当MIME 类型与播放插件匹配时,则将该插件链接库载入内存,并将媒体资源的URL 以参数的形式传递给播放插件。音视频插件从服务器下载流媒体文件由DSP 核解码后播放,音频解码输出AC’97 标准的音频数据,通过内置扩音器或外接立体声耳机播放,视频数据则通过LCD 显示。
  
  2 硬件设计
  
  Web 播放器硬件平台的核心为OMAP3530 处理器,外扩了CPU 外设接口中的网口、音频输入输出接口、USB OTG、USB HOST、SD/MMC 接口、串口、CAMERA 接口、LCD 屏接口等。该系统硬件框图所示。
  本系统采用核心板和底板分离设计, 两块板之间采用板间连接器连接,核心板采用八层布线,主要包含OMAP3530 处理器,DDR2 存储器,以太网以及时钟电路;底板采用四层布线,主要包括外围接口电路。具体情况如下:
  OMAP3530 处理器集成了600MHz 的 ARM Cortex? -A8 内核及430MHz 的具有高级数字信号处理算法的TMS320C64x+? DSP 核,为423 脚BGA 封装,引脚间距为0.65mm。
  存储器采用 Micro 公司生产的MT29C1G24MADLATA-6IT 芯片,为137 脚BGA 封装,引脚间距0.8mm。该芯片集成了1Gbit DDR 和1Gbit FLASH。
  音频编解码芯片采用TI 生产的TPS65930,它集成了电源,完整的音频编解码器以及其他功能,可以实现双语音通道和立体声下行信道,可播放所有标准音频。
  网口物理层芯片选择DM9000 芯片。
  系统采用 7 英寸TFT 格式的LCD 显示屏,外接端口为0.5mm 并行端口,并配有转接线。另外,系统还包括一个高速USB 2.0 HOST 接口,可接WIFI 模块;一个USB OTG 接口,通过芯片ISP1504 来控制接收和发送数据。
  
  3 软件设计
  
  3.1 开发环境
  音视频的播放需要DSP 核进行解码,并由ARM 核完成系统的管理和控制,因此需要在宿主机上建立一套ARM 端的交叉编译环境以及DSP 端的DSP/BIOS 链接编译环境,具体环境参数如下:
  宿主机操作系统Ubuntu 8.10;
  交叉编译编译工具链ARM GNU/Linux EABI 2012q1;
  OMAP35x-PSP-SDK-02.01.03.11;
  DVSDK_3_00_02_44。
  由系统总体结构可见,软件设计主要包括以下几个方面:移植和构建系统的软件平台,包括引导程序和嵌入式Linux 移植、驱动程序的开发以及图形化文件系统的构建;移植嵌入式浏览器;开发音视频播放插件。
  
  3.2 引导程序的移植
  引导程序由 X-Loader 和U-Boot 两级组成,本系统中使用的版本分别为X-Loader-1.41和U-Boot 1.3.3。X-Loader 作为一级引导程序,在系统上电后由CPU 内部ROM 自动复制到内部RAM 并执行。主要作用为初始化CPU,根据启动方式从NAND Flash 或MMC/SD 复制U-Boot 到内存中,然后把控制权交给U-Boot;二级引导程序U-Boot 主要用于和用户进行交互,提供映像更新、引导内核等功能。
  
  3.3 angstrom 桌面环境的构建
  angstrom 项目由原来效力于OpenEmbedded,OpenZaurus 和OpenSimpad 项目的一小组成员所启动,旨在制作一个稳定的,界面友好的嵌入式发行版本,用于手持设备,机顶盒和网络存储设备等嵌入式设备[3]。angstrom 系统中的提供了各种软件,包括文档编辑,上网浏览,音频视频播放及图形编辑等功能,并可用USB 键盘鼠标对此系统进行操作控制。为此本系统采用在OMAP3530 上构建angstrom系统来简化嵌入式Linux 移植、驱动程序的开发、图形化文件系统的构建以及嵌入式浏览器移植等工作。angstr0m 系统通过在线构建,配置参数如表1 所示。
  由于 angstrom 系统中提供了可选的嵌入式Minefield 浏览器组件,嵌入式Minefield 浏览器支持一套NPAPI 的标准插件接口[4],通过实现这套接口可完成播放插件的调用。
  
  3.4 音视频插件的设计
  从物理形式上看,音视频插件可视为独立于浏览器的一个动态链接库,在Minefield 启动时会从指定的文件夹获取播放器插件的描述信息和对应的MIME 类型,并根据获取的信息在浏览器中进行注册。当碰到自身无法解析的资源名称时,Minefield 会查询插件注册信息,当MIME 类型与播放器插件匹配时,则将该插件链接库载入内存。
  当插件被载入后,浏览器将为插件分配内存并初始化实例的共享资源,然后将媒体资源的URL 以参数的形式传递给播放插件,直到浏览器完成数据传输或者数据传输被异常终止时才释放数据流占用的相关资源并销毁实例、释放插件的共享资源。
  播放插件由一个主线程和数据接收子线程、音频解码子线程、视频解码子线程、输出子线程和用户接口子线程组成。首先主线程对获取的URL 参数进行处理,主要是去除URL 中的冗余信息,并将参数进行字符集转换,并且根据媒体数据流的传输速度确定缓冲区大小。
  在完成编解码引擎运行时(Codec Engine Runtime)和达芬奇多媒体应用接口[5](DavinciMultimedia Application Interface)的初始化等工作后开启各子线程;当传送的数据量达到最小缓冲数据量时,数据接收子线程对获取的媒体数据进行解析,通过剥离数据包头文件来确认媒体数据类型,从而实现音视频的分离,最后将分离后的数据分别封装成DMAI 需要的Buffer_Handle格式并分别送入音频解码FIFO 和视频解码FIFO;音频(视频)解码子线程首先根据不同的数据类型,创建相应的解码器,然后从解码FIFO 取出数据解码,将解码后数据送入音频(视频)显示FIFO;输出子线程以音频为基准完成音视频同步后将数据分别送至音视频输出设备实现播放输出。播放、暂停、停止等功能在UI 子线程中实现。
  
  4 系统的功能特点
  
  以 TI OMAP3530 处理器为核心,设计了Web 播放器硬件平台,首先移植X-Loader、U-Boot 及angstrom 桌面环境,然后为Minefield 浏览器设计了音视频播放插件,并实现了一个基于Davinci 架构的嵌入式Web 视频播放器。功能特点如下:
  1)硬件平台采用核心板和底板分离设计,核心板采用8 层板布线,底板采用4 层布线。功耗低,扩展性好。核心板和底板分离设计不仅有利于根据不同的需要重新设计底板和开发新型产品,也有利于硬件调试和成本节约。
  2) 支持多种音视频格式,特别是支持H.264 视频标准。充分利用处理器的双核特性,ARM 完成系统中控制型任务,视频解码由DSP 处理。
  3) 基于 HTTP 协议的请求/响应模型,在嵌入式Linux 平台上,扩展了浏览器的功能,浏览器以插件方式调用播放器实现音视频的在线播放。
  
  5 测试与结论
  
  就校园网、电信宽带等多种方式连接Internet,系统分别访问了局域网、校园网、公网内Web 服务器和视频服务器,对播放器性能进行测试。为由校园网连接Internet 在线播放太原理工大学电视台网站新闻视频的截图,截图通过运行angstrom嵌入式桌面环境的GIMP 图片编辑器抓取。总体来说,设计达到了预期目标。主要结论如下:  
  1)播放器硬件性能稳定、可靠,引导程序正常启动,操作系统运行稳定,图形用户界面友好;
  2)播放器支持Flash、MMC/SD 等多种方式引导加载Linux 内核及文件系统;
  3)系统支持RJ45、WIFI 输入,支持触摸屏,可外接键盘鼠标;
  4)嵌入式浏览器运行稳定,在网络带宽得到保证时能流畅在线播放视频。音视频插件能够支持多种音视频格式,音频格式主要有AAC、MP3 等,视频格式主要有MPEG2/4、AVI 以及H.264。

中国硕士论文网提供大量免费硕士毕业论文,如有业务需求请咨询网站客服人员!
  
  参考文献] (References)
  [1] Texas Instruments. "OMAP35x DVEVM Getting Started Guide," [OL].
  [2] 王超, 胡晨, 刘新宁等. 嵌入式系统中HTTP 协议的实现[J]. 电子器件, 2002, 25(1):93-96.
  [3] LinuxToGo. "angstrom Manual," [OL].
  [4] 刘巍, 陈蜀宇, 吴晓烁. 基于嵌入式Li nux 的媒体播放插件实现[J]. 计算机系统应用, 2012, 18(4):127-130.
  [5] Texas Instruments. "Davinci Multimedia Application Interface," [OL]. Availabe:
  

【基于Davinci架构的嵌入式Web播放器】相关文章:

基于Web的嵌入式数控系统实现03-07

基于嵌入式Web服务器的远程故障诊断系统03-18

基于WEB的在线考试系统03-09

基于Web服务的集成研究03-08

基于Web技术的网络考试系统03-18

浅析基于Internet定制营销的企业架构03-23

基于PHP的Web数据库访问03-19

基于Web服务的短信网关设计03-26

基于DSP技术的MP3播放器的研究与设计03-18