媒体播放范例6篇

媒体播放

媒体播放范文1

关键词: J2ME 设计与分析 播放与控制

1.引言

随着通信技术和计算机技术的迅猛发展,3G时代的到来,人们对手持设备的应用有了更高的要求,人们已不满足于简单的通话、收发短信等基本功能,而更多的是要求有多媒体应用,能利用手机进行上网冲浪、3D游戏、播放视频等。

2.J2ME技术介绍

J2ME平台存在的基础是设备使用操作系统的多样性。虽然JAVA的运行速度经常受到指责,但手机平台的发展已经使得这种缺陷可以忽略,而J2ME适用平台的多样性使得J2ME技术成为手机应用开发的首选。它的主要技术优势在于:有良好的跨平台能力,实现了write once,run anywhere,有着与J2EE后端的无缝结合能力。因为J2ME是基于Java语言的,所以它天生就具有以下优点:

・动态内容传输。新的应用、服务和内容可以通过不同类型的网络动态下载。

・安全。类文件校验、明确定义的应用程序编程接口和安全组件确保了第三方应用程序的行为是可靠的。不会对设备或者网络造成损害。

・交叉平台的兼容性。标准化语言组件和库意味着由于支持J2ME配置和简表所带来的约束使应用和内容可以在不同设备之间灵活地传输。

・离线获取。不用激活网络连接,应用就可以被使用。这种特点降低了传输费用,减轻了可能的网络故障带来的影响。

3.系统的设计与分析

3.1目前存在的问题

随着通信技术和计算机技术的迅猛发展,人们对手持设备的应用有了更高的要求,人们已不满足于简单的通话、收发短信等基本功能,而更多的是要求有多媒体应用,能利用手机进行上网冲浪、3D游戏、播放视频等。移动设备通过网络观看视频将是必备的功能。目前的城市的网络覆盖率比较好。

在这种情况下,多媒体播放器在设计与实现中存在一些问题:

3.1.1由于多媒体手机在硬件性能上与PC机有着显著的差异,在多媒体手机上播放的视频短片的比特率要远远低于PC机上的,所以在设计多媒体手机时要受到多媒体手机硬件与操作系统的影响。

3.1.2现在多媒体手机外接的存储卡容量不是很高,当你在旅行的过程中或者在移动的过程中,因为你的存储卡的容量有限,所以你只能看少量的影音文件。

3.1.3现在多媒体手机在播放视音频文件的过程中,如果看到自己喜欢的图片,无法保存下来,作为永久的珍藏。

3.1.4如何设计一款全新的多媒体播放器,为将来的多媒体移动服务打下坚实的基础。

3.2对目前系统的改进

本项目是一个关于手机播放器的系统,通过移动终端手机能够实现在任何时间、地点进行多媒体音频与视频的播放,本项目在空间上延伸了基于Internet的网络服务,在时间上更具有灵活性。本系统只能播放格式为MPEG的视频文件与格式为WAV的音频文件,这是由底层的开发包所决定的。

本项目具有以下几个功能模块:

3.2.1视频(主要是MPEG格式)的播放模块。播放形式主要采用两种形式:本地播放与网络播放。本地播放也就是所谓的视频文件在本地手机存储器里,直接进行播放,网络播放主要是视频文件放在网络服务器,手机进行调用播放。它在空间上延伸了Internet的网络服务,在时间上更具有灵活性。

3.2.2音频(主要是WAV格式)的播放模块。播放形式主要采用两种形式:本地播放与网络播放。运行方式与视频播放模块相似。

3.2.3抓图模块。在进行播放本地与网络视频时,当你认为一个视频的瞬间你很喜欢,你就可以进行抓图,把它截取下来。

3.2.4控制模块。在进行播放音频与视频的同时,有一些基本的控制功能,比如播放、停止、暂停、增加音量、减小音量等。

4.播放与控制的设计与实现

它主要是由VideoCanvas继承Canvas,并有以下几个方法:VideoCanvas(),initialize(),paint(),time2pix(),open()等。它主要实现的功能是:对播放的视频或音频文件进行一系列的操作,比如播放、停止、暂停、增加音量、减小音量等。

以下是主要的代码:

public class VideoCanvas extends Canvas implements Runnable,PlayerListener,{//在框架中添加videocanvas类的构造函数,初始构造函数,初始化屏幕}

private void initialize(){//添加返回按钮}

public void paint(Graphics g){//只有播放视频的时候可以使用全屏}

private int time2pix(long time){//计算时间的字符串格式}

public void open(String url){//分析打开资源的URL}

public void start(){//获得视频时间长度}

public void close(){//关闭程序}

public void pause(){//首先判断player对象是否已经创建了,如果存在player点}

public synchronized void pauseApp(){//player正在播放,所以停止它并且释放资源}

public void run(){//获得播放视频所需要的时间}

public void playerUpdate(Player plyr,String evt,Object evtData){//是否播放结束}

private void doSnapshot(){//进行抓图功能}

protected void pointerPressed(){//更改滑杆上面的小方块的位置,然后请求重画屏幕}

public void commandAction(Command c,Displayable s){//控制播放}

public synchronized void startApp(){//开启程序}

public void keyPressed(int keyCode){//利用手机里的按键进行一些操作}

switch(keyCode){

case Canvas.KEY_NUM4://减小播放速度

case Canvas.KEY_NUM6://增加播放速度

case Canvas.KEY_STAR://减小音量

case Canvas.KEY_NUM0://静音

case Canvas.KEY_NUM7://向后跳跃,即快退

case Canvas.KEY_NUM5://停止播放

case Canvas.KEY_NUM9://向前跳跃

case Canvas.KEY_NUM2://暂停,播放

case Canvas.KEY_NUM8://全屏,目前不支持

case Canvas.KEY_NUM1://没有发挥作用

case Canvas.KEY_NUM3://跳过}

5.结语

本文研究的重心在于探讨利用流媒体技术使手机播放器中本地与网络(无线)终端MIDP应用开发技术的解决方法及资源的网络通信、信息整合问题。本文中深入研究了J2ME体系结构及其平台下手机程序MIDP的开发技术,详细分析了本地终端与无线终端和资源的通信解决方法,并构造了一个手机多媒体播放器系统。本文设计与开发了播放与控制,通过该系统,完整说明了MIDP应用程序开发的流程控制、界面设置与流媒体和视频压缩技术。本系统还会不断地改进,实现更广、更新、更实用的功能,以适应时代的需求。

参考文献:

[1]吴一丁.J2ME技术在移动设备上的应用.java研究组织,2005.

[2]黄宝雄.流媒体技术.中国多媒体视讯,2005.

[3]刘雄武.移动流媒体技术及其应用发展方向.CSDN,2005.06.

媒体播放范文2

本机概貌

参加卫视传媒论坛娄军先生的团购已等不及了,只能提前先购入一台一睹芳容,这是一台型号为BS-TH666HD的小机器(图1),全铁壳机器,在当前大打价格战的时代已不多见了,而体积非常小巧,还没有一本16开的书本大,外观尺寸:234×170×37mm。外观中规中矩,平淡无奇,中间是国标地面接收机几个字,其上是一个四位七段的LED显示屏,用于显示频道号码,在操作菜单时则显示菜单状态。左侧有一个USB端口,可外挂U盘和移动硬盘,用于本机录像或播放其中存储的高清节目。左侧只有三个轻触键:电源、频道加、减。

前面板的右侧上面则是一个读卡器,也就是说本机不仅可以通过USB接口读盘,还可以直接插入常见的SD卡,直接读取上面的内容或录制本机节目,右下角是本机的型号,而左下角则是本机的品牌BOXSAM,原来这就是博尚的英文名称。说起博尚,可能大家并不熟悉,但它也是地地道道的生产卫视产品的正规军。浙江博尚电子有限公司(BOXSAM),成立于2002年,是国内专业生产数字卫星接收机的厂家,由于多做出口产品,知名度不高,倒是由于中星九号二期的村村通工程而闻名,不仅拿到了大单,而且提前完成了生产任务。其产品涵盖DVB-S/T/C、国标的DMB-TH、及接收卡和USB接口盒,既然是正规厂家的产品,想必品质应该是有保证的。

本机价格虽低,但仍采用彩盒包装(图2),上面标识清楚、介绍全面,说明书也做得比较详细,遥控器外观似曾相识(图3),全中文标识易于识别。其后面板如图4所示,采用一入一出式的调谐器,一组色差输出,一组AV输出,一个HDMI输出,一个数字音频同轴输出,一个直流插座。本机使用12V/1.2A直流电源,右侧是厂家名称、产品名称、型号及生产日期,从2010年6月的生产日期看,本机显然是刚出炉的最新产品。

地面波节目接收

本机又称二合一接收机,既可以做普通的地面波高清接收机使用,也可以做一部高清播放机使用,下面我们先来看一下地面波接收方面的使用。本机开机默认是接收国标地面波节目,即接收机状态,启动时间相对其它机器要快很多,如果你已安装调试好了地面波接收天线,则将天线连接本机后开机即可收到地面波节目,在深圳可以接收到包括香港在内的23套地面波节目,其中5套高清节目,具体接收参数如附表所示。如果本机没有预置节目,则会出现一个安装指南的引导画面(图5),首先设置一下菜单语言,默认是简体中文,当然根据自己的喜好也可以选择繁体中文和英语等其它两种语言。

下一步是频道搜索,也就是机器全自动搜索节目(图6),搜索到的节目分广播和电视分列两边,下面有一个进度条显示,其实这个全自动搜索实际上是按本机预置的474~858MHz频点顺序搜索,为了加快搜索速度,可以按菜单键跳过某些频点,搜索结束后自动保存并退出。其实如果知道本地的频点,最好是手动搜索。按菜单键,弹出本机的主菜单,共包括6个项目:节目、频道搜索、时间、选项、系统和USB等。其中第二项就是频道搜索(图7),包括3个小项目,自动搜索、手动搜索、天线电源,最后一项是天线电源,可以选择开或关两种状态。笔者原天线的天线放大器就是机内供电,刚好此机也可以提供这个功能,这样就省去了一个电源盒,也省掉了多余的连线,还能做到天线电源与接收机电源同步,很不错的一个设计。

如果你的天线是无源的或是外部供电,则要将此项关掉,以免输出短路(本机对外提供直流5V供电)。选择第二项的手动搜索,就进入手动搜索界面(图8),选择有信号的频点,按OK就可以搜索节目了,搜索完毕后自动保存退出。本机的信号显示不好用,是一个点状的条形指示,无信号时是空白,有信号时则会出现一点闪动,接近信号门限时闪动的频度加大,而一旦过了节目门限,则信号显示直接打满100%,看不到具体的信号值大小,用来调天线则不是很方便,据悉下一版软件会有相应的改善。

直接按遥控器上的OK键,就可以直接调出节目列表,当然也可以用数字键直接选台。或者将节目进行编辑操作,主菜单的第一项就是节目(图9),包括节目编辑、电子节目指南、排序、LCN等4个小项。虽然本机有按LCN搜索并排序这一项,但实际并不能实现,节目排序也有LCN、ONID、服务商名称、服务商ID等多种,但最好还是按ONID进行,不然在节目编辑中无法对节目移动,即使能移动,节目号也是固定的。若要进入节目编辑,首先要输入6位正确密码(图10),本机默认是000000,节目编辑包括对节目做移动、跳过、锁定、删除、喜爱等处理。遥控器上的红绿黄蓝四色键在不同菜单下定义不同的功能。如可以将5个高清节目都移动在一起,并放在首要位置(图11),或者将其设为喜爱节目(图12),并可分为电影、音乐、体育、新闻等四类,下次直接按遥控器上的喜爱键,就可以直呼喜爱节目(图13)了。

平时节目切换时,会在频道下方叠加一个信息条(图14),上面除有节目序号、节目名称、当前时间外,还有两条EPG信息,中间还有当前节目时段的进度显示,右上角是本节目的序号显示。如果在正常收视中,按一下遥控器上的信息键,也显示这些信息,若再按一下信息键,就会显示的更详细一些(图15),不仅有EPG,还有此节目的内容介绍(如果节目商提供的话),本节目的频率及带宽等参数,以及信号质量显示,尽管这个信号显示的并不准确。

本机录像功能

本机可以提供一周七天的EPG(电子节目指南),好在深港两地的地面波节目都有EPG提供。按一下遥控器上的节目指南键,就可以显示当前节目的EPG(图16),内地节目的EPG一般情况下没有更详细的节目介绍,而香港的EPG中大多都有这个内容(图17),图中右侧就是这个时段节目的内容介绍,如果有多页,可以通过翻页查看更多的内容。

节目有EPG的好处不仅是为收看节目带来方便,另一个更重要的用处是预约录像。如我们查看EPG时想把图18中《李小龙传奇》这个节目录下来,很简单,按OK键就进入预录添加界面(图19),不用做任何改动,再按一次OK,这个预约就加入了录像列表中(图20)。当然你也可以对已形成的预约进行编辑修改(图21),甚至取消删除,也可以由录制模式改为查看模式,即到预定时间并不产生录像动作,而是切换到相应频道进行观看。

实现预约录像的前提是,必须有准确的本地时间,本机没有时间的相关设置,而是由节目自动下载时间,断电后本机也不能保留时间,但在待机状态下,本机时间还是正常走时的,所以本机支持待机的预录。只要到了设定的录像时间则会自动录像,到时间后而自动停止录像。当然我们也可以随时录像,想录就录,按遥控器上的录制按钮,就可以进入录像状态,同时在左上角显示已录像的时间,按遥控器上的停止键就可以停止录像,开始和停止录像都会有相应提示,以免误操作(图22)。

实现正常的录像功能还有一个前提,那就是有相应的存储媒体,这似乎是费话,但也是很重要的,因为本机并没有内置相应的硬盘。前面我们说过,本机前面板上有一个读卡器,另有一个USB接口,无论是插入卡或是另接U盘和移动硬盘,都是可以的,在录像之前最好先设置一下。

本机主菜单中的最后一项是USB(图23),包括多媒体、录像配置两顶,而录像配置又包括录像设备、格式化两个小项。在录像之前我们最好设置一下,如果你同时插入了SD卡和移动硬盘,则存储设备中就会有两个项目可选(图24):C盘为读卡器中的存储卡,而D盘则为USB2.0接口中的移动硬盘(图25),同时列出媒体类型、总空间及剩余空间。本机支持磁盘格式为NTFS和FAT32/FAT16,这样运用就非常方便,与WINDOWS格式兼容,随时热插拔,机器都可以随时识别,在使用之前可以格式化,也可以在机器中格式化(图26),可以选择NTFS或FAT32格式均可,或者根本不用格式化,插上移动硬盘,只要有剩余空间就可以正常识别、正常录像、正常播放。

在录像状态下,平时只做电源指示的前面板红灯,此时变为闪烁状态,其实这是一个双色指示灯,录像状态是红绿交替显示,这又是一个不错的设计。在录像状态下也是可以换台的,原则是同频点下的节目,如果是其它频点的节目,就出现提示条,如果强行换台也不是不可以,结果只能强行中断当前的节目录制。在录像状态下,如果按遥控器的信息键,则可弹出一个全面的信息界面(图27),此界面中不仅能显示当前录像的存储载体的大小,剩余空间,还能显示已录文件大小,录制的比特率及最大的录像时间等,非常全面。

本机电路配置

看到这里,也许大家急于了解此机的芯片配置了,因为我们每次介绍机器时先介绍芯片后介绍功能,此机做为首款真正的高清接收播放二合一机器,与以往的高清机及播放机芯片都不一样,不是常见的STi,也不是Sigma,而是Mstar 的MSD7828,看来这又是一个全新的方案平台。图28是本机内部电路概况,别看本机体积小巧,内部电路主板更小,里面的空间还有一些余地,其实电源部分完全可以做在里面,全部电路由主板、读卡器及前控板组成。本机高频头采用ALPS品牌(图29),型号TDAD3-C02A,马来西亚制造,品质还是有保证的。

信道解调芯片采用 LGS-8G52,采用144脚LQFP封装(图30),这是凌讯科技第一片兼容国标单载波/双载波的芯片,完全支持中国数字电视地面广播传输标准(GB20600-2006)。其设计用于地面数字电视接收,支持高清及标清电视和其它多媒体服务的广播传输,适用于户内、户外、固定及移动接收的电视终端。LGS-8G52芯片接收调谐器输出的数字IF信号, 然后将其转换成基带信号IQ。经过必要的信道解调及前向纠错解码处理后,输出并行或串行的MPEG-2 TS流。再配以外接的时间交织所需的SDRAM, 可构成完全符合GB20600-2006标准的将RF信号转换成MPEG TS流的前端数字电视接收系统。

本机的主芯片当然是主板上有散热器的芯片,型号是MSD7828L-LF-L1(图31),本图片由娄军先生友情提供,在此致谢。看到这个芯片上的图标,有些人可能熟悉,是的,在液晶显示器电路板上会经常见到这个公司的芯片,也许将来MSD7828芯片方案将会成为主流方案,因为它功能强大而价格低廉。MSD7828芯片来自于台湾的辰星半导体股份有限公司(Mstar),其网址为:省略,主要在研发手机、显示器等领域芯片。MSD7828采用256脚LQFP封装,主频216MHz,是一块功能强大的解码芯片,支持H.264(MPEG-4 )、MPEG-2 高清和标清解码,支持576P、720P、1080i、1080P多种分辨率输出,更支持图片(BMP、PNG、JPEG格式)、音乐(wma、.mp3、.m4a)、电影(.avi、.mpg、.dat、.vob、.div、.mov、.mkv,.mpeg、.ts、.trp)等多媒体文件播放,又是一个地道的高清播放机芯片。

图32是MSD7828的应用框图,这样大家一目了然,左边是信号输入,可以是读卡器、USB,也可以是TS或IF中频信号,右侧则是解码后的输出信号,AV、S端子、色差或VGA,HDMI及S/PDIF音视频数字信号,辅之以两块内存及一块闪存,就构成了MSD7828方案平台。本机正是这样,以MSD7828为中心,加之周边的两块Memory和一块Flash就构成了本机的主电路,图33就是本机的Memory,采用的是ESMT公司的DDRII,型号为M14D5121632A,单片512MB,两片合计1024MB;Flash 采用宜杨的EN25B64(图34),双列16引脚贴片封装,容量为8MB。

实际上信号源的输入只要是标准的TS信号都可以被解码器所接受,这样就不局限于是DMB-TH信号,也可以是DVB-S/S2、DVB-C/T信号,或ABS-S信号,实际上大量的MSD7828方案出口机器,都是做成DVB-T或ISDB-T,加之多媒体的播放功能,成就了比较高档的二合一接收机,具有极高的性价比和竞争力,可以预见,未来的接收机方案的主流也许就是MSD7828方案,用同样钱能买到有高清播放功能的机器,何乐而不为?这使我想起以前的凌阳(SUNPLUS)的SPHE1002AC芯片,使得中九接收机不仅有录像功能、色差输出、数字音频输出,而且也有标清多媒体播放功能,要不是政策所限,早已遍地开花了,何况MSD7828方案平台具有高清播放功能呢?

本机的读卡器如图35所示,由5根线连接至主板,有两根地线,实际上是标准的一个读卡器,虽然面板上标注为SD读卡器,但实则是多功能读卡的,从其反面的电路就知道了(图36),读卡器的主控芯片是安国(ALCOR)的AU6371,这是一个标准的四合一读卡器电路,直接可以读取最常见的SD卡,同时也能识别现在的DSHC大容量高速卡,如果外加卡套,还可以读取MS 卡,以及miniSD和microSD等小卡,这样应用就更加广泛了。

高清播放机部分

余下的篇幅我们重点来看本机的高清播放功能,首先来看本机录像节目的回放。前面我们说过,本机录像可以录在SD卡上,也可以录在移动硬盘上,可以直接按遥控器上录像列表调出,也可以在菜单的多媒体中进入,或者按遥控器上的多媒体按键,直接由电视节目切换到多媒体播放状态,如果你同时插了两个存储设备,则会出现一个选单(图37),来选择进入哪一个存储设备,无论进入哪个,出现的下一个界面都是一样的(图38),即包括图片、音乐、电影、录像等4个部分,其中最后一个就是本机录像的内容。点击录像按钮,进入到录像列表中(图39),选择录制的文件,就会在右侧出现小画面的播放窗口,按红色键则切换到全屏播放状态。无论在大画面还是小画面播放,都可做了倍速快放或慢放,即有2X、4X、8X、16X、32X等倍速播放,也可以用跳转键选时播放。

在图39中我们可以看到,其录像文件名称是以年月日时分加上频道名称加上节目名称构成,文件后缀 是PVR,其实不然,我们将其录像文件放到电脑上则一目了然。在录像时,本机会在存储媒体上自动生成一个PVRRECORD文件夹,所有的录像文件都放在这个文件夹中。图40就是我们刚录的两个视频片断,大家看到了吧,其实我们上面看到的文件名是一个文件夹名称,打开这个文件夹(图41),我们见到真正的视频录像文件,其名称为data0001.ts,是真正的TS源码文件,这一点我们也可以在电脑上用终极解码播放,从其信息显示上(图42)得到进一步的证明。

如果在多媒体(图片、音乐、电影、录像)选项中选择电影,就进入媒体列表,可以是读卡器、U盘或者移动硬盘,本人的单个1.5T硬盘可以顺利识别(图43),逐层进入文件夹,直至到视频文件(图44),我们特意选择了一个多音轨的MKV文件播放,在正常播放的大画面中按遥控器上的声道键,在右上角就会显示出音轨(图45),连续按此键就可以在多层音轨中切换。

目前最常见的高清格式是MKV,其实MKV只是一种封装容器,真正的格式是MPEG-2和H.264,本机播放都不成问题,测试M2TS蓝光格式也没有问题,笔者特意又复制了一个含有多音轨的VOB文件(DVD),同样可以正常播放(图46),并且也能正常识别其中所含的四条音轨,包括DD5.1、DTS5.1、DD-EX、DTS-EX等6.1节目(图47),本机可解DD音轨,DTS则无法解码,但通过本机同轴输出至解码器都可以正常识别并解码。图48~图50分别是播放MKV、MP4、TS文件的图示。

在正常的播放画面下,按一下遥控器上的信息键,就会将文件信息显示在右下角(图51),包括文件名称、文件大小、文件分辨率及帧频,节目总时间及已播放时间。文件播放中可以倍速播放,也可以用跳转键选时直接播放。很可惜的是本机的字幕支持,只能显示外挂字幕(图52),且颜色大小不可调,而不支持文件本身封装好的内置字幕,这是一个很大的不足,因为现在大部分的高清文件都是内封多层字幕的。

如果我们选择了播放图片和音乐,则对这些常见的图片及音乐格式都可以支持正常播放。在播放图片时(图53),可以显示出图片的大小、名称、分辨率等信息,可以选择全屏幕幻灯片模式播放,也可以用色键进行旋转或放大等操作。播放MP3文件当然也是可以的(图54),可以用顺序选曲,但其信息显示不太好,有些东西是乱码,据说下一版软件能解决乱码和字幕问题。

本机其它功能

本机还可以实现定时关机功能,在主菜单的第三项是时间,平时这项是关的状态,如果将其打开(图55),则可实现在1、2、……12小时后自动关机,进入待机状态。在第四项的选项中,主要是对菜单、字幕、音频的语言进行选择(图56),菜单语言有中、英、繁三种可选,其实字幕、音频的语言这里虽然可以选择,但没有实际意义,只有节目提供才可以。本栏中的最后一项数字音频才是关键,有PCM、RAW、关三种状态可选,如果选择在RAW上就是源码输出(图57),而在PCM状态下只能是双声道输出了。

无论是在高清播放还是地面无线接收节目状态下,只要节目源支持,都可以选择字幕和音轨,只不过显示的方式不一样而已。上面我们已说过了高清播放时的选择,目前只有香港地面波的节目有多音轨和多字幕选择,图58是按声道显示的音轨菜单,即音频语言选择,上下键选择音轨,左右键选择择声道,前面标识出了音轨类型AC3,则国内的节目大多为单层音轨且为MPEG(图59)。香港地面波节目均为两层伴音,第一层一般是DD2.0,第二层一般是DD5.1,多用于双语广播,如国/粤、国/英、国/韩等。按字幕键则显示出字幕菜单(图60),可在中、英、繁三语种中选择,也可以选择将字幕关闭不显示。当录像节目回放时也可以选择音轨和字幕(图61),更进一步证明了我们所录的是TS源码文件了。

本机的系统菜单包括父母锁、设置密码、恢复出厂设置、信息等四项(图62),可以对节目进行加锁,可以更改系统密码,也可以恢复出厂设置,即清空节目表。图63是本机的信息,软件、硬件的版本信息,由此可见本机是刚出厂的第一批机器!

除在主菜单中可实现的功能外,遥控器上还有一些快捷键可以直接切换一些功能:连续按遥控器上的黄色键,可以切换视频输出的分辨率,本机可在576P、720P、1080I、1080P、AUTO几种模式中切换,对于高清播放和地面接收都有效,切换时在屏幕中间都有相应的字符提示。按16:9/4:3按键,来改变图像输出的比例,以适应不同的显示终端。连续按此键可在16:9宽屏、4:3全屏、4:3适合屏幕、4:3letter Box、自动等之间切换,模式还是挺多的。

总体评价

总的来说,以不足五百元的价格,能买到真正的地面高清接收/录像、高清播放二合一的机器,还是非常超值的,性价比很高,本机可以说是高清播放机带地面接收功能,也可以说是地面接收机带高清播放功能,二者所占的比例均等,如果有两种接收,比如DVB-S2/DMB-TH,则侧重于接收而不是播放功能了,虽然信息显示并是很强大,图像质量与高档机还有一定差距,但完全可以满足大多数人的使用要求了。

媒体播放范文3

如今流行的媒体播放器虽然很多,但都或多或少存在一些缺陷,比如:没有记忆的功能;下次播放的时候

不能从上次离开的曲目开始;没有身份认证功能;不能有效的保护媒体播放器里面的歌曲专有性;功能组

合与用户的习惯相违背;界面太复杂以及操作太难等。随着人们对娱乐要求的提高,一款别致的、贴近用

户操作习惯的播放器非常值得去研究和开发。

本论文所描述的播放器是在microsoft visual studio .net 2003平台下利用visual 语言完成

的。使用visual 提供的windows media player控件以及文件处理,最终实现一款别致的,贴近

用户操作习惯的媒体播放器。

该播放器实现了对wav、mid、mp3、mov等格式的多媒体文件的播放功能;实现了播放列表加载多个多媒体

文件并可以自定义播放顺序;实现了用户的身份认证、连续播放、记忆播放以及自动关闭播放器等功能。

关键词:媒体播放器;visual ;microsoft visual studio .net 2003;windows media

player控件;记忆功能

3.2 系统功能设计

设计的功能主要分四大子模块:文件加载、播放、关闭、认证。文件加载是由打开和添加两个子功能模块

组成。播放包括自定义播放顺序、连续播放多个文件、记忆播放三个子功能模块。自定义播放顺序则是由

上一首、下一首、暂停/播放、停止、播放列表等子功能模块组成。关闭是由循环播放和播放一次就关闭

两个子功能模块组成。身份认证是由登陆和修改认证两个子功能模块组成。

3.2.1 认证

认证包括两个子功能:

1)认证登录:通过用户名和密码的认证登陆,播放器才能被使用,功能主要是保护隐私,不能是所有人

都能使用播放器,实现了权限的分级,更具有安全性。

2)修改认证:输入原来的用户名和密码,再输入想修改成的用户名和密码,单击确定。当下次打开播放

器的时候,认证将采用修改后的新用户名和新密码。

3.2.2 文件加载

文件加载包括两个子功能:

1)打开:加载一个或者多个文件到播放列表中,并自动播放;加载新的文件进入时,覆盖播放列表中原

有的播放文件。

2)添加:加载一个或者多个文件到播放列表中,不会覆盖原有的播放列表,只是添加在原有列表的后面

3.2.3 播放

播放包括了三个子功能:

1)自定义播放顺序:单击下一首按钮,开始播放下一个文件,单击上一首按钮,开始播放上一个文件。单击

暂停按钮,则播放器暂停播放,同时暂停按钮变为开始按钮,单击开始按钮,播放器从暂停处继续播放,同时

开始按钮恢复为暂停按钮。单击停止按钮,播放器停止播放。双击播放列表中想要播放文件的文件名,直

接播放。

2)连续播放多个文件:用户可以添加一个或者多个多媒体文件在播放列表中,若添加多个文件,则按顺

序连续循环播放。并在播放器的标题栏显示正在播放歌曲或者视频的名字。

3)记忆播放:退出播放器时,程序自动将用户选择的目录保存到index文件夹中,以便下次打开播放器时,

读取index文件夹中保存的文件记录,可以直接从上次退出时正在播放的那个文件开始继续播放,这样就能

实现每次启动播放器,首先播放的是上次退出时播放的那个文件。这样做就使得播放器具有了记忆功能。

3.2.4 关闭

关闭包括两个子功能:

1)循环播放:在默认情况下,播放器是处在循环播放状态中,所谓循环播放就是当播放完播放列表中的

多媒体文件时,又回到第一个文件开始播放。

媒体播放范文4

关键词:Android;音乐播放器;移动多媒体

中图分类号:TP317 文献标识码:A 文章编号:1009-3044(2016)03-0240-02

随着计算机网络与手机的迅速发展,各种音乐资源成为人们生活中必不可少的一部分,音乐播放软件成了手机必不可少的要素[1]。目前手机播放器以酷狗音乐、QQ音乐、网易云音乐和虾米音乐等为代表,另外还有大量手机开发厂商自主研发的基于其自身系统的音乐播放软件[2-3]。但存在播放器一味追求外观花哨、功能庞大,对用户的手机造成比如CPU、内存等的占用率过高,同时对于大多数普通用户而言,许多功能形同虚设。Android的开放性优于其他封闭式系统[4]。因此,本设计致力于一款基于Android手机平台的音频播放器,进行性能优化与简化满足用户需求。

1 系统设计

本设计具有与用户交互简洁美观易于操作的界面,同时还具有播放器的基础功能与扩展功能[5-6]。音乐播放器主要由前台应用和后台数据库组成。前台主要实现与用户的交互,实现歌曲的播放控制、显示曲目列表;能对曲目列表进行插入,删除,修改。另外扩展功能包括歌曲查找与搜索页面,显示搜索结果歌曲及信息;在歌曲播放界面下能显示图片等。

1.1 系统总体功能结构设计

系统总体功能结构设计如图1所示。

1)音乐文件的播放功能模块

音乐文件播放实现对音乐文件的播放、暂停、歌曲的切换、播放模式的选择与音量的控制等功能。

2)菜单栏功能模块

主菜单栏为播放器的主要功能,其中包括播放器歌曲列表、音乐均衡器、播放器的相关设置、本地搜索、随机播放一首音乐、刷新乐库、关于iMusic音乐播放器的说明与音乐播放器的退出。在音乐播放器菜单栏功能模块表中体现了其运行流程及产生的相应效果。

3)歌曲列表功能模块

音乐播放器歌曲列表功能能够对歌曲列表进行新建、添加、删除和保存等操作。

4)音乐文件操作功能模块

音乐播放器歌曲文件功能能够歌曲文件进行播放、添加、查找、删除、编辑、排序与重命名等操作。

1.2 系统界面设计

系统界面显示的需求用例主要包括视觉外观显示、歌曲时间显示、播放状态显示与歌曲文件信息显示等。具体设计见表1至表5。

2 结束语

采用基于Linux系统的Android平台,调用其活动、广播接收器、服务和内容提供者等四大基本组件与音频架构的相关接口,对多媒体音乐播放器的功能结构和界面显示的需求用例进行了设计。系统具有音乐播放、音量控制、文件加载与搜索等功能,能够设置音乐播放器列表循环、随机播放、单曲循环等模式与背景图片、主题。系统操作方便、界面简单,具有较好的实用性。

参考文献:

[1] 许瑾. 基于Android平台音乐播放器的设计与实现[D]. 北京: 北京邮电大学, 2011.

[2] 葛艳, 高占江. 基于Android 系统的音乐播放器设计与实现[J]. 微型机与应用 2014, 33(1): 5-7, 10.

[3] 韩超, 梁泉. Android系统原理及开发要点详解[M]. 北京: 电子工业出版社, 2010: 132-135

[4] 李德平. 基于Android的移动多媒体播放器软件的设计与实现[J]. 河北软件职业技术学院学报, 2014, 16(1): 52-56.

媒体播放范文5

经典系列再升级

海美迪(HIMEDIA)H10 IV

网址:

H10IV使用2016年杜比实验室与海思联合推出的Hi3798CV200芯片方案,是一台支持Dolby Vision和4K HDR高动态范围技术的4K超高清播放器。在设置界面的高级显示设置项中,我们可以看到电视HDR模式提供了SDR、QTHER、HDR10和AUTO四个选项。设置菜单中还有视频颜色空间和HDMI色深模式,可见H10 IV还提供了10bit色深处理,使图像色彩过渡更自然逼真。H10 IV支持目前最高色域BT.2020色彩空间,视频相比BT.709视频的色彩更精准丰富,最高输出分辨率可达3840x2160像素的分辨率,且支持H.265编码技术,播放帧速率最高可以支持60fps,内置硬件解码器HiVXETM2.0视频引擎,采用2倍的解码流水线单元,因此高清动态画面流畅播放毫无压力。H10 IV除了完美解码4K视频和支持HDR,还可以支持Dolbv Atmos、DTX:X、DTS-HDMA、Dolby TRUEHD 7.1声道次世代源码输出到功放,音视频输出都达到了专业级水准。H10IV新的系统不仅内置了美国CONTROL4驱动,还可以支持多家智能家居品牌(如SAVANT、CRESTRON、国产的科力屋、思美特),可以与这些智能中控系统完成对接。

H10IV有内置硬盘仓,最高可使用8T超大容量硬盘,即使是超高码率的4K视频也可以轻松应对,如果你家里有NAS设备,你还可以通过H10 IV播放局域网内NAS上的视频资源,如果你采用电脑架设服务器,也可以使用NFS、SAMBA、UPNP这些常见的网络协议,H10 IV代独有的HiVXETM2.0视频引擎,可以进一步提升画面效果,让用户拥有更完美的体验。另外,对于视频的字幕外挂功能,H10 IV不仅支持多种字幕格式,而且可以用户自定义字幕字体颜色、字体大小、字幕位置等设置。

H10 IV搭载自主HiUI人机交互界面,集合了热门影视推荐、自定义添加应用、五大功能入口于同一个界面。HiUI界面设计简单、分类齐全、逻辑清晰,在首页界面用户除了可以快速对H10IV进行设置之外,还可以在同一个界面畅享在线影视(芒果TV)、游戏、音乐等,几乎可以找到机顶盒所有的操作和功能体验。系统UI给我的整体感受就是精简,也符合目前扁平化趋势的潮流设计,中间的彩色模块图标就是系统的主要功能菜单,用户也可以根据自己的需要来增加应用,做到一键直达,更具人性化操作。

H10 IV无疑是目前最好的HDR播放设备解决方案,因为其无论是视频解码能力,还是画质输出都领先于其他竞品。

软硬件搭配,提供更人性化使用的体验

开博尔(Kaiboer)Q10 Plus

网址:

Q10 Plus采用了基于64位Corex A53架构芯片方案,搭配2GB DDR3高速内存及16GB FLASH闪存,配合开博尔深度定制和优化过的Android操作系统,可以说播放蓝光电影硬解H.265是轻松无压力的。具备HDMI2.0a输出接口,支持HDR(高动态范围图像)和BT.2020(超高清蓝光的标准),支持播放峰值码流率高达200M的4K@60fps视频和蓝光原盘IS0/BDMV文件播放。支持HDR及全通道10bit视频处理,让画面亮部及暗部细节都得到充分展现,色彩还原更为准确,配合全景声的声音效果带来更为真实的观影体验。支持200MB/S的高码率的4K视频播放,实现了真正意义上的4K播放。支持蓝光导航(目前已经支持字幕调整和章节的筛选,后期固件可以升级实现真正蓝光原版导航)。

支持2.4GH z/5GHz双频Wi-Fi,接口包括了TF卡接口、光纤输出接口、CVBS一分三AV输出接口,支持千兆网口高速传输及NAS网络读取,支持内置6T或更大容量硬盘,还有HDMI OUT视频输出接口和千兆网络接口(联网读取局域网NAS服务器和观看在线点播)。机身内置了无线蓝牙4.0功能模块,独具HDMI IN视频输入接口支持录制,这个功能提供支持预约录制功能,比如对有线电视数字机顶盒的在线视频进行录制并可以随时切换全屏和画中画功能。

Q10 Plus搭d行业领先的安卓6.0操作系统,内置自主研发的第九代KIUI界面,采用卡片式的UI设计。主页上只有本地、音乐、芒果TV、应用及设置五个选择项,本地播放打开后默认显示的内容为插入的硬盘文件,可以通过左侧形象化的功能菜单切换至机器内的文件或者局域网内的共享文件,可以直接访问网络内的共享文件这是一大进步。开博尔Q10 Plus通过遥控器上输入5200即可实现在线安装,包含当贝市场、沙发管家等一系列常用应用,而免去了通过U盘考APK文件进行扩展的复杂步骤。

另外,具备独家本地存储、外接存储、局域网影片自动下载匹配海报功能,开博尔Q10 Plus与三大字幕网站联手,通过电影关键字联网即可自动字幕下载和挂载字幕,并且字幕可以偏移、大小、同步、文字编码、颜色等多项调节。画中画功能允许窗口以浮窗形式将HDMI设备内容展示在前台,可通过鼠标来移动窗口位置和切换全屏,有了该项功能,我们可以一边在看视频的同时在电视画面上观察监控画面的一举一动。

开博尔Q10 Plus由内到外全面升级,通过科技领先的软硬件搭配,令大家对高清蓝光播放器有了新的认识,从实际使用体验上更加期待这款开博尔Q10 Plus未来的升级潜力。

拥有独家研发的“影柜”系统

碧维视(BEVIX)BV8188Spro

网址:

碧维视真4K播放机BV8188Spro采用顶级4K解码芯片Sigma8758,拥有强大的影音播放能力,每一帧每一画都流畅呈现,享受最精致的视觉体验。支持解码4K输出,画面清晰度是全高清分辨率的4倍,超高清世界从此触手可得。同时也具有超强3D蓝光解码功能,让玩家轻松体验3D高清画质,身历其境尽享精彩大片。支持H265 10bit硬解码,进一步提高解码效率,画质清晰且立体感真实。

BV8188Spro机身采用全铝打造,前面板厚度8mm,非常的扎实稳固,全金属机身的最大好处就是提升散热,保障机器稳定运行。支持内置3.5寸硬盘,可插入8T大容量硬盘,相当于可以容纳4000部1080p电影、400部电视剧、200部蓝光高清大片,一次性满足你的海量收藏需求。背后接口丰富,常用接口同轴、光纤、HDMI、USB、LAN一应俱全,除此之外,还有一些特色接口,比如RS232通讯接口,用于智能家居中控系统或远程操控。拥有Dolby和DTS正版解码授权,同时支持Dolby TrueHD和DTSHD Master源码输出到功放,在享受4K超高清画质的同时,体验多声道立体环绕式原声带来更加自然逼真的声场。碧维视独家研发的“影柜”系统使它更具品牌辨识度,开机后,系统会自动检测硬盘的影柜系统,那么,如何实现影柜系统呢?你需要一台已经激活了影柜系统的高清播放机+通过影柜编辑器里编辑过的硬盘。将硬盘放入播放机,开启高清播放机里的Mbar界面,海报式影柜墙即刻呈现,用户可以通过遥控、iPad、iPhone选择想要的影片进行播放。遥控器采用夜光按键而非背光灯,在黑暗的环境下,通过自身夜光功能非常便于操作。同时支持iPad智能遥控,只要把影柜iPad端应用程序下载到iPad中,便可以轻松享受iPad端的智能遥控。比传统的遥控器操作更加简单易控,尽享智能时代的便捷体验。

独立的4K内容平台

SONY(索尼)FMP-X10

网址:.cn

在硬件配置上,FMP-X10国行版与美版完全一致,视频可实现3840x2160/60fps的4K视频输出,音频支持杜比数字+(DoblyDigital Plus)等格式。同时,还支持“TRILUMINOS Color”技术,提升显示效果,索尼宣称“可达到最广色谱(Widest colorspectrum we。ve ever offered)”。接口方面,索尼FMP-X10配淞肆礁HDMI接口,音视频信号可分开输出,有效减少信号损失。内置1TB硬盘支持容量扩展,USB接口前后2个,外接硬盘也可播放4K格式。此外,内置网卡还支持802.11a/b/g/n无线协议。

相比硬件,4K片源一直都是制约4K发展的关键因素。FMP-X10支持索尼4K影片下载服务,也是它最大的亮点所在。在美国,这款播放机可以通过索尼“Video Unlimited 4K”订阅下载电影、电视节目以及其它的视频资源。目前的合作商主要是Netflix,比如《纸牌屋》、《绝命毒师》等都已经提供了4K版本,将来计划提供过百部电影和剧集的4K版本。收费策略提供“24小时租借”和“永久购买”两种方式:24小时租借费用为7.99美元(约合50元)/部,永久购买费用29.99美元(约合186元)。设备的售价则为499美元(约合3095元)。目前,索尼“Video Unlimited4K”4K视频分发服务是世界上最大的家用4K内容库,索尼还在不断将索尼影业和Netflix等合作伙伴的热门影片更新进来。

至于中国市场,索尼会为其4K播放产品搭建独立的4K内容平台,会与中国本土的影视内容提供商一一华数进行合作,提供高码率原生4K影片下载服务。据了解,华数在线拥有全国最大的数字化节目内容媒体资源库,并与300多家海内外知名节目提供商和制片商建立了长期战略合作关系,拥有互动电视、手机电视、互联网电视等全牌照资源,能够为4K片源的普及提供有力支撑。相比起其他支持4K视频的互联网盒子,索尼在4K的硬件、规范、内容方面都是主导。不论是播放效果还是流畅度,索尼FMP-X10算得上是合理的4K视频解决方案。

提供强大的影音及游戏体验

Nvidia(英伟达)Shield

网址:

英伟达了搭载Tegra X1芯片的新款Shield主机。这是继英伟达Shield游戏掌机、Shield游戏平板之后的第三款游戏硬件产品。Shield主机集电视盒子和游戏主机于一身,运行Android系统,支持Grid游戏串流和4K视频串流。在硬件配置上,英伟达Shield主机使用了64位20nto制造工艺的八核Teg ra X1处理器,它基于Maxwell架构,拥有256个CUDA核心。辅以3GB RAM+16GB ROM空间,提供2个USB3.0、HDMl、千兆网口灯。支持4K超清视频回放与录制@60Hz(VP9、H.265、H.264编码),还支持802.11ac 2x2 MIMO(2.4G/5 GHz双频Wi-Fi)和低功耗蓝牙4.1。安兔兔跑分成绩达到了65995分,据称英伟达Shield主机拥有媲美电脑主机级别的性能,Shield的性能是下一代机顶盒的35倍。

作为一台强大的Android机顶盒,Shield支持4K视频串流,帧率可以达到60fps。还支持Google Play上购买的视频,也支持在线视频服务等等,同时还拥有遥控器一键访问谷歌语音搜索(Google Voice Search)的功能。Shield拥有一整套的接口,包括干兆以太网接口、HDMI 2.0接口(支持60fps,4K播放)、2个全尺寸USB 3.0接口、microUSB接口和microSD卡槽。高级版Shield TV配备了500GB存储空间,同时预装了热门游戏《无主之地:前传》,而基础版存储容量仅为16GB。如果你更偏爱播放本地内容而非串流,那设备所提供的microSD将会缓解你的燃眉之急。

总的来说,Shield改变了在家畅享数字娱乐的方式,是一款无比强大、高效和先进的客厅娱乐设备,能够提供最好的安卓电视体验,同时它可以变成一台真正的游戏机器。实现“硬盘+蓝光+光盘+智能”的一体播放

杰科(GIEC)BDP-G4390

网址:

杰科BDP-G4390 4K蓝光播放机内置硬盘仓,支持4T以内的超大容量硬盘,可装下约160部蓝光高清电影。杰科BDP-G43904K还融合了海量的高清影视资源,热门影视、搞笑综艺、动漫娱乐等节目任意点播,实现硬盘+蓝光+光盘+智能的一体播放。支持4K即3840x2160分辨率显示,能输出四倍于1080p的超清画面,同时“4K UHD极清上转换”、“DVD上转换”、“True 24p TM”等技术创新,可将任意视频转换为4K分辨率输出,给用户带来更清晰、更流畅、更逼真的图像效果。还支持3D解码,无论是上下式、左右式的3D视频格式,还是快门式、偏光式的3D电视,它都能支持并输出高质量的3D视频画面。

BDp-G4390蓝光播放机在用料上也讲究:电源电容选用来自日本的红宝石电容;音频旁路电容精选了COG高档电容;音频则选用高端的DA,支持192kHz/24bit,动态范围高达120dB。同时支持7.1环绕声效以及Dolby TrueHD、DTS-HD Master Audio双重音效,能真实再现原声音乐的饱满和细腻;BDP-G4390蓝光播放机接口丰富,配备双HDMI1.4接口,同时还拥有智能中控RS232C接口设计,是智能家庭影院和智能家居的优选;XLR接头可连接专业级音响,发烧玩家的选择。此外,杰科BDP-G4390采用索尼单光头设计的480AAA光头,稳定性更好,读碟能力更强。BDP-G4390蓝光播放机不仅仅是用来播放高清电影的设备,而是已经成为一件功能强大的家居科技产品,既可播放蓝光和DVD光盘,还能外接播放移动存储设备文件、实现在线点播网络资源等,可满足发烧友对蓝光播放机不仅仅限于画面品质,同时对听觉享受也提出了更高标准的要求。

小米家族伸向高清播放领域的触手

小米(MI)盒子3增强版

网址:

硬件方面,小米盒子3增强版采用了64位A72架构的六核处理器,主频高达2GHz,搭载的GPU为Power VR GX6250,同时标配2G内存与8GB高速闪存,相比上一代提升翻倍。从这些硬件参数来看,这款小米盒子3增强版相比上一代产品提升的可不是一星半点,64位A72架构的六核处理器支持4K H.265 10bit硬解码,可以轻松驱动4K超高清视频的播放。GPU方面,Power VR GX6250性能也更加优秀,支持0penGL3.1/0penCL,带来更强大的游戏兼容性,对于目前的主流大型3D游戏应该不在话下。

另外,小米盒子3增强版还具备蓝牙4.1模块,标配语音体感遥控器,并通^蓝牙与遥控器进行连接,有效规避了红外遥控在使用场景上的缺陷。小米盒子3增强版还支持802.11 ac双频段2.4GHz/5GHz的Wi-Fi网络,通过连接小米路由器,可以直接播放路由器中存储的影视资源。小米盒子3增强版背部提供两个USB接口和一个HDMI接口,可连接U盘、移动硬盘设备,也可以连接鼠标、键盘输入操作。小米系统支持外置U盘的APK安装,就是可以安装第三方软件在电脑上下载当贝市场,在盒子上安装即可。在音频输出方面,因为尺寸受限,并未搭载更丰富的音频输出接口(光纤Optical和同轴Coaxial),追求音质的用户可能需要更专业的输出解决方案。小米盒子3增强版依然没有加入网线接口,这点与上一代一致。

小米盒子3增强版单就配置来说,已经达到了市场上同价位段最强,由此带来了强大的解码能力以及快速流畅的运行,播放4K超高清视频以及玩转各种3D游戏也完全没有压力。功能方面则延续了小米一贯的亮眼表现,丰富的正版影视资源、强大的USB视频解码,都是对目前电视机功能过于单调的极大补充。另外,独具特色的教育资源、投屏功能也让它的应用更加广泛

轻松搭建出属于自己的私人影院

华录(Hualu)BDP2046S

网址:.cn

媒体播放范文6

关键词:Symbian;移动流媒体;顺序流式传输;FLV;移植

中图分类号:TP37文献标识码:A文章编号:1009-3044(2009)34-9830-03

Mobile Stream-Media Player Solution on Symbian

GAN Shou-cong, MEN Ai-dong

(Beijing University of Posts and Telecommunications, Beijing 100876, China)

Abstract: The design and implementation of stream media player on smart phone platform is currently a hot issue of mobile application development. The authors put forward the solution of related issues on Symbian S60. This paper describes the main characteristics of stream media and the feasibility of achieving stream media player on Symbian, and then proposes two implementations: the first is playing RTSP stream based on the RealPlayer engine, and the second is creating a player to play stream. Taking FLV stream-player for example, the paper describes in detail how to append a network module to the local player for playing network stream.

Key words: symbian; mobile stream-media; progressive streaming; FLV; repot

近年来,移动增值业务的种类日益丰富,如彩信、彩铃、手机游戏等。但总体来看,当前移动网络提供的主要是以图像和文字为主的静态内容。随着移动网络逐渐向3G演进,融合语音、文字、图像多种形态,为用户提供更为有声有色的手机电视、视频点播等移动流媒体业务,已成为移动增值业务发展的必然趋势。

Symbian OS是当前智能手机市场占有率最大的主流操作系统,基于Symbian平台的移动流媒体应用有着广阔的前景。Symbian S60系统内置播放器采用的是RealPlayer引擎,意味着它只能播放格式为MP4、3GP和RMVB的音视频本地文件或RTSP流。鉴于使用Symbian内置的RealPlayer引擎实现的流媒体播放器有着诸多的限制,比如不支持HTTP流式播放,不支持FLV等主流视频网站采用的流媒体格式,在Symbian平台定制自己的流媒体播放器,成为了当前研究的热点。

该文根据Symbian S60平台的特点,提出了两种流媒体播放器的实现方案,为不同的需求提供了不同的解决办法。其中为开源的本地播放器添加网络模块以实现流式播放,是一种行之有效的方法,可以广泛应用于Symbian平台的流媒体应用开发中。该文重点介绍了如何为本地播放器添加网络模块来实现HTTP流的播放。

1 Symbian对流媒体的支持

1.1 流式传输技术

实现流式传输有两种方法:顺序流式传输(Progressive Streaming)和实时流式传输(Real-time Streaming)。

顺序流式传输的本质是顺序下载,在下载文件的同时用户可观看已下载的部分,而不能跳到未下载的部分,顺序流式传输不像实时流式传输在传输期间根据用户连接的速度做调整。由于标准的HTTP服务器可发送这种形式的文件,也不需要其他特殊协议,所以常又称之为HTTP流式传输。

实时流式传输是指保证媒体信号带宽与网络连接带宽相匹配,使媒体可被实时观看。实时流式传输总是实时传送,适用于音视频直播,也适用于随机访问的点播,用户可快进或后退以观看前后的内容。实时流与HTTP流式传输不同,它需要专用的流媒体服务器(QuickTime Streaming Server、Real Server与Windows Media Server等)与传输协议(RTSP (Real-time Streaming Protocol)或MMS (Microsoft Media Server)等)。

1.2 Symbian多媒体框架

Symbian采用多媒体框架(MMF)处理多媒体应用,它为各种S60音视频播放器提供了一些高级API。MMF拥有一个插件架构,它使用了多种类型的用于媒体回放和录制的插件,所有的媒体录制和回放都由MMF控制器插件完成。一个MMF控制器可使用一些附加插件,用于媒体处理,如MMF编码解码器等。通过增加一些实现了新型编码解码和文件格式的控制器插件,就可对MMF 进行扩展。如要回放一个多媒体文件或URL,MMF框架将选择一种控制器插件来播放这个文件或URL。控制器插件可以载入其它的插件(如编码解码器等)。

RealPlayer引擎是针对MMF控制器的插件,支持视频和音频回放及流。它支持其自己的编码解码器插件。针对RealPlayer引擎的音频解码插件通过一种适配层即可使用MMF编码解码插件,或与DevSound框架通讯以实现解码和渲染。

Media Player UI是一种视频和音频播放器,它使用MMF高级API来访问多种MMF控制器。很多时候Media Player UI将载入RealPlayer引擎MMF控制器以渲染各种本地和流式多媒体内容。

2 基于RealPlayer引擎的实现方案

根据上述的Media Player UI,可以实现一个基于RealPlayer引擎的流媒体播放器,这需要考虑服务器和客户端两方面的问题。

2.1 服务器端

移动流媒体并不需要专门的手机的服务器端,手机对服务器的访问,与传统PC上对流媒体服务器的访问一致,只是手机通过3G或GPRS等移动网络接入Internet,而PC可以直接连接Internet。由于Symbian内置的是RealPlayer引擎,故其只能支持RTSP形式的实时流式传输方式,不支持HTTP流式传输方式和MMS等其它流媒体协议。Helix是RealNetworks公司开发的流媒体服务器产品,可以用来作为服务器端,为文件提供访问控制。

2.2 客户端

有了流媒体服务器,可以在手机客户端软件上自定义用户界面并使用CVideoPlayerUtility API播放和控制RTSP流,这同时需要提供一个从MVideoPlayerUtilityObserver派生的类,作为视频播放的观察者,以提供回调方法。

在实例化CVideoPlayerUtility后,使用过程中几个关键的函数为:1) void OpenUrlL(const TDesC &aUrl):打开指定URL,如果URL指定的文件不存在将告知错误;2) void Prepare():MVideoPlayerUtilityObserver提供的回调函数,通知装载控制器插件准备读取数据,如果文件格式不正确(不是RealPlayer支持的格式)将告知错误;3) void Play():开始播放音视频;4) void PauseL():暂停播放;5) TInt Stop():结束播放。

3 自定义播放器的实现方案

如果希望应用程序能够播放RealPlayer引擎不支持的媒体格式或其它流协议,创建一个定制的媒体引擎就是唯一的选择。对于自定义的播放器,典型的原理如图1所示。

基于上述框图,可以自由地在Symbian S60平台上实现流媒体播放器的各个模块。

3.1 服务器端的选择与开发

如果希望进行实时流式传输,则可以选用支持不同协议的流媒体服务器,不同的服务器可以支持的文件格式不一样,假如想播放微软的wmv、asf等格式,则可以选用Windows Media Service作为服务器;如果只需要进行顺序流式传输,则普通的Web服务器如IIS、Tomcat等都可以满足要求,且对音视频文件类型没有限制;当然,也可以根据需要自定义服务器端的实现。

3.2 手机客户端播放器主要模块的开发

1) 获取数据:通过网络模块从网络上接收数据流,如果是采用RTSP协议等,接收到的RTP数据包有可能是乱序的,这时候需要进行数据包重组;如果是采用HTTP协议,则不存在数据包重组的问题,但需要自定义处理丢包的情况;

2) 音视频分离:如果是采用RTSP协议,音视频是分开传输的,需要识别不同数据包的媒体类型,然后分离给不同的解码模块(音频或视频)处理;如果是使用HTTP协议,实际上获取的是源文件的内容,这时候需要读取数据内容来进行格式解析,判断不同的媒体类型,从而进行音视频分离;

3) 音视频解码:针对不同的音视频压缩标准,在PC端有成熟的音视频解码方案,对于不同的文件格式和编码标准,可以采用移植ffmpeg、live555等开源项目中解码器的方法,实现Symbian平台的解码器;

4) 音视频输出:对于视频,解码后的YUV数据转换为RGB后,采用双缓冲绘屏的方法输出到屏幕;对于音频,解码后可以使用CMdaAudioOutputStream输出。

基于上述原理,接下来将详细介绍如何实现FLV文件的HTTP流式播放。

4 FLV文件的HTTP流式播放

4.1 FLV和MobiFLV简介

FLV流媒体格式是一种新的视频格式,全称为Flash Video。它形成的文件极小、加载速度极快,已经成为当前视频文件的主流格式。目前各大在线视频网站如优酷网、土豆网等,均采用此视频格式,

MobiFLV是一个基于Symbian的开源FLV播放器项目,它的视频解码器部分是从开源项目ffmpeg的libavcodec部分移植而来的,使用MobiFLV可以在Symbian S60平台播放本地的FLV文件。为了让本地播放器能够实现流式播放,就必须为其添加网络模块,使其可以处理来自网络的数据而不仅仅是本地文件。

4.2 网络模块的实现

发送HTTP请求并获取服务器传回的数据,通常是非常耗时的任务。为防止主线程被阻塞,下载过程通常被安排在另一线程中执行,采用多线程的方法来实现数据的读写。但是Symbian并不提倡使用多线程,因为Symbian系统是通过客户端/服务器结构来提供对线程资源的访问,这意味着访问线程需要与内核的服务器程序不断地进行通信,效率低。

为此,Symbian为这种特别需求设计了一个Active Object(AO)框架。AO框架是运行于一个线程内部的调度框架,其基本思想是把单个线程分为多个时间片来运行不同的任务,各个任务是不可抢占的(这和多线程明显不同)。

利用Symbian独有的活动对象,可以使用两个AO分别负责下载和读取数据,这样即达到了类似多线程编程的目的,又提高了效率。

网络模块的基本职责是向服务器请求数据,并将获取的数据以适当的方式存储,供上层模块(如文件格式解析模块)读取,这其中并不需要修改上层模块的代码,只需要修改读取数据接口的具体实现。获取数据后,可以将数据完整地保存在本地文件中,也可以只保存在内存缓冲中,以下分别介绍这两种方法的实现。

4.2.1 基于本地文件

基于本地文件的方法,在从网络获取数据之前,先在手机上建立一个可读写的文件,从网络获取的数据流可以不断写入到文件中,当需要读取数据时,就好像从本地文件读取一样。

具体的实现方法是:使用一个低优先级的活动对象负责下载,并将数据写入到文件中,同时用一写指针记录当前写入文件的位置。同时,另一个高优先级的活动对象负责读取文件,为下一模块提供数据。当读指针大于写指针时,则等待下一个写信号完成的到来。

这种方案的缺点是:无论如何,都需要在手机上创建一个文件来保存数据,如果要观看的文件比较大,会占用较大的空间。

4.2.2 基于内存缓冲

基于内存缓冲的方法并不创建一个本地文件用于保存数据,而是将数据保存于内存的缓冲区中,读取完后再为缓冲区加入新数据。一个基本的方法是采用双缓冲策略,两个缓冲轮流负责接收网络数据流和为上层模块提供数据。基本的流程图如图2所示。

这是一个典型的生产者/消费者模型,Read AO作为消费者,DownLoad AO作为生产者,Buffer作为共有资源。DownLoad AO负责轮询Buffer,看是否为空,是则启动下载,否则返回;Read AO则负责读取数据,如果Buffer为空则等待,否则读取,并记录读指针的位置,当超出Buffer大小时,将Buffer置为空,表示需要下载新数据。

根据上述方法,可以实现一个基于HTTP的流媒体播放器,并在N79上测试成功,可流畅播放FLV视频。

5 结束语

该文总结了Symbian平台流媒体播放器的解决方案,先简单介绍了基于RealPlayer引擎实现RTSP流式播放3gp文件的方法,后详细介绍了如何通过为已有的本地播放器添加网络模块,实现HTTP流式播放FLV文件。通过在真机上测试,证明了上述方案的可行性。在上述方案的基础上,还可以根据需求扩展实现支持RTSP或MMS等流媒体协议的播放器。

参考文献:

[1] 廖勇.流媒体技术入门与提高[M].北京:国防工业出版社,2006:365-395.

[2] Harrison R,Shackman M.Symbian OS C++手机应用开发(第3卷)[M].北京:人民邮电出版社,2009:441-482.

上一篇王冕者诸暨人

下一篇萤火虫