流媒体文件的解码处理方法与装置、播放设备制造方法及图纸

技术编号:8565567 阅读:165 留言:0更新日期:2013-04-11 08:01
本发明专利技术实施例公开了一种流媒体文件的解码处理方法与装置、播放设备,其中,方法包括:读取流媒体文件码流,并识别读取到的流媒体文件码流为ES或封装码流,所述流媒体文件码流包括音频文件码流和/或视频文件码流;响应于流媒体文件码流为ES,基于当前帧的相关信息而非解复用单元提供的码流信息,对当前帧数据进行解码,得到流媒体数据,所述流媒体数据包括音频数据或者视频数据。本发明专利技术实施例使在封装码流的播放设备中可以实现对ES的解码、播放,在同一个播放设备中实现了,采用同一个播放系统来播放封装码流与以ES形式形成的流媒体文件。

【技术实现步骤摘要】
流媒体文件的解码处理方法与装置、播放设备
本专利技术涉及多媒体技术,尤其是流媒体文件的解码处理方法与装置、播放设备。
技术介绍
现有技术中,通常通过如下方式制作流媒体文件:通过视频编码器对视频数据与字幕进行压缩编码,形成视频的连续码流,也称为视频基本码流(ElementaryStream,以下简称:ES),同时,通过音频编码器对音频数据进行压缩编码,形成音频的连续码流,也称为音频ES;通过打包器,分别根据需要将音、视频ES分成长度不等的数据段,并加上包头后按照一定的格式进行打包封装,形成音、视频打包基本码流(PacketElementaryStream,以下简称:PES),每个PES包头携带了流标识(StreamIdentifiers,以下简称:SID)、显示时间戳(presentationtimestamp,以下简称:PTS)与解码时间戳(DecodeTimeStamp,以下简称:DTS);通过复用器,将音频PES与视频PES复用在一起,按照预设规则进行排序并建立索引,再加上系统时钟后打包形成流媒体文件的封装码流,具体的封装格式包括RealNetworks公司开发的流媒体视频文件格式(RealMedia,以下简称:RM)、音频视频交错格式(AudioVideoInterleaved,以下简称:AVI)、Apple公司开发的一种音频和视频文件格式(QuickTime)影片格式(MOV)、动态图像专家组(MovingPicturesExpertsGroup,以下简称:MPG或MPEG)等。如图1所示,为现有技术流媒体文件的一个制作流程示意图。图2为现有技术流媒体文件的一个播放流程示意图。如图2所示,通过如下方式对通过图1所示流程制作的多媒体文件进行播放:通过文件读取单元获取流媒体文件的封装码流;通过解复用单元根据封装码流包头中的索引信息对封装码流进行解复用,分离出音频PES与视频PES,分别根据PES包头对音频PES与视频PES进行拆包、解封装,产生独立的音频ES与视频ES,并按照帧顺序分别送往音频解码器与视频解码器;音频解码器与视频解码器分别对音频ES与视频ES进行解码,还原成原始的音频数据与视频数据后输出,以便播放单元进行播放。在实现本专利技术的过程中,专利技术人发现,上述现有技术流媒体文件的制作与播放方法至少存在以下问题:对于只包含音频或视频的连续码流,通常不进行打包封装操作,而是以ES的形式形成流媒体文件后直接提供给接收端,例如,动态影像专家压缩标准音频层面3(MovingPictureExpertsGroupAudioLayer-3,以下简称:MP3)、音频数据传输流(AudioDataTransportStream,以下简称:ADTS)、高级音频编码(AdvancedAudioCoding,以下简称:AAC)等格式的流媒体文件。由于未经过打包封装,在接收端,便无法通过解复用单元提供的码流信息,包括封装码流包头与PES包头中的相关信息,对ES进行索引播放,因此,在封装码流的播放设备中无法实现对以ES形式形成的流媒体文件的播放。
技术实现思路
本专利技术实施例所要解决的一个技术问题是:提供一种流媒体文件的解码处理方法与装置、播放设备,以在封装码流的播放设备中,实现对以ES形式形成的流媒体文件播放。为解决上述技术问题,根据本专利技术实施例的一个方面,提供一种流媒体文件的解码处理方法,包括:读取流媒体文件码流,并识别读取到的流媒体文件码流为基本码流或封装码流,所述流媒体文件码流包括音频文件码流和/或视频文件码流;响应于流媒体文件码流为基本码流,基于当前帧的相关信息而非解复用单元提供的码流信息,对当前帧数据进行解码,得到流媒体数据,所述流媒体数据包括音频数据或者视频数据。根据本专利技术实施例的另一个方面,提供一种流媒体文件的解码处理装置,包括:文件读取单元,用于读取流媒体文件码流,并识别读取到流媒体文件码流为基本码流或封装码流,所述流媒体文件码流包括音频文件码流和/或视频文件码流;帧检测单元,用于响应于流媒体文件码流为基本码流,从基本码流中检测当前帧的相关信息,并基于当前帧的相关信息确定当前帧数据;帧解码单元,用于对帧检测单元确定的当前帧数据进行解码,得到流媒体数据,所述流媒体数据包括音频数据或者视频数据。根据本专利技术实施例的又一个方面,提供一种播放设备,包括外部存储单元与文件存储单元,还包括本专利技术上述实施例的流媒体文件的解码处理装置,以及播放单元;所述解码处理装置中的控制单元,还用于响应于帧解码单元发送的解码结果消息,向播放单元发送播放命令;所述播放单元,用于根据所述播放命令,对外部存储单元的缓冲区中的流媒体数据进行输出播放,或者对外部存储单元的缓冲区中的音频数据与视频数据进行输出播放。根据本专利技术实施例的再一个方面,提供另一种播放设备,包括外部存储单元与文件存储单元,还包括本专利技术上述实施例的流媒体文件的解码处理装置,以及播放单元;所述解码处理装置中的控制单元,还用于响应于帧解码单元发送的解码结果消息,将交互存储单元中的流媒体数据,或者交互存储单元中的音频数据与视频数据,搬移到外部存储单元的缓冲区中,并向播放单元发送播放命令;所述播放单元,用于根据所述播放命令,对所述缓冲区中的流媒体数据,或者所述缓冲区中的音频数据与视频数据,进行输出播放。基于本专利技术上述实施例提供的流媒体文件的解码处理方法与装置、播放设备,可以识别当前读取到的流媒体文件码流为基本码流或封装码流,若流媒体文件码流为基本码流,基于当前帧的相关信息代替解复用单元提供的码流信息,对当前帧数据进行解码,以得到用于输出播放的流媒体数据,从而使在封装码流的播放设备中可以实现对基本码流的解码、播放,与现有技术相比,在同一个播放设备中实现了,采用同一个播放系统来播放封装码流与以ES形式形成的流媒体文件。下面通过附图和实施例,对本专利技术的技术方案做进一步的详细描述。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为现有技术流媒体文件的一个制作流程示意图。图2为现有技术流媒体文件的一个播放流程示意图。图3为本专利技术流媒体文件的解码处理方法一个实施例的流程图。图4为本专利技术流媒体文件的解码处理方法另一个实施例的流程图。图5为MPEG音频ES的一个帧结构示意图。图6为本专利技术流媒体文件的解码处理方法又一个实施例的流程图。图7为本专利技术流媒体文件的解码处理方法再一个实施例的流程图。图8为本专利技术流媒体文件的解码处理装置一个实施例的结构示意图。图9为本专利技术流媒体文件的解码处理装置另一个实施例的结构示意图。图10为本专利技术流媒体文件的解码处理装置又一个实施例的结构示意图。图11为本专利技术流媒体文件的解码处理装置再一个实施例的结构示意图。图12为本专利技术流媒体文件的解码处理装置还一个实施例的结构示意图。图13为本专利技术播放设备一个实施例的结构示意图。图14为本专利技术播放设备另一个实施例的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述本文档来自技高网
...
流媒体文件的解码处理方法与装置、播放设备

【技术保护点】
一种流媒体文件的解码处理方法,其特征在于,包括:读取流媒体文件码流,并识别读取到的流媒体文件码流为基本码流或封装码流,所述流媒体文件码流包括音频文件码流和/或视频文件码流;响应于流媒体文件码流为基本码流,基于当前帧的相关信息而非解复用单元提供的码流信息,对当前帧数据进行解码,得到流媒体数据,所述流媒体数据包括音频数据或者视频数据。

【技术特征摘要】
1.一种流媒体文件的解码处理方法,其特征在于,包括:读取流媒体文件码流,并识别读取到的流媒体文件码流为基本码流或封装码流,所述流媒体文件码流包括音频文件码流和/或视频文件码流;响应于流媒体文件码流为基本码流,从基本码流中检测当前帧的相关信息,利用帧检测单元,基于当前帧与下一帧的特征信息对当前帧进行完整性检测;响应于当前帧通过完整性检测,基于当前帧的相关信息确定当前帧数据;其中,当前帧的相关信息包括当前帧的同步头起始位置、帧长与特征信息;对当前帧数据进行解码,得到流媒体数据,所述流媒体数据包括音频数据或者视频数据。2.根据权利要求1所述的方法,其特征在于,响应于流媒体文件码流为封装码流,对封装码流进行解复用,分离出音频打包基本码流PES与视频PES,分别对音频PES与视频PES进行拆包、解封装,得到音频帧与视频帧,并提取音频帧与视频帧的特征信息;分别根据音频帧与视频帧的特征信息对音频帧与视频帧进行解码,得到音频数据与视频数据。3.根据权利要求1所述的方法,其特征在于,从基本码流中检测当前帧的相关信息包括:利用帧检测单元,从基本码流的当前位置进行同步头检测,获取当前帧的同步头在比特流中的起始位置;由所述同步头起始位置确定当前帧的帧头并进行解析,获取当前帧的特征信息;基于当前帧的特征信息对当前帧进行合法性检测;响应于当前帧通过合法性检测,根据当前帧的特征信息确定当前帧的帧长。4.根据权利要求3所述的方法,其特征在于,对当前帧数据进行解码包括:利用帧解码单元,接收当前帧的特征信息;根据当前帧的特征信息中的循环冗余码校验CRC标识,对当前帧数据进行错误校验;对当前帧数据进行解码。5.根据权利要求3所述的方法,其特征在于,对当前帧数据进行解码包括:利用帧解码单元,接收当前帧的同步头起始位置信息;根据当前帧的同步头起始位置检测当前帧的特征信息;根据当前帧的特征信息中的CRC标识,对当前帧数据进行错误校验;对当前帧数据进行解码。6.根据权利要求4或5所述的方法,其特征在于,基于当前帧的相关信息确定当前帧数据之后,还包括:将帧检测单元确定的当前帧数据,与检测得到的当前帧的相关信息或相关信息中的同步头起始位置信息发送给帧解码单元。7.根据权利要求1至5任意一项所述的方法,其特征在于,读取流媒体文件码流,并识别读取到流媒体文件码流为基本码流或封装码流包括:利用文件读取单元,响应于控制单元的读取控制命令,对外部存储单元的输入空间进行监控,响应于外部存储单元的输入空间有空余,从文件存储单元读取流媒体文件码流并存储在外部存储单元的输入空间内,识别读取到流媒体文件码流为基本码流或封装码流,并向控制单元返回识别结果消息;利用控制单元,根据所述识别结果消息,响应于流媒体文件码流为基本码流,向帧检测单元发送检测命令;具体利用帧检测单元,根据所述检测命令从基本码流中检测当前帧的相关信息,并基于当前帧的相关信息确定当前帧数据。8.根据权利要求7所述的方法,其特征在于,利用控制单元,根据所述识别结果消息,响应于流媒体文件码流为封装码流,向解复用单元发送解复用命令;具体利用解复用单元,根据所述解复用命令对封装码流进行解复用,分离出音频PES与视频PES,分别对音频PES与视频PES进行拆包、解封装,得到音频帧与视频帧,并提取音频帧与视频帧的特征信息;将音频帧与视频帧及其特征信息发送给控制单元;利用控制单元,向帧解码单元发送解码命令、音频帧与视频帧,所述解码命令中包括音频帧与视频帧的特征信息;具体利用帧解码单元,根据解码命令对音频帧与视频帧进行解码,得到音频数据与视频数据。9.根据权利要求8所述的方法,其特征在于,还包括:利用帧解码单元,将解码得到的音频数据与视频数据存储在外部存储单元的缓冲区中,并向控制单元返回正确解码的解码结果消息;利用控制单元,响应于所述解码结果消息,向播放单元发送播放命令;利用播放单元,根据所述播放命令,对缓冲区中的音频数据与视频数据进行输出播放。10.根据权利要求7所述的方法,其特征在于,基于当前帧的相关信息确定当前帧数据之后,还包括:利用帧检测单元,将确定的当前帧数据,与检测得到的当前帧的相关信息或相关信息中的同步头起始位置信息发送给控制单元;利用控制单元,向帧解码单元发送解码命令与当前帧数据,所述解码命令包括当前帧的相关信息或相关信息中的同步头起始位置信息;具体利用帧解码单元,根据解码命令对当前帧数据进行解码。11.根据权利要求10所述的方法,其特征在于,还包括:利用帧解码单元,将解码得到的流媒体数据存储在外部存储单元的缓冲区中,并向控制单元返回正确解码的解码结果消息;利用控制单元,响应于解码结果消息,向播放单元发送播放命令;利用播放单元,根据所述播放命令,对缓冲区中的流媒体数据进行输出播放。12.根据权利要求7所述的方法,其特征在于,基于当前帧的相关信息确定当前帧数据之后,还包括:利用帧检测单元,将当前帧数据存储在交互存储单元中,并向控制单元发送检测完成消息,所述检测完成消息中包括当前帧的相关信息或相关信息中的同步头起始位置信息;利用控制单元,响应于检测完成消息,向帧解码单元发送解码命令,所述解码命令中包括当前帧的相关信息或相关信息中的同步头起始位置信息;具体利用帧解码单元,根据解码命令,对交互存储单元中的当前帧数据进行解码。13.根据权利要求12所述的方法,其特征在于,还包括:利用帧解码单元,将解码得到的流媒体数据存储在所述交互存储单元中,并向控制单元返回正确解码的解码结果消息;利用控制单元,响应于解码结果消息,将交互存储单元中的流媒体数据搬移到所述外部存储单元的缓冲区中,并向播放单元发送播放命令;利用播放单元,根据所述播放命令,对缓冲区中的流媒体数据进行输出播放。14.根据权利要求12所述的方法,其特征在于,利用控制单元,根据所述识别结果消息,响应于流媒体文件码流为封装码流,向解复用单元发送解复用命令;具体利用解复用单元,根据所述解复用命令对封装码流进行解复用,分离出音频PES与视频PES,分别对音频PES与视频PES进行拆包、解封装,得到音频帧与视频帧并存储在交互存储单元中,并提取音频帧与视频帧的特征信息;向控制单元发送解复用完成消息,所述解复用完成消息中包括音频帧与视频帧的特征信息;利用控制单元,向帧解码单元发送解码命令,所述解码命令中包括音频帧与视频帧的特征信息;具体利用帧解码单元,根据解码命令,对交互存储单元中的音频帧与视频帧进行解码,得到音频数据与视频数据。15.根据权利要求14所述的方法,其特征在于,还包括:利用帧解码单元,将音频数据与视频数据存储在所述交互存储单元中,并向控制单元返回正确解码的解码结果消息;利用控制单元,响应于所述解码结果消息,将交互存储单元中的音频数据与视频数据搬移到所述外部存储单元的缓冲区中,并向播放单元发送播放命令;利用播放单元,根据所述播放命令,对缓冲区中的音频数据与视频数据进行输出播放。16.一种流媒体文件的解码处理装置,其特征在于,包括:文件读取单元,用于读取流媒体文件码流,并识别读取到流媒体文件码流为基本码流或封装码流,所述流媒体文件码流包括音频文件码流和/或视频文件码流;帧检测单元,用于响应于流媒体文件码流为基本码流,从基本码流中检测当前帧的相关信息,基于当前帧与下一帧的特征信息对当前帧进行完整性检测;以及响应于当前帧通过完整性检测,基于当前帧的相关信息确定当前帧数据;其中,当前帧的相关信息包括当前帧的同步...

【专利技术属性】
技术研发人员:李昙张本好徐晶明吴晟林福辉
申请(专利权)人:展讯通信上海有限公司
类型:发明
国别省市:

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

1