一种扩展流媒体播放设备解码能力的方法

文档序号:7688400阅读:241来源:国知局
专利名称:一种扩展流媒体播放设备解码能力的方法
技术领域
本发明涉及一种流媒体解码的方法,属于计算机多媒体技术领域,特别涉及一种利用网络实 现远程解码的技术。
背景技术
目前各种流媒体的编解码算法及格式正在快速发展,视频编码从早期的FLC、 FL发展到 MPEG1、 MPEG2、 MPEG4、 RealVideo、 Windows Media Video、 H. 264等;音频编码从PCM发展到 MP3、 0GG、 MPC、 mp3Pro、 RealAudio、 APE以及Windows Media Audio等;而流媒体的封装格式 也是五花八门,如AVI、 MPG、 RM、 RMVB、 0GM、 MKV、 WMV等等。可以预见将来还会出现更多的格 式。现在,很多嵌入式播放器可以解码和播放其中一些格式,这样用户便可以通过电视机来观赏 这些格式的影片。
但是由于流媒体格式的多样化及发展迅速,现有的各种流媒体解码设备支持的格式有限, 也无法支持新出现的编码算法,限制了其使用价值。 一些编解码算法由于算法的复杂性和运算量 巨大,在嵌入式流媒体播放设备上不能够支持,即使其硬件有能力能够支持这些算法的,在售出 之后想要进行新格式的解码软件升级又会面临解码授权费用、软件开发成本高周期长、升级过程 繁琐等一系列问题。
而反观个人计算机,是各种软件解码器出现最早、更新最快最方便的平台,因此现在常常采 用一种基于文件的转码技术,先在个人计算机上利用已经安装好的解码器对流媒体文件进行解码 之后再按照嵌入式流媒体播放器所支持的格式进行重编码。这种方法虽然可以解决上述问题,但 是为得到占用空间和编码质量都比较理想的目标文件,其重新编码过程需要做大量的运算,所以 耗时很长,通常需要原文件播放时间的一至两倍时间才能完成,不具备实时性,令人难以忍受。
在大多数拥有嵌入式流媒体播放器的用户的家庭,基本上也同时拥有一台个人计算机,而且 如果只是在电视机或投影仪上观看影片则完全不需要文件转码这种效率低下的方式。 一些用户将 计算机直接连接至电视机进行播放,但是计算机和电视机通常不会放在一起,每次搬移计算机重 新连线安装也是一个繁琐的过程。

发明内容
为了能使嵌入式流媒体播放器能够充分利用户家庭里的各种资源进行实时的解码播放操作, 本发明提出一种能够利用具有较强流媒体解码能力的设备来代替较弱解码能力的流媒体播放设 备进行解码的方法,以增强和扩展流媒体播放设备的解码能力。
本发明提出的扩展流媒体播放设备解码能力的方法,包括
源流媒体读取模块,运行在解码设备上,根据播放器指定的原始流媒体的位置信息,使用相
应的协议访问并读取原始流媒体数据并根据原始流媒体的格式将流媒体数据送入对应的解码器;
源解码器集合, 一组各种格式解码器和解复用器的集合,负责对各种原始媒体流进行解复用 和/或解码。运行在解码设备上,通常由第三方提供,用户自行安装;
编码器集合,由一种或多种格式的编码器组成,负责将解码器解码之后的流媒体重新编码成 适合在网络上实时传输,在播放设备上能够实时播放的码流。编码器运行在解码设备上,通常由 播放设备制造商随机提供,也可以使用通用编码器格式,但是必须能够支持实时转换;
网络收发模块,负责将编码器输出的码流通过网络送往播放设备,同时也负责利用网络进行 播放设备和解码设备的控制信息交换。在解码设备和播放设备上配对运行;
解码设备控制模块,运行在解码设备上,负责根据网络带宽,编码器和解码器的硬件资源消 耗等情况,为满足实时性和高质量来制定编码器的编码参数,同时也负责根据播放设备发出的各 种控制命令,如原始媒体流的获取,播放,暂停,停止,快进,快退等,来控制运行在解码设备 上的各个模块;
播放器,运行在播放设备上,接收从解码设备上通过设备间互联网络播发出来的实时码流, 并进行实时解码播放,同时将终端用户的播放控制操作包括原始媒体流的定位信息通过网络同步 送往解码设备;
解码设备,运行上述原始流媒体读取模块、解码器、编码器、网络收发模块和控制模块的设备; 播放设备,运行上述播放器和网络收发模块的设备。 与文件转码的方式相比,本发明的好处在于
1、 实时的解码编码过程对使用者基本透明,使用更方便。
2、 编码器可以充分利用网络带宽,输出码率较高的码流。由于码率限制较为宽松,编码器 就可以用运算量相对比较简单编码方式就可以保证输出质量,因而容易实现实时性。
本发明同样也具有和文件转码方式相似的优点当使用个人计算机作为解码设备时,播放设 备可以获得计算机平台的升级扩展方便的特性,可以非常容易得获得各种格式流媒体的解码器支 持。


图l是本发明的总体结构示意图,表明了各物理设备之间的逻辑关系。
图2是i发明的核心部分,替代播放设备进行解码的解码设备的结构及流程示意图。其中, 单向虚线箭头表示原始码流,双向实心箭头表示控制交互信息,粗箭头表示原始码流分离之后的 一路或多路码流。
具体实施例方式
下面结合附图对本发明作具体描述。
参考附图1, 一种扩展流媒体播放设备解码能力的方法,主要流程是
播放设备和解码设备通过网络收发模块先建立通讯连接,在本例中,使用以太网并利用 TCP/IP协议进行网络通讯;
1、 开始播放时,播放器检查原始流媒体格式,如发现本设备没有相对应的解码能力,则向解 码设备请求协助解码并指出原始流媒体所在位置。在本例中,原始流媒体以文件形式存在于播放 设备中,播放设备将原始流媒体文件以Windows文件共享协议对解码设备开放;
2、 解码设备设备通过Windows文件共享协议打开播放设备上共享的原始流媒体文件,并对其 进行解码并实时转换成播放设备支持的码流,然后送回播放设备;
3、 播放设备将接收到的码流进行实时解码播放。 参考附图2,解码设备的各模块的关系及流程
1、 控制模块通过网络收发模块接收到播放设备的解码请求,根据其给定的原始流媒体文件 的网络地址控制流媒体读取模块打开该文件。
在本例中,使用Windows文件共享协议,因此解码请求包中所含的文件地址描述信息格式为 W播放设备机器名\原始流媒体文件的共享路径\原始流媒体文件的文件名。
2、 流媒体读取模块使用Windows文件共享协议读取原始流媒体文件,向控制模块报告其编 码格式;
3、 控制模块通过网络收发模块接收到播放设备的解码请求,根据其报告的设备类型确定播 放设备本身的解码能力。
在本实施例中,播放设备支持xvid MPEG4视频流解码,MPEG Layer-3音频流解码通用解 码标准,字幕流使用私有格式解码。播放设备将其每种码流的解码能力按如下格式打包在解码请 求包中 [码流2类型,码流2格式] [码流3类型,码流3格式]
码流类型及格式在本例中采用微软DirectShow技术中定义的GUID统一编码。因此在本例中 该播放设备生成的请求包为 [STREAMTYPE_Audio, MEDIASUBTYPE_MP3, MEDIASUBTYPE—MPEG2—AUDIO] [STREAMTYPE—Text,私有GUID]
4、 控制模块根据原始流媒体文件的编码格式在编码器集中选取相应的解码器,根据播放设 备的解码能力在编码器集中选取相应的编码器,建立起解码编码关系、参数和流程。在本例中, 解码设备为个人计算机,运行Windows操作系统,因此该解码编码关系和流程使用微软的 DirectShow技术创建每个解码器和编码器均会报告或自行确定其支持的输入输出码流格式,以 GUID统一编码表示,控制模块根据每个编解码器的输入输出格式、源格式和目标格式建立数据传 输转换通道。
5、 解码器集通过流媒体读取模块从原始流媒体文件分离出一路或多路码流并解码输出。
6、 在步骤4被选中的编码器将已解码的各路码流分别编码成如步骤3所示的符合播放设备 的码流格式,加上播放时所需要的一些如时间戳等附加信息,并通过网络收发模块送至设备。7、 运行在播放设备上的播放器对接收到的各路码流解码并播放,该步骤关于解码播放流程 与具体播放设备的内部结构有关,不在本发明范围内所述。本实施例同样采用DirectShow技术 进行解码和播放的控制。
8、 用户对播放设备进行的播放、暂停、快进、快退、定位等控制操作,在网络收发模块接 收到之后送给控制模块。
9、 控制模块将控制操作分别变换成对源媒体读取模块,各解码器和各编码器的控制操作,以 保持整个解码播放系统的状态一致性。
权利要求
1、一种扩展流媒体播放设备解码能力的方法,包括原始流媒体读取模块,根据给定的原始流媒体的位置信息定位并获取原始流媒体的内容,根据流媒体的格式送入相应的解码器进行解码;解码器集,由一个或多个解码器组成,负责对各种格式的原始流媒体进行解复用(分离)和解码;编码器集,由一个或多个编码器组成,根据给定的目标比特率和播放器为播放流媒体所要求的格式进行再编码;网络收发模块,实时地将解码和编码模块的输出的码流及其附加信息传送至播放器,同时将播放器的控制信息送入控制模块;控制模块,根据播放器发出的解码请求,控制读取模块,解码器和编码器的输入输出和运行状态等;播放器,通过网络收发模块控制解码设备进行解码并播放解码设备输出的码流;解码设备,运行上述原始流媒体读取模块、解码器、编码器、网络收发模块和控制模块的设备;播放设备,运行上述播放器和网络收发模块的设备。
2、 根据权利要求l所述的一种扩展流媒体播放设备解码能力的方法,其特征在于原始流媒 体读取模块必须根据播放器给定的流媒体的位置信息以相应的协议来获取原始流媒体内容。读取 协议包括但不限于HTTP,FTP,MMS,RSTP,本地或远程文件访问以及其他私有通讯协议。
3、 根据权利要求1所述的一种扩展流媒体播放设备解码能力的方法,其特征在于整个流媒体从解码再编码,传输,接收并在客户端播放是一个实时的过程,运行于解码设备上的原始流 媒体解码器和运行于播放设备上的流媒体播放器是并行工作的。
4、 根据权利要求1所述的一种扩展流媒体播放设备解码能力的方法,其特征在于解码设 备和播放设备之间使用通用的、用于设备间互联的通讯技术进行控制和码流传输。这些互联的通 讯技术包括但不限于有线以太网,无线网络,通用串行总线USB等。
5、 根据权利要求l所述的一种扩展流媒体播放设备解码能力的方法,其特征在于对原始流 媒体进行解码的解码设备的工作状态受播放设备控制,包括但不限于播放,暂停,快进快退定位, 同步等。
6、 根据权利要求l所述的一种扩展流媒体播放设备解码能力的方法,其特征在于负责对原始码流进行解码的解码器至少有一个运行在解码设备上。
全文摘要
本发明涉及一种扩展流媒体播放设备解码能力的方法,属于计算机多媒体技术领域。该方法利用网络,使得播放设备能够利用网络上的解码设备进行解码,完成解码播放的工作。播放设备先检测原始码流是否属于本设备不能解码的码流,如果不能解码则将解码工作交给网络上的解码设备;解码设备将给定的原始码流实时进行解码并以网络能够传送,播放设备能够解码播放的格式送回播放设备;播放设备解码并播放解码设备传回的码流,完成整个解码播放的工作;此外,播放设备对解码设备的解码工作有控制权。本发明可以运用于多媒体播放器,IP机顶盒,带计算机网络接口的双向数字电视机顶盒,使这些设备能够播放多种格式的流媒体内容。
文档编号H04L29/06GK101389020SQ200810067059
公开日2009年3月18日 申请日期2008年5月6日 优先权日2008年5月6日
发明者丹 李 申请人:丹 李
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1