流媒体数据处理方法及装置、流媒体数据再现设备制造方法及图纸

技术编号:8765951 阅读:153 留言:0更新日期:2013-06-07 23:51
本发明专利技术提供了一种流媒体数据处理方法,在该方法中,根据流媒体数据中的流索引,将流媒体数据分离为音频流数据和视频流数据并进行解码;基于解码后的音频数据的播放时间以及流媒体再现设备的系统时间,确定视频帧的处理方式并按照所确定的处理方式进行显示处理。利用该方法,可以大大减少用户观看视频时的卡顿现象。

【技术实现步骤摘要】
流媒体数据处理方法及装置、流媒体数据再现设备
本专利技术涉及移动通信领域,更为具体地,涉及一种流媒体数据处理方法、流媒体数据处理装置以及具有该装置的流媒体数据再现设备。
技术介绍
目前,流媒体的应用越来越广泛。所谓流媒体是指采用流式传输的方式在互联网上播放的媒体格式。流媒体又叫流式媒体,它是指商家用一个视频传送服务器把节目当成数据包发出,传送到网络上。用户通过解压设备对这些数据进行解压后,节目就会像发送前那样显示出来。通常,流媒体数据包括音频数据和视频数据。所述音频数据和视频数据是两条独立的数据流。在进行流媒体数据播放时,需要将音频数据和视频数据分离开来分别进行解码并呈现。在进行解码和呈现时,音频数据和视频数据中的每帧都具有明确的解码时间帧、显示时间戳。然而,由于存在播放系统中的音频输出设备(例如,声卡)的播放回调(例如,声卡回调)不及时,音频帧和视频帧的解码时间消耗不均匀以及由I帧解码时间长等引起的视频显示卡顿现象,从而会导致音频数据和视频数据不同步,由此使得用户观看流媒体数据时的体验不佳。这里,所述播放回调(例如,声卡回调)指的是音频信号播放设备(例如,声卡)被设置为每隔一定时间,就回调一次,以指示已经播放完一小段音频数据。此时的时间戳也被称为播放回调时间戳。
技术实现思路
鉴于上述,本专利技术提供了一种流媒体数据处理方法,在该方法中,利用解码后的音频数据的播放回调时间戳来更新流媒体处理设备的系统时间,并且在进行音频数据和视频数据解码后,基于更新后的系统时间来确定视频帧的显示处理方式。利用该方法,可以避免在播放过程中由于音频时间和系统时间不对应但视频时间和系统时间同步而造成的音视频不同步,从而可以大大减少用户观看视频时的卡顿现象。此外,由于在解码后再进行音视频同步,从而可以避免在播放的视频出现非常严重的卡顿时,不会显示黑屏。根据本专利技术的一个方面,提供了一种流媒体数据处理方法,包括:根据流媒体数据中的流索引,将流媒体数据分离为音频流数据和视频流数据并分别缓存在音频流数据队列和视频流数据队列中;分别对缓存在所述音频流数据队列和视频流数据队列中的音频流数据和视频流数据进行解码;基于解码后的音频数据的播放回调时间戳以及流媒体再现设备的系统时间,确定音视频同步时间;以及对于解码后的视频流数据中的每一帧,基于该视频帧的时间戳与所确定出的音视频同步时间和视频刷屏时间之和的比较结果,按照与所述比较结果对应的预定处理方式对该视频帧进行显示处理。此外,在本专利技术的上述实施例的一个或多个示例中,在确定该视频帧是关键数据帧或者该视频帧的时间戳大于等于所确定出的音视频同步时间和该视频帧解码时间之和时,对该视频帧进行解码。此外,在确定该视频帧不是关键数据帧且该视频帧的时间戳小于所确定出的音视频同步时间和该视频帧解码时间之和时,丢弃该视频帧。此外,在本专利技术的上述实施例的一个或多个示例中,当所述解码后的音频数据的播放回调时间戳与流媒体再现设备的系统时间不一致时,所述音视频同步时间被确定为等于所述播放回调时间戳与所述系统时间之和的一半。此外,在本专利技术的上述实施例的一个或多个示例中,在该视频帧的时间戳大于所确定出的音视频同步时间和该视频刷屏时间之和时,等待该视频帧的显示;在该视频帧的时间戳等于所确定出的音视频同步时间和该视频刷屏时间之和时,显示该视频帧;或者在该视频帧的时间戳小于所确定出的音视频同步时间和该视频刷屏时间之和时,丢弃该视频帧。此外,在本专利技术的上述实施例的一个或多个示例中,在进行播放之前,判断音频播放模块数据缓存队列是否已经写满音频流数据,其中在音频播放模块数据缓存队列已经写满或者所有音频数据都完成解码时,进行音频流数据播放,否则,继续对音频流数据缓存队列中的音频流数据进行解码。此外,在本专利技术的上述实施例的一个或多个示例中,在显示所述视频帧时,采用指针重指向来直接对存储所述视频帧的内存执行引用操作。根据本专利技术的另一方面,提供了一种流媒体数据处理装置,包括:分离单元,用于根据流媒体数据中的流索引,将流媒体数据分离为音频流数据和视频流数据;缓存单元,用于将所述分离出的音频流数据和视频流数据分别缓存在音频流数据队列和视频流数据队列中;音频数据解码单元,用于对缓存在所述音频流数据队列中的音频流数据进行解码;视频数据解码单元,用于对缓存在所述视频流数据队列中的视频流数据进行解码;音视频同步时间确定单元,用于基于解码后的音频数据的播放回调时间戳以及流媒体再现设备的系统时间,确定音视频同步时间;视频帧处理单元,用于对于解码后的视频流数据中的每一帧,基于该视频帧的时间戳与所确定出的音视频同步时间和视频刷屏时间之和的比较结果,按照与所述比较结果对应的预定处理方式对该视频帧进行显示处理。此外,在本专利技术的上述实施例的一个或多个示例中,当所述解码后的音频数据的播放回调时间戳与流媒体再现设备的系统时间不一致时,所述更新单元将所述音视频同步时间确定为等于所述播放回调时间戳与所述系统时间之和的一半。此外,在本专利技术的上述实施例的一个或多个示例中,所述流媒体数据处理装置还可以包括:时间判断单元,用于在对视频帧进行解码之前,判断该视频帧是否是关键数据帧或者该视频帧的时间戳是否大于等于所确定出的音视频同步时间和该视频帧解码时间之和,其中,在该视频帧是关键数据帧或者该视频帧的时间戳大于等于所确定出的音视频同步时间和该视频帧解码时间之和时,所述视频数据解码单元对该视频帧进行解码,以及在判断该视频帧不是关键数据帧且该视频帧的时间戳小于所确定出的音视频同步时间和该视频帧解码时间之和时,所述视频帧处理单元丢弃该视频帧。此外,在本专利技术的上述实施例的一个或多个示例中,在该视频帧的时间戳大于所确定出的音视频同步时间和该视频刷屏时间之和时,所述视频帧处理单元等待该视频帧的显示;在该视频帧的时间戳等于所确定出的音视频同步时间和该视频刷屏时间之和时,所述视频帧处理单元显示该视频帧;或者在该视频帧的时间戳小于所确定出的音视频同步时间和该视频刷屏时间之和时,所述视频帧处理单元丢弃该视频帧。此外,在本专利技术的上述实施例的一个或多个示例中,所述流媒体数据处理装置还可以包括音频流数据播放判断单元,用于在进行音频流数据播放之前,判断判断音频播放模块数据缓存队列是否已经写满音频流数据,其中,在判断为音频播放模块数据缓存队列已经写满或者所有音频数据都完成解码时,所述音频播放模块进行音频流数据播放,否则,所述音频数据解码单元继续对音频流数据缓存队列中的音频流数据进行解码。此外,在本专利技术的上述实施例的一个或多个示例中,所述流媒体数据处理装置还可以包括内存引用单元,用于在显示所述视频帧时,采用指针重指向来直接对存储所述视频帧的内存执行引用操作。根据本专利技术的另一方面,提供了一种流媒体数据再现设备,包括如上所述的流媒体数据处理装置。为了实现上述以及相关目的,本专利技术的一个或多个方面包括后面将详细说明并在权利要求中特别指出的特征。下面的说明以及附图详细说明了本专利技术的某些示例性方面。然而,这些方面指示的仅仅是可使用本专利技术的原理的各种方式中的一些方式。此外,本专利技术旨在包括所有这些方面以及它们的等同物。附图说明根据下述参照附图进行的详细描述,本专利技术的上述和其他目的、特征和优点将变得更加显而易见本文档来自技高网...
流媒体数据处理方法及装置、流媒体数据再现设备

【技术保护点】
一种流媒体数据处理方法,包括:根据流媒体数据中的流索引,将流媒体数据分离为音频流数据和视频流数据并分别缓存在音频流数据队列和视频流数据队列中;分别对缓存在所述音频流数据队列和视频流数据队列中的音频流数据和视频流数据进行解码;基于解码后的音频数据的播放回调时间戳以及流媒体再现设备的系统时间,确定音视频同步时间;以及对于解码后的视频流数据中的每一帧,基于该视频帧的时间戳与所确定出的音视频同步时间和视频刷屏时间之和的比较结果,按照与所述比较结果对应的预定处理方式对该视频帧进行显示处理。

【技术特征摘要】
1.一种流媒体数据处理方法,包括:根据流媒体数据中的流索引,将流媒体数据分离为音频流数据和视频流数据并分别缓存在音频流数据队列和视频流数据队列中;分别对缓存在所述音频流数据队列和视频流数据队列中的音频流数据和视频流数据进行解码;基于解码后的音频数据的播放回调时间戳以及流媒体再现设备的系统时间,确定音视频同步时间;以及对于解码后的视频流数据中的每一帧,基于该视频帧的时间戳与所确定出的音视频同步时间和视频刷屏时间之和的比较结果,按照与所述比较结果对应的预定处理方式对该视频帧进行显示处理,所述预定处理方式包括等待该视频帧的显示、显示该视频帧和丢弃该视频帧。2.如权利要求1所述的流媒体数据处理方法,其中,在对所述视频流数据队列中的视频流数据进行解码的步骤包括:在确定该视频帧是关键数据帧或者该视频帧的时间戳大于或等于所确定出的音视频同步时间和该视频帧解码时间之和时,对该视频帧进行解码;以及在确定该视频帧不是关键数据帧且该视频帧的时间戳小于所确定的音视频同步时间和该视频帧解码时间之和时,丢弃该视频帧。3.如权利要求1或2所述的流媒体数据处理方法,其中,当所述解码后的音频数据的播放回调时间戳与流媒体再现设备的系统时间不一致时,所述音视频同步时间被确定为等于所述播放回调时间戳与所述系统时间之和的一半。4.如权利要求1或2所述的流媒体数据处理方法,其中,基于该视频帧的时间戳与所确定出的音视频同步时间和该视频刷屏时间之和的比较结果,按照与所述比较结果对应的预定处理方式对该视频帧进行显示处理包括:在该视频帧的时间戳大于所确定出的音视频同步时间和该视频刷屏时间之和时,等待该视频帧的显示;在该视频帧的时间戳等于所确定出的音视频同步时间和该视频刷屏时间之和时,显示该视频帧;或者在该视频帧的时间戳小于所确定出的音视频同步时间和该视频刷屏时间之和时,丢弃该视频帧。5.如权利要求1或2所述的流媒体数据处理方法,还包括:在进行音频数据解码之前,判断音频播放模块数据缓存队列是否已经写满音频流数据,在音频播放模块数据缓存队列已经写满或者所有音频数据都完成解码时,进行音频流数据播放,否则,继续对音频流数据缓存队列中的音频流数据进行解码。6.如权利要求4所述的流媒体数据处理方法,其中,在显示所述视频帧时,采用指针重指向来直接对存储所述视频帧的内存执行引用操作。7.一种流媒体数据处理装置,包括:分离单元,用于根据流媒体数据中的流索引,将流媒体数据分离为音频流数据和视频流数据;缓存单元,用于将所述分离出的音频流数据和视频流数据分别缓存在音频流数据队列和视频流数据队列中;音频数据解码单元,用于对缓存在所述音频流数...

【专利技术属性】
技术研发人员:梁捷吴娇王建忠
申请(专利权)人:优视科技有限公司广州市动景计算机科技有限公司
类型:发明
国别省市:

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

1