适用于数字机顶盒的多媒体播放方法及系统技术方案

技术编号:19011794 阅读:22 留言:0更新日期:2018-09-22 11:09
本发明专利技术涉及多媒体播放领域,针对数字机顶盒内芯片平台因多媒体解析能力差异造成不同播放体验的问题,提出了一种适用于数字机顶盒的多媒体播放方法,步骤一、客户端根据用户选择的播放源确定播放地址并传送播放地址和用户选择的播放控制指令至服务端;步骤二、服务端根据所述播放地址获取播放文件,根据所述播放控制指令对所述播放文件进行协议解析获得ES流及媒体信息并将ES流打包为PES流,将PES流和媒体信息传送至客户端;步骤三、客户端读取PES流和媒体信息,根据媒体信息对PES流进行解码并进行音频和视频的时间同步控制后显示。本发明专利技术适用于数字机顶盒的多媒体播放。

【技术实现步骤摘要】
适用于数字机顶盒的多媒体播放方法及系统
本专利技术涉及多媒体播放领域,特别涉及数字机顶盒的多媒体播放领域。
技术介绍
多媒体播放器主要功能包括协议解析、音频解码、视频解码、字幕解码、音视频及字幕的显示,多媒体播放器的工作流程大致为:读取多媒体文件获得数据,对数据进行解析把音频、视频以及字幕数据分离,分离后的数据分别送往各自的解码器,解码器从数据中解析出基本码流数据后送往渲染器,渲染器根据基本码流数据的时间标签在正确的时间把音视频以及字幕在显示设备上显示出来。多媒体包括传统的MKV、AVI、FLV、WMV、TS等容器格式以及流媒体中的HLS、SmoothStreaming、MPEGDASH等协议格式,长期以来数字机顶盒上多媒体播放器的功能严重依耐于机顶盒内部芯片软件开发工具包提供的媒体播放接口实现上述解析解码操作,而各种数字机顶盒不同的芯片平台对多媒体的协议解析功能参差不齐致使现有的数字机顶盒不能支持各种格式多媒体的播放,如此极大的影响了用户的播放体验。
技术实现思路
本专利技术所要解决的技术问题是:克服数字机顶盒内芯片平台因多媒体解析能力差异造成不同播放体验的问题,提出一种适用于数字机顶盒的多媒体播放方法及系统。为解决上述技术问题,本专利技术的适用于数字机顶盒的多媒体播放方法,包括如下步骤:步骤一、客户端根据用户选择的播放源确定播放地址并传送播放地址和用户选择的播放控制指令至服务端;步骤二、服务端根据所述播放地址获取播放文件,根据所述播放控制指令对所述播放文件进行协议解析获得ES流(基本码流)及媒体信息并将ES流打包为PES流(基本码流包),将PES流和媒体信息传送至客户端;步骤三、客户端读取PES流和媒体信息,根据媒体信息对PES流进行解码并进行音频和视频的时间同步控制后显示。为解决客户端与服务端的通讯效率低的问题,作为上述适用于数字机顶盒的多媒体播放方法的改进,所述客户端和服务端之间还设置有共享内存用于客户端和服务端之间数据的传递,所述数据包括播放地址、播放控制指令、PES流和媒体信息,所述PES流包括视频PES流和音频PES流,所述媒体信息包括音频及视频的编码格式、音频及视频的PID(包标识符)值,所述播放文件的时长和解析状态信息。为了防止数据溢出而致使的显示花屏,作为上述适用于数字机顶盒的多媒体播放方法的改进,所述步骤二中,所述共享内存包括用于存放视频PES流的视频循环缓存、用于存放音频PES流的音频循环缓存和用于存放播放地址、播放控制指令和媒体信息的控制信息缓存,所述服务端轮询视频循环缓存的状态,若服务端写入到视频循环缓存中的视频PES流总量减去被客户端读取的视频PES流总量大于视频循环缓存空间值的五分之三,则服务端暂停向共享内存中写入视频PES流和音频PES流。为了解决起播后不流畅的问题,作为上述适用于数字机顶盒的多媒体播放方法的改进,所述步骤三中,所述客户端轮询所述共享内存的存储状态,若共享内存中视频PES流超过起播阈值后客户端开始读取PES流。为了解决音频视频不同步的问题,作为上述适用于数字机顶盒的多媒体播放方法的改进,所述步骤三中,时间同步控制包括如下步骤:获取视频PES流中视频第一帧的PTS(显示时间戳)与系统时间戳同步,每隔段时间获取PES流中视频帧的PTS与系统时间戳的差值即差值一并获取PES流中音频帧的PTS和系统时间戳的差值即差值二,若差值一与差值二的差值大于时间差阈值,则收取下一个音频帧获取该音频帧的PTS与系统时间戳的差值即差值三,若差值三小于差值二,则客户端将差值三对应的音频帧进行解码。为解决所述技术问题,本专利技术的适用于数字机顶盒的多媒体播放系统,包括服务端和客户端,所述客户端内设置有显示模块、读解析数据模块、解码器和音频视频同步控制模块,所述服务端设置有解析模块和写解析数据模块;所述显示模块用于获取用户选择的播放源确定播放地址并发送播放地址和用户选择的播放控制指令到服务端,并用于音频视频的输出显示;所述解析模块用于根据所述播放地址获取播放文件,根据所述播放控制指令对所述播放文件进行协议解析获得ES流及媒体信息并将ES流打包为PES流;所述写解析数据模块用于将所述PES流和所述媒体信息传送至客户端;所述读解析数据模块用于读取所述PES流和所述媒体信息;所述解码器用于根据媒体信息对所述PES流进行解码得到音频数据和视频数据;所述音频视频同步控制模块用于控制音频和视频的同步。为解决客户端与服务端的通讯效率低的问题,作为上述适用于数字机顶盒的多媒体播放系统的改进,所述客户端和服务端之间设置有共享内存模块用于客户端和服务端之间数据的传递,所述显示模块向共享内存模块中写入播放地址和播放控制指令,所述解析模块向共享内存模块中读出播放地址和播放控制指令,所述写解析数据模块向共享内存模块中写入PES流和媒体信息,所述读解析数据模块从共享内存模块中读出PES流和媒体信息,所述PES流包括视频PES流和音频PES流,所述媒体信息包括音频及视频的编码格式、音频及视频的PID值、播放文件的时长和解析状态信息。为了防止数据溢出而致使的显示花屏,作为上述适用于数字机顶盒的多媒体播放系统的改进,所述共享内存模块包括用于存放视频PES流的视频循环缓存单元、用于存放音频PES流的音频循环缓存单元和用于存放播放地址、播放控制指令和媒体信息的控制信息缓存单元,所述服务端轮询视频循环缓存单元的状态,若写解析数据模块写入到视频循环缓存单元中的视频PES流总量减去读解析数据模块读取的视频PES流总量大于视频循环缓存单元空间值的五分之三,则写解析数据模块暂停向共享内存模块中写入视频PES流和音频PES流。为了解决起播后不流畅的问题,作为上述适用于数字机顶盒的多媒体播放系统的改进,所述客户端轮询所述共享内存的存储状态,若共享内存中视频PES流的数量超过起播阈值后读解析数据模块开始读取PES流。为了解决音视频不同步的问题,作为上述适用于数字机顶盒的多媒体播放系统的改进,所述音频视频同步控制模获取视频PES流中视频第一帧的PTS与系统时间戳同步,每隔段时间获取PES流中视频帧的PTS与系统时间戳的差值即差值一并获取PES流中音频帧的PTS和系统时间戳的差值即差值二,若差值一与差值二的差值大于时间差阈值,则收取下一个音频帧获取该音频帧的PTS与系统时间戳的差值即差值三,若差值三小于差值二,则将差值三对应的音频帧写入解码器进行解码。本专利技术的有益效果是:1)利用开源软件VLC(多媒体播放器)或FFMPEG(快速的运动图像专家组格式播放器)完成服务端的协议解析功能,仅利用数字机顶盒内部的芯片平台提供的解码器解码独立的音视频PES流,多媒体播放器其余功能均采用软件自行实现,保证了解码效率的同时,取消了多媒体的协议解析对芯片平台的依赖,实现了在不同芯片平台上集成具有统一播放体验的多媒体播放器。2)采用共享内存实现了客户端与服务端之间进行异步通信交换数据,提高了通信效率。3)采用循环缓存存储PES数据,提高存储空间利用率,同时通过判断写入到视频循环缓存的视频PES流与从视频循环缓存读出的视频PES流的数据差来决定是否继续向共享内存中写入PES流,避免了数据溢出花屏的问题。4)当共享内存中PES流超过起播阈值后开始读取PES流使得起播后本文档来自技高网...
适用于数字机顶盒的多媒体播放方法及系统

【技术保护点】
1.适用于数字机顶盒的多媒体播放方法,其特征在于,包括如下步骤:步骤一、客户端根据用户选择的播放源确定播放地址并传送播放地址和用户选择的播放控制指令至服务端;步骤二、服务端根据所述播放地址获取播放文件,根据所述播放控制指令对所述播放文件进行协议解析获得ES流及媒体信息并将ES流打包为PES流,将PES流和媒体信息传送至客户端;步骤三、客户端读取PES流和媒体信息,根据媒体信息对PES流进行解码并进行音频和视频的时间同步控制后显示。

【技术特征摘要】
1.适用于数字机顶盒的多媒体播放方法,其特征在于,包括如下步骤:步骤一、客户端根据用户选择的播放源确定播放地址并传送播放地址和用户选择的播放控制指令至服务端;步骤二、服务端根据所述播放地址获取播放文件,根据所述播放控制指令对所述播放文件进行协议解析获得ES流及媒体信息并将ES流打包为PES流,将PES流和媒体信息传送至客户端;步骤三、客户端读取PES流和媒体信息,根据媒体信息对PES流进行解码并进行音频和视频的时间同步控制后显示。2.如权利要求1所述的适用于数字机顶盒的多媒体播放方法,其特征在于,所述客户端和服务端之间还设置有共享内存用于客户端和服务端之间数据的传递,所述数据包括播放地址、播放控制指令、PES流和媒体信息,所述PES流包括视频PES流和音频PES流,所述媒体信息包括音频及视频的编码格式、音频及视频的PID值,所述播放文件的时长和解析状态信息。3.如权利要求2所述的适用于数字机顶盒的多媒体播放方法,其特征在于,所述步骤二中,所述共享内存包括用于存放视频PES流的视频循环缓存、用于存放音频PES流的音频循环缓存和用于存放播放地址、播放控制指令和媒体信息的控制信息缓存,所述服务端轮询视频循环缓存的状态,若服务端写入到视频循环缓存中的视频PES流总量减去被客户端读取的视频PES流总量大于视频循环缓存空间值的五分之三,则服务端暂停向共享内存中写入视频PES流和音频PES流。4.如权利要求2或3所述的适用于数字机顶盒的多媒体播放方法,其特征在于,所述步骤三中,所述客户端轮询所述共享内存的存储状态,若共享内存中视频PES流的数量超过起播阈值后客户端开始读取PES流。5.如权利要求1所述的适用于数字机顶盒的多媒体播放方法,其特征在于,所述步骤三中,时间同步控制包括如下步骤:获取视频PES流中视频第一帧的PTS与系统时间戳同步,每隔段时间获取PES流中视频帧的PTS与系统时间戳的差值即差值一并获取PES流中音频帧的PTS和系统时间戳的差值即差值二,若差值一与差值二的差值大于时间差阈值,则收取下一个音频帧获取该音频帧的PTS与系统时间戳的差值即差值三,若差值三小于差值二,则客户端将差值三对应的音频帧进行解码。6.适用于数字机顶盒的多媒体播放系统,其特征在于,包括服务端和客户端,所述客户端内设置有显示模块、读解析数据模块、解码器和音频视频同步控制模块,所述服务端设置有解析模块和写解析数据模块;所述显示模块用于获取用户...

【专利技术属性】
技术研发人员:蔡晓丽
申请(专利权)人:四川长虹网络科技有限责任公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1