CN104394450B - 一种多媒体帧的处理方法及装置 - Google Patents
一种多媒体帧的处理方法及装置 Download PDFInfo
- Publication number
- CN104394450B CN104394450B CN201410649928.2A CN201410649928A CN104394450B CN 104394450 B CN104394450 B CN 104394450B CN 201410649928 A CN201410649928 A CN 201410649928A CN 104394450 B CN104394450 B CN 104394450B
- Authority
- CN
- China
- Prior art keywords
- difference
- multimedia frame
- time
- frame
- multimedia
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4343—Extraction or processing of packetized elementary streams [PES]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
- H04N21/4383—Accessing a communication channel
- H04N21/4384—Accessing a communication channel involving operations to reduce the access time, e.g. fast-tuning for reducing channel switching latency
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
Abstract
本发明公开了一种多媒体帧的处理方法及装置。该方法包括:判断缓存队列中的多媒体帧的时间差值是否发生突变,所述时间差值为多媒体帧的显示时间标签指示的时刻与多媒体帧的接收时刻的差值,所述缓存队列由按接收时刻排序的N个待处理的多媒体帧组成,N为整数;如果缓存队列中有时间差值发生突变的多媒体帧,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理,M个待处理的多媒体帧为所述缓存队列中按接收时刻升序排列的前M个多媒体帧;如果缓存队列中没有时间差值发生突变的多媒体帧,且M个待处理的多媒体帧的时间差值在预设门限内,对本处理周期内的M个待处理的多媒体帧进行同步播放处理。使得播放时实现了良好的瞬态和稳态响应。
Description
技术领域
本发明涉及多媒体通信领域,尤其涉及一种多媒体帧的处理方法及装置。
背景技术
数字电视系统中,发射端的编码器对音频模拟信号或者视频模拟信号编码得到音频帧或者视频帧,在接收端由解码器对音频帧或者视频帧解码。为了保证发射端的编码器和接收端的解码器正常工作,编码器和解码器的频率和相位要保持一致。
下面分别介绍编码器和解码器的工作方式。
在发射端,音频模拟信号或者视频模拟信号由编码器按照MPEG-2的标准,经过抽样、量化及压缩编码,形成基本码流ES(Elementary Stream,ES),该ES是不分段的连续码流。把该ES分成段,加上相应的头文件并打包,形成分组基本码流PES(Packet ElementaryStream,PES),在该PES的包头信息中包含有显示时间标签PTS(Presentation Time Stamp,PTS)和解码时间标签DTS(Decoding Time Stamp,DTS)。在传输时,将该PES包加上相应的头文件,再打包成188字节或者204字节的传输流TS(Transport Stream,TS),该TS的包头中包含节目时钟参考(Program Clock Reference,PCR),该PCR是根据编码器时基采样产生的。其中,一个PES即为一个音频帧或者一个视频帧。
在接收端,解码器根据TS数据包解码得到音频帧或者视频帧,并从该TS数据包中提取出PCR,并根据提取出的PCR恢复系统时钟(System Time Clock,STC),该STC为解码器时基,从而保证了编码器和解码器的频率和相位一致。解码器从音频帧或者视频帧中提取出音频帧对应的PTS或者视频帧对应的PTS。根据音频帧对应的PTS或者视频帧对应的PTS对音频帧或者视频帧进行播放处理。播放处理的具体实现方式可以是:比较根据STC确定的音频帧或者视频帧的接收时刻与PTS指示的时刻之间的时间差值,如果该时间差值在预设门限内,则进行同步播放处理;如果该时间差值超过预设门限,则进行非同步播放处理。同步播放处理时,需要对每个音频帧或者视频帧都计算跳帧或重复帧的帧数。跳帧或重复帧的帧数可以由根据STC确定的音频帧或者视频帧的接收时刻与PTS指示的时刻之间的时间差值,除以每帧播放的平均时间计算出来。如果计算出的跳帧或重复帧的帧数小于1,则不进行跳帧或重复帧处理;否则,按照计算出的帧数进行跳帧或重复帧处理。
现有技术中,上述预设门限通常设置得较大,因为如果设置较小的预设门限,会导致同步播放与非同步播放之间频繁切换。
但是,发明人发现,解码器接收到的码流可能不稳定,这种情况下,根据STC确定的音频帧或者视频帧的接收时刻与PTS指示的时刻之间的时间差值也不稳定,通常会在很短的时间内发生较大变化,在对这种不稳定的码流进行同步播放处理时,根据时间差值计算出的跳帧或重复帧的帧数大于1的几率较大,使得播放的画面不连续,直至上述时间差值大于预设门限时,才会进行非同步播放处理。
综上,码流存在PTS和STC之间差值发生突变的情况,即根据STC确定的音频帧或者视频帧的接收时刻与PTS指示的时刻之间的时间差值在瞬间增大,如果此时根据STC确定的音频帧或者视频帧的接收时刻与PTS指示的时刻之间的时间差值又恰好在预设门限内,这样通过同步播放处理计算出来的跳帧和重复帧的帧数就会瞬间增加,导致播放画面不连续。
发明内容
本发明实施例的目的是提供一种多媒体帧的处理方法及装置,用于解决码流存在PTS和STC之间的差值发生突变,但根据STC确定的音频帧或者视频帧的接收时刻与PTS指示的时刻之间的时间差值在预设门限内,仍然对突变的码流进行同步播放,导致播放画面不连续的问题。
本发明的目的是通过以下技术方案实现的:
一种多媒体帧的处理方法,包括:
判断缓存队列中的多媒体帧的时间差值是否发生突变,所述时间差值为多媒体帧的显示时间标签指示的时刻与多媒体帧的接收时刻的差值,所述缓存队列由按接收时刻排序的N个待处理的多媒体帧组成,N为整数;
如果所述缓存队列中有时间差值发生突变的多媒体帧,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理,所述M个待处理的多媒体帧为所述缓存队列中按接收时刻升序排列的前M个多媒体帧;
如果所述缓存队列中没有时间差值发生突变的多媒体帧,且所述M个待处理的多媒体帧的时间差值在预设门限内,对本处理周期内的M个待处理的多媒体帧进行同步播放处理。
较佳地,判断缓存队列中的多媒体帧的时间差值是否发生突变,包括:
判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,所述第一差值为多媒体帧的所述时间差值与前一接收时刻的多媒体帧的所述时间差值的差值;
如果没有第一差值大于第一门限值,选择所述缓存队列中的一个多媒体帧的所述时间差值作为基值,分别判断所述缓存队列中各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值;
所述缓存队列中有时间差值发生突变的多媒体帧是指,所述缓存队列中有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值或者有多媒体帧的时间差值与所述基值的第二差值大于第二门限值;所述缓存队列中没有时间差值发生突变的多媒体帧是指,所述缓存队列中没有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值,并且没有多媒体帧的所述时间差值与所述基值的第二差值大于第二门限值。
较佳地,判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,包括:
先判断所述缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断所述缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;和/或,
分别判断所述缓存队列中各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值,包括:先判断所述缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值;如果没有第二差值大于第二门限值,判断所述缓存队列中其余待处理的多媒体帧中,各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值。
较佳地,判断缓存队列中的多媒体帧的时间差值是否发生突变,包括:
判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,所述第一差值为多媒体帧的所述时间差值与前一接收时刻的多媒体帧的所述时间差值的差值;
所述缓存队列中有时间差值发生突变的多媒体帧是指,所述缓存队列中有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值;所述缓存队列中没有时间差值发生突变的多媒体帧是指,所述缓存队列中没有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值。
较佳地,判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,包括:
先判断所述缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,除所述缓存队列中接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断所述缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值。
较佳地,该方法还包括:
判断所述缓存队列中,所述M个待处理的多媒体帧的所述时间差值是否在预设门限内;
如果所述时间差值不在预设门限内,所述M个待处理的多媒体帧进行非同步播放处理。
一种多媒体帧的处理装置,包括:
检测突变单元,用于判断缓存队列中的多媒体帧的时间差值是否发生突变,所述时间差值为所述多媒体帧的显示时间标签指示的时刻与所述多媒体帧的接收时刻的差值,所述缓存队列由按接收时刻排序的N个待处理的多媒体帧组成,N为整数;
判断同步单元,用于如果所述缓存队列中有时间差值发生突变的多媒体帧,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理,所述M个待处理的多媒体帧为所述缓存队列中按接收时刻升序排列的前M个多媒体帧;如果所述缓存队列中没有时间差值发生突变的多媒体帧,且时间差值在预设门限内,对本处理周期内的M个待处理的多媒体帧进行同步播放处理。
较佳地,所述检测突变单元具体用于:
判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,所述第一差值为多媒体帧的所述时间差值与前一接收时刻的多媒体帧的所述时间差值的差值;
如果没有第一差值大于第一门限值,选择所述缓存队列中的一个多媒体帧的所述时间差值作为基值,分别判断所述缓存队列中各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值;
所述缓存队列中有时间差值发生突变的多媒体帧是指,所述缓存队列中有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值或者有多媒体帧与所述基值的第二差值大于第二门限值;所述缓存队列中没有时间差值发生突变的多媒体帧是指,所述缓存队列中没有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值,并且没有多媒体帧的所述时间差值与所述基值的第二差值大于第二门限值。
较佳地,判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值时,所述检测突变单元具体用于:先判断所述缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断所述缓存队列中其余待处理的多媒体帧中,除所述缓存队列中接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;和/或,
分别判断所述缓存队列中各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值时,所述检测突变单元具体用于:先判断所述缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值;如果没有第二差值大于第二门限值,判断所述缓存队列中其余待处理的多媒体帧中,各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值。
较佳地,该装置还包括:
判断时间差值单元,用于判断所述缓存队列中,所述M个待处理的多媒体帧的所述时间差值是否在预设门限内;
判断同步单元还用于:如果所述时间差值不在预设门限内,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理。
本发明实施例的有益效果如下:
本发明实施例,判断缓存队列中,是否存在多媒体帧的显示时间标签指示的时刻与接收时刻的时间差值发生突变,只有缓存队列中所有待处理的多媒体帧的上述时间差值均没有发生突变,才对本处理周期内的待处理的多媒体帧进行同步播放处理,尤其是针对存在多媒体帧的显示时间标签指示的时刻与接收时刻的时间差值瞬间增大,瞬间过后就恢复正常的码流,本发明实施例保证了在码流稳态时进行同步播放,在突变时进行非同步播放处理,不会出现播放画面不连续的现象;如果缓存队列中有多媒体帧的上述时间差值发生突变,则对本处理周期内的待处理的多媒体帧进行非同步播放处理,由于及时进行非同步播放处理,达到了良好的瞬态响应,避免了上述时间差值发生突变后,仍对多媒体帧进行同步播放处理,从而使得多媒体帧播放时不会出现播放画面不连续。另外,本发明实施例提供的方法,是周期性进行的。由于每个处理周期都按照本处理周期的判断结果执行播放操作,避免了长期同步播放导致可能出现播放画面不连续等问题,也避免了长期非同步播放导致音频和视频对不上的问题。
进一步的,判断该缓存队列中除接收时刻最早的多媒体帧之外,各个媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,如果没有第一差值大于第一门限值,再判断该缓存队列中各个多媒体帧的上述时间差值与基值的第二差值是否大于第二门限值。提高了没有发生突变的判断标准,既没有第一差值大于第一门限值也没有第二差值大于第二门限值时,才认为缓存队列中没有多媒体帧的上述时间差值发生突变,进一步降低了播放时出现画面不连续的风险。
进一步的,在判断待处理的多媒体帧的上述时间差值是否发生突变时,首先判断该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧的上述时间差值是否发生突变,如果该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧的上述时间差值没有发生突变,才继续判断缓存队列中其余待处理的多媒体帧;如果该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧的上述时间差值发生突变,就不再继续判断缓存队列中其余的多媒体帧,从而不需要将缓存队列中所有的多媒体帧都进行判断,进而提高了处理效率。
附图说明
图1为本发明实施例提供的一种多媒体帧的处理方法的流程图;
图2为本发明实施例提供的以音视频处理为例的音频帧或者视频帧的处理方法流程图;
图3为本发明实施例提供的第一种多媒体帧的处理装置的示意图;
图4为本发明实施例提供的第二种多媒体帧的处理装置的示意图。
具体实施方式
下面结合附图和实施例对本发明提供的一种多媒体帧的处理方法及装置进行更详细地说明。
本发明实施例提供一种多媒体帧的处理方法,如图1所示,具体处理流程如下:
步骤110:判断缓存队列中的多媒体帧的时间差值是否发生突变,该时间差值为多媒体帧的PTS指示的时刻与多媒体帧的接收时刻的差值,该缓存队列由按接收时刻排序的N个待处理的多媒体帧组成,N为整数。
其中,按照多媒体类型分类,多媒体帧可以为音频帧,也可以为视频帧等等。
缓存队列中的待处理的多媒体帧的数量根据实际处理需要进行设定。
步骤120:如果该缓存队列中有时间差值发生突变的多媒体帧,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理,该M个待处理的多媒体帧为该缓存队列中按接收时刻升序排列的前M个多媒体帧。
非同步播放是指不同类型的多媒体帧不同步播放。以音频帧和视频帧为例,非同步播放是指音视频不同步播放。
接收时刻升序是指,按照多媒体帧的接收时刻排序,且接收时刻最早的多媒体帧在最前,接收时刻最晚的多媒体帧在最后。例如,有3个多媒体帧,3个多媒体帧的接收时刻分别是00:00:01,00:00:02,00:00:03。那么,按接收时刻升序排列为:接收时刻为00:00:01的多媒体帧,接收时刻为00:00:02的多媒体帧,接收时刻为00:00:03的多媒体帧。
该步骤中,本处理周期内,待处理的多媒体帧的数量M是根据实际处理需要设定的,且M的取值范围为1<=M<=N,M为整数。
步骤130:如果该缓存队列中没有时间差值发生突变的多媒体帧,且该M个待处理的多媒体帧的时间差值在预设门限内,对本处理周期内的M个待处理的多媒体帧进行同步播放处理。
同步播放是指不同类型的多媒体帧同步播放。以音频帧和视频帧为例,同步播放是指音视频同步播放。
上述处理过程是周期性进行的,其处理周期的时长可以用多媒体帧的数量表示。
本发明实施例,判断缓存队列中,是否存在多媒体帧的显示时间标签指示的时刻与接收时刻的时间差值发生突变。只有缓存队列中所有待处理的多媒体帧的上述时间差值均没有发生突变,才对本处理周期内的待处理的多媒体帧进行同步播放处理,尤其是针对存在多媒体帧的显示时间标签指示的时刻与接收时刻的时间差值瞬间增大,瞬间过后就恢复正常的码流,本发明实施例保证了稳态时进行同步播放,在突变时进行非同步播放处理,不会出现播放画面不连续的现象;如果缓存队列中有多媒体帧的上述时间差值发生突变时,则对本处理周期内的待处理的多媒体帧进行非同步播放处理,由于及时进行非同步播放处理,达到了良好的瞬态响应,避免了上述时间差值发生突变后,仍对多媒体帧进行同步播放处理,从而使得多媒体帧播放时不会出现播放画面不连续。另外,本发明实施例提供的方法,是周期性进行的。由于每个处理周期都按照本处理周期的判断结果执行播放操作,避免了长期同步播放导致可能出现播放画面不连续等问题,也避免了长期非同步播放导致音视音频和视频对不上的问题。
上述步骤110中,判断缓存队列中的多媒体帧的时间差值是否发生突变的方法有多种,本发明实施例列举了其中几种。
本发明实施例提供的第一种检测突变的方法如下:
判断该缓存队列中除接收时刻最早的多媒体帧之外,各媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,该第一差值为多媒体帧的上述时间差值与前一接收时刻的多媒体帧的上述时间差值的差值。
如果没有第一差值大于第一门限值,选择该缓存队列中的一个多媒体帧的上述时间差值作为基值,分别判断该缓存队列中各个多媒体帧的上述时间差值与该基值的第二差值是否大于第二门限值。
该缓存队列中有时间差值发生突变的多媒体帧是指,该缓存队列中有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值或者有多媒体帧的上述时间差值与该基值的第二差值大于第二门限值;该缓存队列中没有时间差值发生突变的多媒体帧是指,该缓存队列中没有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值,并且没有多媒体帧的上述时间差值与该基值的第二差值大于第二门限值。
其中,一个多媒体帧的前一接收时刻的多媒体帧是指,与这一个多媒体帧的接收时刻相邻且比该多媒体帧的接收时刻早的多媒体帧。
选择该缓存队列中的一个多媒体帧的上述时间差值作为基值时,可以任意选择该缓存队列中的一个多媒体帧的上述时间差值作为基值,也可以将该缓存队列中接收时刻最晚的多媒体帧的上述时间差值作为基值。
本发明实施例,判断该缓存队列中除接收时刻最早的多媒体帧之外,各媒体帧与第前一接收时刻的多媒体帧的第一差值是否大于第一门限值,如果没有第一差值大于第一门限值,再判断该缓存队列中各个多媒体帧的上述时间差值与基值的第二差值是否大于第二门限值。提高了没有发生突变的判断标准,既没有第一差值大于第一门限值也没有第二差值大于第二门限值时,才认为缓存队列中没有多媒体帧的上述时间差值发生突变,进一步降低了播放时出现画面不连续的风险。
本发明实施中,按照上述第一种检测突变的方法,可以一旦判断出上述时间差值发生突变,就对本处理周期内的待处理的多媒体帧进行非同步处理,进一步实现良好的瞬态响应,且不对缓存队列中其余待处理的多媒体帧进行判断,提高了处理效率。也可以全部判断完缓存队列中待处理的多媒体帧的上述时间差值是否发生突变之后,如果判断结果显示缓存队列中有多媒体帧的上述时间差值发生突变,对本处理周期内的待处理的多媒体帧进行非同步处理。
上述第一种检测突变的方法中,第一门限值和第二门限值是根据统计得到的经验值,第一门限值和第二门限值可以相等,也可以不相等。
第一种检测突变的具体实现方式又有多种。
较佳地,判断该缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值时,先判断该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断该缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值。和/或,
分别判断该缓存队列中各个多媒体帧的上述时间差值与上述基值的第二差值是否大于第二门限值时,先判断该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧的上述时间差值与上述基值的第二差值是否大于第二门限值;如果没有第二差值大于第二门限值,判断该缓存队列中其余待处理的多媒体帧中,各个多媒体帧的上述时间差值与上述基值的第二差值是否大于第二门限值。
本发明实施例,在判断待处理的多媒体帧的上述时间差值是否发生突变时,首先判断该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧的上述时间差值是否发生突变,如果该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧的上述时间差值没有发生突变,才继续判断缓存队列中其余待处理的多媒体帧;如果该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧的上述时间差值发生突变,就不再继续判断缓存队列中其余的多媒体帧,从而不需要将缓存队列中所有的多媒体帧都进行判断,进而提高了处理效率。
较佳地,上述第一种检测突变的具体实现方式中,判断该缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值时,先判断该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值时,可以按照接收时刻降序依次判断缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断该缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值时,可以按照接收时刻降序依次判断该缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值。和/或,
先判断该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧的上述时间差值与上述基值的第二差值是否大于第二门限值时,可以按照降序依次判断该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧的上述时间差值与上述基值的第二差值是否大于第二门限值;判断该缓存队列中其余待处理的多媒体帧中,各个多媒体帧的上述时间差值与上述基值的第二差值是否大于第二门限值时,可以按照降序依次判断该缓存队列中其余待处理的多媒体帧中,各个多媒体帧的上述时间差值与上述基值的第二差值是否大于第二门限值。
上述以先判断按接收时刻升序排列的后M个多媒体帧的上述时间差值为例进行说明。应当指出的是,在分批判断时,先判断的多媒体帧的数量可以小于M。
较佳地,上述第一种检测突变的具体实现方式中,M的取值可以为1,即每个处理周期内处理1个多媒体帧。对每个多媒体帧都按照以上各个实施例的方案进行处理,使得能够更加灵敏的检测到上述时间差值的突变。
本发明实施例提供的第二种检测突变的方法如下:
判断该缓存队列除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,该第一差值为多媒体帧的上述时间差值与前一接收时刻的多媒体帧的上述时间差值的差值。
该缓存队列中有时间差值发生突变的多媒体帧是指,该缓存队列中有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值;该缓存队列中没有时间差值发生突变的多媒体帧是指,该缓存队列中没有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值。
按照上述第二种检测突变的方法,可以一旦判断出上述时间差值发生突变,就对本处理周期内的待处理的多媒体帧进行非同步处理,进一步实现良好的瞬态响应,且不对缓存队列中其余待处理的多媒体帧进行判断,提高了处理效率。也可以全部判断完缓存队列中待处理的多媒体帧的上述时间差值是否发生突变之后,如果判断结果显示缓存队列中有多媒体帧的上述时间差值发生突变,对本处理周期内的待处理的多媒体帧进行非同步处理。
较佳地,第二种检测突变的具体实现方式又有多种。
较佳地,判断该缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值时,先判断缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断该缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值。
较佳地,上述第二种检测突变的具体实现方式中,先判断该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值时,可以按照接收时刻降序依次判断缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断该缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值时,可以按照接收时刻降序依次判断缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值。
上述以先判断按接收时刻升序排列的后M个多媒体帧的上述时间差值为例进行说明。应当指出的是,在分批判断时,先判断的多媒体帧的数量可以小于M。
较佳地,上述第二种检测突变的具体实现方式中,M的取值可以为1,即每个处理周期内处理1个多媒体帧。对每个多媒体帧都按照以上各个实施例的方案进行处理,使得能够更加灵敏的检测到上述时间差值的突变。
上述各个实施例中,除了判断待处理的多媒体帧的上述时间差值是否发生突变,还需要判断上述时间差值是否在预设门限内,这两种判断没有时序要求。判断上述时间差值是否在预设门限内的方法如下:
判断该缓存队列中,该M个待处理的多媒体帧的上述时间差值是否在预设门限内;如果上述时间差值不在预设门限内,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理。
以音视频处理的具体应用场景为例,对音频帧或者视频帧的处理方法如图2所示,该应用场景中,多媒体帧为音频帧或者视频帧,缓存队列中多媒体帧的数量为20,接收时刻最早的多媒体帧为缓存队列的第1个多媒体帧,接收时刻最晚的多媒体帧为缓存队列的最后一个多媒体帧,1个处理周期内待处理的多媒体帧的数量是1。该处理方法的具体处理步骤如下:
步骤210:判断是否有换台操作,如果有换台操作,执行步骤220,如果没有换台操作,执行步骤230。
换台操作的具体实现方式可以参照现有技术中的方案。
步骤220:初始化缓存队列,完成初始化之后,按照接收时刻的升序,依次往缓存队列中读取多媒体帧。
因为各个节目之间,多媒体帧对应的PTS指示的时刻与接收时刻的时间差值是不相关的,并且为了防止各自的干扰,需要在每次节目换台时,初始化缓存队列。初始化缓存队列的方法有多种,可选的,将缓存队列中的所有多媒体帧都存储为当前多媒体帧,将缓存队列中第2个至第20个多媒体帧分别与前一个多媒体帧的第一差值设置为零,选择当前多媒体帧的上述时间差值作为基值,将缓存队列中所有的多媒体帧的上述时间差值与上述基值的第二差值设置为零。
当前多媒体帧是指,本处理周期内待处理的多媒体帧。当前多媒体帧是接收时刻最晚的多媒体帧,即第20个多媒体帧。
步骤230:计算缓存队列中第2个至第20个多媒体帧分别与前一个多媒体帧的第一差值,存储该第一差值。
步骤240:判断当前多媒体帧与前一个多媒体帧的第一差值是否大于第一门限值,如果不是,则执行步骤250,如果是,则执行步骤260。
在本发明实施例中,第一门限值的取值为100。
步骤250:判断第2个至第19个多媒体帧的上述时间差值分别与前一个多媒体帧的第一差值是否大于第一门限值,如果有第一差值大于第一门限值,则执行步骤260,如果没有第一差值大于第一门限值,则执行步骤280。
步骤260:对第1个多媒体帧进行音视频非同步播放处理,执行步骤270。
步骤270:将第1个多媒体帧从缓存队列中删除,读取一个新的待处理的多媒体帧置于缓存队列的末尾。
步骤280:根据缓存队列中第1个多媒体帧中的上述时间差值更新基值,得到一个新基值,得到的新基值即为缓存队列中最后一个多媒体帧的上述时间差值。
步骤290:根据得到的新基值计算缓存队列中各个多媒体帧的上述时间差值与该新基值的第二差值,存储该第二差值。
步骤2100:判断当前多媒体帧的上述时间差值与该新基值的第二差值是否大于第二门限值,如果是,则执行步骤260,如果不是,则执行步骤2110。
本发明实施例中,第二门限值取100。
步骤2110:判断第1个至第19个多媒体帧的上述时间差值与该新基值的第二差值是否大于第二门限,如果有第二值大于第二门限值,则执行步骤260,如果没有第二差值大于第二门限值,则执行步骤2120。
该步骤中,可以一旦判断有第二差值大于第二门限就执行步骤260,也可以判断完缓存队列中的各个多媒体帧的上述时间差值与该新基值的第二差值是否大于第二门限值之后,如果有第二差值大于第二门限值,就执行步骤260,如果没有第一差值大于第一门限值,就执行步骤2120。
步骤2120:判断当前多媒体帧的上述时间差值是否在预设门限内,如果是,则执行步骤2130,如果不是,则执行步骤260。
步骤2130:对第1个多媒体帧进行音视频同步播放处理,执行步骤270。
处理完本周期内待处理的多媒体帧之后,进入下一个处理周期。
整个处理过程执行的时机,可以是解码一帧多媒体帧数据时进行的,每解完一帧数据都会执行该处理过程。
基于同样的发明构思,本发明实施例提供一种多媒体帧的处理装置,如图3所示,该装置包括检测突变单元301和判断同步单元302。
检测突变单元301,用于判断缓存队列中的多媒体帧的时间差值是否发生突变,该时间差值为该多媒体帧的显示时间标签指示的时刻与该多媒体帧的接收时刻的差值,该缓存队列由按接收时刻排序的N个待处理的多媒体帧组成,N为整数。
判断同步单元302,用于如果该缓存队列中有时间差值发生突变的多媒体帧,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理,该M个待处理的多媒体帧为该缓存队列中按接收时刻升序排列的前M个多媒体帧;如果该缓存队列中没有时间差值发生突变的多媒体帧,且时间差值在预设门限内,对本处理周期内的M个待处理的多媒体帧进行同步播放处理。
较佳地,该检测突变单元301具体用于:
判断该缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与第前一接收时刻的多媒体帧的第一差值是否大于第一门限值,该第一差值为多媒体帧的上述时间差值与前一接收时刻的多媒体帧的上述时间差值的差值。
如果没有第一差值大于第一门限值,选择该缓存队列中的一个多媒体帧的上述时间差值作为基值,分别判断该缓存队列中各个多媒体帧的上述时间差值与该基值的第二差值是否大于第二门限值。
该缓存队列中有时间差值发生突变的多媒体帧是指,该缓存队列中有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值或者有多媒体帧的上述时间差值与该基值的第二差值大于第二门限值;该缓存队列中没有时间差值发生突变的多媒体帧是指,该缓存队列中没有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值,并且没有多媒体帧的上述时间差值与该基值的第二差值大于第二门限值。
较佳地,判断该缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,该检测突变单元301具体用于:先判断该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断该缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值。和/或,
分别判断该缓存队列中各个多媒体帧的该时间差值与该基值的第二差值是否大于第二门限值,该检测突变单元301具体用于:先判断该缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧的上述时间差值与上述基值的第二差值是否大于第二门限值;如果没有第二差值大于第二门限值,判断该缓存队列中其余待处理的多媒体帧中,各个多媒体帧的上述时间差值与上述基值的第二差值是否大于第二门限值。
较佳地,该装置还包括判断时间差值单元303,如图4所示。
判断时间差值单元303,用于判断该缓存队列中,该M个待处理的多媒体帧的上述时间差值是否在预设门限内。
判断同步单元302还用于:如果上述时间差值不在预设门限内,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种多媒体帧的处理方法,其特征在于,包括:
判断缓存队列中的多媒体帧的时间差值是否发生突变,所述时间差值为多媒体帧的显示时间标签指示的时刻与多媒体帧的接收时刻的差值,所述缓存队列由按接收时刻排序的N个待处理的多媒体帧组成,N为整数;
如果所述缓存队列中有时间差值发生突变的多媒体帧,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理,所述M个待处理的多媒体帧为所述缓存队列中按接收时刻升序排列的前M个多媒体帧;
如果所述缓存队列中没有时间差值发生突变的多媒体帧,且所述M个待处理的多媒体帧的时间差值在预设门限内,对本处理周期内的M个待处理的多媒体帧进行同步播放处理。
2.根据权利要求1所述的方法,其特征在于,判断缓存队列中的多媒体帧的时间差值是否发生突变,包括:
判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,所述第一差值为多媒体帧的所述时间差值与前一接收时刻的多媒体帧的所述时间差值的差值;
如果没有第一差值大于第一门限值,选择所述缓存队列中的一个多媒体帧的所述时间差值作为基值,分别判断所述缓存队列中各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值;
所述缓存队列中有时间差值发生突变的多媒体帧是指,所述缓存队列中有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值或者有多媒体帧的时间差值与所述基值的第二差值大于第二门限值;所述缓存队列中没有时间差值发生突变的多媒体帧是指,所述缓存队列中没有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值,并且没有多媒体帧的所述时间差值与所述基值的第二差值大于第二门限值。
3.根据权利要求2所述的方法,其特征在于,判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,包括:
先判断所述缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断所述缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;和/或,
分别判断所述缓存队列中各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值,包括:先判断所述缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值;如果没有第二差值大于第二门限值,判断所述缓存队列中其余待处理的多媒体帧中,各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值。
4.根据权利要求1所述的方法,其特征在于,判断缓存队列中的多媒体帧的时间差值是否发生突变,包括:
判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,所述第一差值为多媒体帧的所述时间差值与前一接收时刻的多媒体帧的所述时间差值的差值;
所述缓存队列中有时间差值发生突变的多媒体帧是指,所述缓存队列中有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值;所述缓存队列中没有时间差值发生突变的多媒体帧是指,所述缓存队列中没有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值。
5.根据权利要求4所述的方法,其特征在于,判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,包括:
先判断所述缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,除所述缓存队列中接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断所述缓存队列中其余待处理的多媒体帧中,除接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值。
6.根据权利要求1~5任一项所述的方法,其特征在于,该方法还包括:
判断所述缓存队列中,所述M个待处理的多媒体帧的所述时间差值是否在预设门限内;
如果所述时间差值不在预设门限内,所述M个待处理的多媒体帧进行非同步播放处理。
7.一种多媒体帧的处理装置,其特征在于,包括:
检测突变单元,用于判断缓存队列中的多媒体帧的时间差值是否发生突变,所述时间差值为所述多媒体帧的显示时间标签指示的时刻与所述多媒体帧的接收时刻的差值,所述缓存队列由按接收时刻排序的N个待处理的多媒体帧组成,N为整数;
判断同步单元,用于如果所述缓存队列中有时间差值发生突变的多媒体帧,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理,所述M个待处理的多媒体帧为所述缓存队列中按接收时刻升序排列的前M个多媒体帧;如果所述缓存队列中没有时间差值发生突变的多媒体帧,且时间差值在预设门限内,对本处理周期内的M个待处理的多媒体帧进行同步播放处理。
8.根据权利要求7所述的装置,其特征在于,所述检测突变单元具体用于:
判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值,所述第一差值为多媒体帧的所述时间差值与前一接收时刻的多媒体帧的所述时间差值的差值;
如果没有第一差值大于第一门限值,选择所述缓存队列中的一个多媒体帧的所述时间差值作为基值,分别判断所述缓存队列中各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值;
所述缓存队列中有时间差值发生突变的多媒体帧是指,所述缓存队列中有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值或者有多媒体帧与所述基值的第二差值大于第二门限值;所述缓存队列中没有时间差值发生突变的多媒体帧是指,所述缓存队列中没有多媒体帧与前一接收时刻的多媒体帧的第一差值大于第一门限值,并且没有多媒体帧的所述时间差值与所述基值的第二差值大于第二门限值。
9.根据权利要求8所述的装置,其特征在于,判断所述缓存队列中除接收时刻最早的多媒体帧之外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值时,所述检测突变单元具体用于:先判断所述缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;如果没有第一差值大于第一门限值,判断所述缓存队列中其余待处理的多媒体帧中,除所述缓存队列中接收时刻最早的多媒体帧外,各个多媒体帧与前一接收时刻的多媒体帧的第一差值是否大于第一门限值;和/或,
分别判断所述缓存队列中各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值时,所述检测突变单元具体用于:先判断所述缓存队列中按接收时刻升序排列的后M个待处理的多媒体帧中,各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值;如果没有第二差值大于第二门限值,判断所述缓存队列中其余待处理的多媒体帧中,各个多媒体帧的所述时间差值与所述基值的第二差值是否大于第二门限值。
10.根据权利要求7~9任一项所述的装置,其特征在于,该装置还包括:
判断时间差值单元,用于判断所述缓存队列中,所述M个待处理的多媒体帧的所述时间差值是否在预设门限内;
判断同步单元还用于:如果所述时间差值不在预设门限内,对本处理周期内的M个待处理的多媒体帧进行非同步播放处理。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410649928.2A CN104394450B (zh) | 2014-11-14 | 2014-11-14 | 一种多媒体帧的处理方法及装置 |
US14/707,288 US9615130B2 (en) | 2014-11-14 | 2015-05-08 | Method and device for processing multimedia frame and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410649928.2A CN104394450B (zh) | 2014-11-14 | 2014-11-14 | 一种多媒体帧的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104394450A CN104394450A (zh) | 2015-03-04 |
CN104394450B true CN104394450B (zh) | 2017-12-29 |
Family
ID=52612278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410649928.2A Active CN104394450B (zh) | 2014-11-14 | 2014-11-14 | 一种多媒体帧的处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9615130B2 (zh) |
CN (1) | CN104394450B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106507217B (zh) * | 2016-10-27 | 2019-07-02 | 腾讯科技(北京)有限公司 | 视频流的时间戳的处理方法和装置 |
CN109218748B (zh) * | 2017-06-30 | 2020-11-27 | 京东方科技集团股份有限公司 | 视频传输方法、装置及计算机可读存储介质 |
CN109547865B (zh) * | 2018-11-09 | 2021-09-24 | 中国航空无线电电子研究所 | 视频编码数据的组织方法、同步播放方法、分段清除方法 |
CN109729391B (zh) * | 2018-12-18 | 2021-07-02 | 北京华夏电通科技股份有限公司 | 一种多路媒体流的发送方法及系统 |
CN113271496B (zh) * | 2021-07-15 | 2021-10-01 | 全时云商务服务股份有限公司 | 一种网络直播中视频平滑播放方法、系统和可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1786209A1 (en) * | 2004-09-02 | 2007-05-16 | Sony Corporation | Content receiver, video-audio output timing control method, and content providing system |
CN101710997A (zh) * | 2009-11-04 | 2010-05-19 | 中兴通讯股份有限公司 | 基于mpeg-2系统实现视、音频同步的方法及系统 |
CN102421035A (zh) * | 2011-12-31 | 2012-04-18 | 青岛海信宽带多媒体技术有限公司 | 数字电视音视频同步的实现方法及装置 |
CN102547299A (zh) * | 2010-12-30 | 2012-07-04 | 福建星网视易信息系统有限公司 | 基于mpeg-2视频流的音视频同步控制方法 |
CN103731716A (zh) * | 2014-01-08 | 2014-04-16 | 珠海全志科技股份有限公司 | 一种ts流播放中的音视频同步方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100619007B1 (ko) * | 2003-06-24 | 2006-08-31 | 삼성전자주식회사 | 비디오 트랜스포트 스트림 동기화 제어 장치 및 방법 |
KR101143907B1 (ko) * | 2007-02-15 | 2012-05-10 | 삼성전자주식회사 | 디지털 방송 재생 방법 및 장치 |
US9674539B2 (en) * | 2013-03-14 | 2017-06-06 | Infocus Corporation | Concurrent decompression of multiple video streams with constrained decompression resources |
-
2014
- 2014-11-14 CN CN201410649928.2A patent/CN104394450B/zh active Active
-
2015
- 2015-05-08 US US14/707,288 patent/US9615130B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1786209A1 (en) * | 2004-09-02 | 2007-05-16 | Sony Corporation | Content receiver, video-audio output timing control method, and content providing system |
CN101710997A (zh) * | 2009-11-04 | 2010-05-19 | 中兴通讯股份有限公司 | 基于mpeg-2系统实现视、音频同步的方法及系统 |
CN102547299A (zh) * | 2010-12-30 | 2012-07-04 | 福建星网视易信息系统有限公司 | 基于mpeg-2视频流的音视频同步控制方法 |
CN102421035A (zh) * | 2011-12-31 | 2012-04-18 | 青岛海信宽带多媒体技术有限公司 | 数字电视音视频同步的实现方法及装置 |
CN103731716A (zh) * | 2014-01-08 | 2014-04-16 | 珠海全志科技股份有限公司 | 一种ts流播放中的音视频同步方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104394450A (zh) | 2015-03-04 |
US9615130B2 (en) | 2017-04-04 |
US20160142766A1 (en) | 2016-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104394450B (zh) | 一种多媒体帧的处理方法及装置 | |
TWI623225B (zh) | 視訊播放方法及其控制終端 | |
CN106658133B (zh) | 一种音视频同步播放的方法及终端 | |
CN110139148B (zh) | 一种视频切换清晰度的方法及相关装置 | |
CN106612452B (zh) | 机顶盒音视频同步的方法及装置 | |
CN103747317B (zh) | 一种播放库在不稳定网络下的流畅播放控制方法 | |
JP4475336B2 (ja) | タイムスタンプ付加装置およびタイムスタンプ付加方法、並びにプログラム | |
CN108243350B (zh) | 一种音视频同步处理的方法和装置 | |
US8483053B2 (en) | Information processing device, information processing method, program, and data structure | |
CN107197369B (zh) | 一种多子流协同的视频流媒体并行解码方法 | |
CN1764974A (zh) | 存储多媒体数据的存储介质和再现多媒体数据的方法和设备 | |
CN101600107A (zh) | 调整视频录像播放速度的方法、系统及装置 | |
CN100586176C (zh) | 用于视频同步的设备和方法 | |
CN109660805B (zh) | 解码播放中音视频同步优化方法、存储介质、设备及系统 | |
CN101931775A (zh) | 一种录像方法及装置 | |
CN106470291A (zh) | 从音频/视频解码器中的时间同步中的中断中恢复 | |
CN111131874B (zh) | 一种解决h.265码流随机接入点播放卡顿的方法、设备及计算机存储介质 | |
CN107277295A (zh) | 视频同步处理装置及方法 | |
CN1669310A (zh) | 用于实施特技模式的视频数据传输方法和设备 | |
CN103581730A (zh) | 在数字机顶盒上实现音视频同步的方法 | |
US8359413B2 (en) | Data stream buffer control using reference time and decoding time | |
CN108540855B (zh) | 一种适用于网络直播场景下的自适应低延时流媒体播放方法 | |
CN107580264A (zh) | 多媒体资源播放处理方法及装置 | |
JP2012023734A (ja) | ファイル位置高速検索方法 | |
WO2018076899A1 (zh) | 一种数据切换方法、装置、终端及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |