一种音频流解码方法及装置制造方法及图纸

技术编号:10562592 阅读:99 留言:0更新日期:2014-10-22 15:31
本发明专利技术实施例公开了一种音频流解码方法及装置,一种音频流解码方法,包括:确定电子设备的音频流缓冲区当前缓存的音频帧的帧数;当该帧数大于第一数量阈值,且小于所述音频流缓冲区能缓存的音频帧的总帧数时,在经过预设时长后,对所述音频流缓冲区内的音频帧做丢弃处理;对所述音频流缓冲区中未被丢弃的音频帧进行解码。应用上述技术方案,本发明专利技术实施例采用在音频流缓冲区内的音频帧帧数大于第一数量阈值,且小于音频流缓冲区能缓存的音频帧的总帧数时,在经过预设时长后,对音频帧做丢弃处理的方法,减少了音频帧解码过程中音频帧的丢帧次数,降低爆破音出现的次数。

【技术实现步骤摘要】
一种音频流解码方法及装置
本专利技术涉及流媒体
,特别涉及一种音频流解码方法及装置。
技术介绍
为降低网络环境不稳定给视频文件的音频播放效果带来的影响,在对该视频文件的音频流进行解码之前,具有音频流解码功能的电子设备通常会预先使用一段队列结构的内存作为音频流缓冲区,比如图1中的AAC(AdvancedAudioCoding,高级音频编码)缓冲区;由于音频流解码耗用较少的CPU(CentralProcessingUnit,中央处理器)资源,该电子设备通常采用CPU对音频流进行软解码。网络长时间处于波动状态,会导致网络设备中视频文件的音频流大量持续涌入电子设备,由于该电子设备CPU的解码速率是固定的,该音频流缓冲区的缓存能力是有限的,在音频流解码过程中,过多音频流的持续涌入势必会导致丢帧现象的出现。现有技术中,网络设备中视频文件的音频流大量持续涌入电子设备,导致音频流缓冲区被迅速充满,此时,丢弃该音频流缓冲区队列尾或队列头的音频帧。然而,音频帧的丢帧次数与该视频文件所呈现的声音效果存在直接关系:音频帧的丢帧次数越多,该视频文件播放过程中爆破音出现的次数也就越多;由于现有丢帧方法在音本文档来自技高网...
一种音频流解码方法及装置

【技术保护点】
一种音频流解码方法,其特征在于,该方法包括:确定电子设备的音频流缓冲区当前缓存的音频帧的帧数;当该帧数大于第一数量阈值,且小于所述音频流缓冲区能缓存的音频帧的总帧数时,在经过预设时长后,对所述音频流缓冲区内的音频帧做丢弃处理;对所述音频流缓冲区中未被丢弃的音频帧进行解码。

【技术特征摘要】
1.一种音频流解码方法,其特征在于,该方法包括:确定电子设备的音频流缓冲区当前缓存的音频帧的帧数,其中,所述音频帧来源于视频文件,所述视频文件还包括视频帧;当该帧数大于第一数量阈值,且小于所述音频流缓冲区能缓存的音频帧的总帧数时,在经过预设时长后,对所述音频流缓冲区内的音频帧做丢弃处理,对所述音频流缓冲区内的音频帧做丢弃处理后,所述音频流缓冲区内音频帧的帧数等于所述第一数量阈值;或者对所述音频流缓冲区内的音频帧做丢弃处理后,所述音频流缓冲区内音频帧的帧数等于第二数量阈值,且所述第二数量阈值小于所述第一数量阈值;对所述音频流缓冲区中未被丢弃的音频帧进行解码;对所述视频文件中的视频帧进行解码,其中,所述对所述视频文件中的视频帧进行解码,包括:检测数字信号处理器DSP缓冲区是否处于不饱和状态,其中,所述DSP缓冲区为数字信号处理器的输入缓冲区,所述DSP缓冲区用于缓存视频帧数据;如果是,则向DSP缓冲区中插入空白帧,直至该DSP缓冲区达到饱和状态;对DSP缓冲区内的帧数据进行解码。2.根据权利要求1所述的方法,其特征在于,还包括:当该帧数达到所述总帧数时,立即对所述音频流缓冲区内的音频帧做丢弃处理。3.根据权利要求1或2所述的方法,其特征在于,确定电子设备的音频流缓冲区当前缓存的音频帧的帧数,包括:根据预设的统计周期,周期性地确定电子设备的音频流缓冲区当前缓存的音频帧的帧数。4.如权利要求3所述的方法,其特征在于,所述统计周期大于所述预设时长。5.根据权利要求1或2所述的方法,其特征在于,所述对所述音频流缓冲区内的音频帧做丢弃处理,包括:从所述音频流缓冲区的队列尾开始,对音频帧进行丢弃;或从所述音频流缓冲区的队列头开始,对音频帧进行丢弃。6.根据权利要求1所述的方法,其特征在于,在所述检测数字信号处理器DSP缓冲区是否处于不饱和状态之前,还包括:检测当前是否有视频流数据缓存到所述DSP缓冲区,如果否,则执行所述检测数字信号处理器DSP缓冲区是否处于不饱和状态,其中,所述视频流数据为:预先建立的视频数据缓冲区中的视频帧数据,所述预先建立的视频数据缓冲区用于缓存来源于网络服务器侧的视频帧数据。7.根据权利要求1所述的方法,其特征在于,所述检测数字信号处理器DSP缓冲区是否处于不饱和状态,包括:实时检测DSP缓冲区是否处于不饱和状态;或根据预设的检测周期,周期性地检测DSP缓冲区是否处于不饱和状态。8.根据权利要求1所述的方法,其特征在于,所述检测数字信号处理器DSP缓冲区是否处于不饱和状态,包括:检测DSP缓冲区处于不饱和状态的时长是否超过预设的阈值。9.根据权利要求1所述的方法,其特征在于,所述检测数字信号处理器DSP缓冲区是否处于不饱和状态,包括:检测DSP缓冲区中是否存在来自预先建立的视频数据缓冲区中的视频帧数据,且未被视频帧数据充满。10.根据权利要求9所述的方法,其特征在于,所述对DSP缓冲区内的帧数据进行解码,包括:对DSP缓冲区内的携带有网络标识的视频帧进行解码,所述携带有网络标识的视频帧为来源于预先建立的视频流缓冲区的帧数据。11.根据权利要求1所述的方法,其特征在于,所述视频文件的视频帧携带有时间戳,所述视频文件的音频帧携带有时间戳;所述方法还包括:根据所述视频帧的时间戳与所述音频帧的时间戳的对应关系,对视频帧的解码结果及音频帧的解码结果进行同步播放...

【专利技术属性】
技术研发人员:邝锐强
申请(专利权)人:广州金山网络科技有限公司
类型:发明
国别省市:广东;44

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

1