基于PXA270平台的嵌入式流媒体播放器设计

时间:2008-11-26来源:网络
1) 解压缩xvidcore 源代码tar- zxvf xvidcore- 1.1.0.tar;

  2)设置环境变量export xvidcore= “the path of xvidcore”;

  3)生成makefile ./configure- - host=localhost- - build=arm- linux- gcc;

  4) 编译源代码make;make install;

  将交叉编译生成的库文件libxvidcore.so.* 拷贝到交叉编译器工作目录的./local/lib 子目录中,该库文件为系统的其它模块提供了编程接口。

  解码格式的可扩展性

  播放器支持的文件格式越多,其生命力也就越强大,PXA270 嵌入式处理器加上2700G 多媒体加速芯片的搭配方案为媒体播放提供了强大的硬件支持,通过软件升级,理论上可以支持任何媒体格式。本方案的做法是:在播放器中实现一个索引表类,将来根据需要新添加的编码格式作为独立的类注册到索引表中。基于linux 的c++解码类源代码可以由网上开放源码的解码器网站下载,系统中的MP1,MP2,MP3 和WAV 的解码就是采用这种方法实现的。

  播放模块实现

  文件的输入

  在播放器系统中,文件的来源有两种:由网卡读入存储器后播放或通过其它数据传输途径写入存储器,在存储器中直接播放。sophia 板提供了网卡的驱动模块,可以使用命令modprobe usbcore 和modprobe usbwlnc动态加载,为数据从网卡经由操作系统到达播放进程提供一个全双工的通道。数据的处理由播放器中的stream input 类来实现。

  流媒体协议

  实现流式传输有两种方法:实时流式传输和顺序流式传输,系统使用的是实时流式传输,需要标准化的流媒体协议来保证客户机和专用的流媒体服务器之间进行通信。根据流媒体协议的功能可以分为两类:

  基本网络协议

  为媒体传输提供基本的网络服务支持,由于TCP需要较多的开销,不太适合传输实时数据。在流式传输的实现方案中,采用RTSP/TCP 来传输控制信息,而用RTP/UDP 来传输实时声音、图像数据。

  传输协议

  传输协议包括RTP、RTCP、RTSP 和RSVP,RTP和RTCP 控制端到端网络数据的传输,RTSP 提供话路控制的功能,RSVP 是可选的,它为播放进程在网上预先申请一部分网络资源( 即带宽),能在一定程度上为流媒体在Internet 上的传输提供特殊服务质量QoS。为流媒体设计的协议栈如图3 所示:从UDP/TCP层得到的数据包处理后得到打包的RTP 数据流,通过RTP/RTCP/RTSP 层分离出定时和同步信息以及包的序列号,将读出的流文件交给ASF 和RM解码模块。

  

  

1 2 3 4

关键词: 流媒体播放器 模块 嵌入式Linux 流式文件 QCIF 控制端 gettext 数据域 嵌入式系统 WAV

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版