CN110493164A - 一种媒体包的处理方法和装置 - Google Patents

一种媒体包的处理方法和装置 Download PDF

Info

Publication number
CN110493164A
CN110493164A CN201810463920.5A CN201810463920A CN110493164A CN 110493164 A CN110493164 A CN 110493164A CN 201810463920 A CN201810463920 A CN 201810463920A CN 110493164 A CN110493164 A CN 110493164A
Authority
CN
China
Prior art keywords
queue
media packet
time difference
time
timestamp
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.)
Granted
Application number
CN201810463920.5A
Other languages
English (en)
Other versions
CN110493164B (zh
Inventor
谢文龙
李云鹏
袁庆宁
张小帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Visionvera Information Technology Co Ltd
Original Assignee
Visionvera Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Visionvera Information Technology Co Ltd filed Critical Visionvera Information Technology Co Ltd
Priority to CN201810463920.5A priority Critical patent/CN110493164B/zh
Publication of CN110493164A publication Critical patent/CN110493164A/zh
Application granted granted Critical
Publication of CN110493164B publication Critical patent/CN110493164B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/439Processing of audio elementary streams
    • H04N21/4392Processing of audio elementary streams involving audio buffer management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种媒体包的处理方法和装置,其中,所述方法包括:分别获取预设的第一、二队列中各个媒体包的时间戳;根据第一、二队列中第N个媒体包的时间戳和预设的基准时间确定第三时间差值;在第三时间差值小于缓存时间长度时,根据第一、二队列中第N‑1个媒体包的时间戳和基准时间确定第六时间差值;在第三时间差值大于第六时间差值时,减小第二队列中媒体包的播放速度;在第三时间差值小于第六时间差值时,增大第二队列中媒体包的播放速度。本发明实施例实现了在网络环境变差时,可以调整媒体包的播放速度,达到了平滑播放媒体包的效果。

Description

一种媒体包的处理方法和装置
技术领域
本发明涉及多媒体技术领域,特别是涉及一种媒体包的处理方法和一种媒体包的处理装置。
背景技术
随着网络科技的快速发展,音视频数据播放在用户的生活、工作、学习等方面广泛普及。
传统的音视频数据播放主要有两种方式,第一种方式、接收到音视频数据就直接播放。第二种方式、设置缓存区,当缓存区中存满音视频数据时,开始播放音视频数据。但是,当网络环境变差时,第一种方式播放音视频数据会直接卡顿,第二种方式播放音视频数据会出现明显的不间断卡顿问题。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种媒体包的处理方法和相应的一种媒体包的处理装置。
为了解决上述问题,本发明实施例公开了一种媒体包的处理方法,包括:分别获取预设的第一队列和第二队列中各个媒体包的时间戳;根据所述第一队列中第N个媒体包的时间戳、所述第二队列中第N个媒体包的时间戳和预设的基准时间,确定第三时间差值,所述第三时间差值用于根据预设的缓存时间长度确定所述第二队列中媒体包的缓存状态,N为正整数,N大于或等于2;在所述第三时间差值小于所述缓存时间长度时,根据所述第一队列中第N-1个媒体包的时间戳、所述第二队列中第N-1个媒体包的时间戳和所述基准时间,确定第六时间差值,所述第六时间差值用于根据所述第三时间差值确定所述第二队列中媒体包的播放速度;在所述第三时间差值大于所述第六时间差值时,减小所述第二队列中媒体包的播放速度;在所述第三时间差值小于所述第六时间差值时,增大所述第二队列中媒体包的播放速度。
可选地,所述根据所述第一队列中第N个媒体包的时间戳、所述第二队列中第N个媒体包的时间戳和预设的基准时间,确定第三时间差值,包括:根据所述第一队列中第N个媒体包的时间戳与所述基准时间确定第一时间差值,并根据所述第二队列中第N个媒体包的时间戳与所述基准时间确定第二时间差值;根据所述第一时间差值和所述第二时间差值确定所述第三时间差值。
可选地,所述根据所述第一队列中第N-1个媒体包的时间戳、所述第二队列中第N-1个媒体包的时间戳和所述基准时间,确定第六时间差值,包括:根据所述第一队列中第N-1个媒体包的时间戳与所述基准时间确定第四时间差值,并根据所述第二队列中第N-1个媒体包的时间戳与所述基准时间确定第五时间差值;根据所述第四时间差值和所述第五时间差值确定所述第六时间差值。
可选地,所述方法还包括:在所述第三时间差值大于或等于所述缓存时间长度时,播放所述第二队列中的媒体包。
可选地,所述方法还包括:在所述第三时间差值等于所述第六时间差值时,保持所述第二队列中媒体包的播放速度。
可选地,在所述分别获取预设的第一队列和第二队列中各个媒体包的时间戳之前,所述方法还包括:获取所述第一队列中全部媒体包的播放时间总长度;在所述播放时间总长度大于或等于所述缓存时间长度时,将所述第一队列中的媒体包依次存储至所述第二队列,并向所述第一队列中存入新的媒体包。
本发明实施例还公开了一种媒体包的处理装置,包括:时间戳获取模块,用于分别获取预设的第一队列和第二队列中各个媒体包的时间戳;时间差值确定模块,用于根据所述第一队列中第N个媒体包的时间戳、所述第二队列中第N个媒体包的时间戳和预设的基准时间,确定第三时间差值,所述第三时间差值用于根据预设的缓存时间长度确定所述第二队列中媒体包的缓存状态,N为正整数,N大于或等于2;所述时间差值确定模块,还用于在所述第三时间差值小于所述缓存时间长度时,根据所述第一队列中第N-1个媒体包的时间戳、所述第二队列中第N-1个媒体包的时间戳和所述基准时间,确定第六时间差值,所述第六时间差值用于根据所述第三时间差值确定所述第二队列中媒体包的播放速度;播放速度调整模块,用于在所述第三时间差值大于所述第六时间差值时,减小所述第二队列中媒体包的播放速度;在所述第三时间差值小于所述第六时间差值时,增大所述第二队列中媒体包的播放速度。
可选地,所述时间差值确定模块,用于根据所述第一队列中第N个媒体包的时间戳与所述基准时间确定第一时间差值,并根据所述第二队列中第N个媒体包的时间戳与所述基准时间确定第二时间差值;根据所述第一时间差值和所述第二时间差值确定所述第三时间差值。
可选地,所述时间差值确定模块,用于根据所述第一队列中第N-1个媒体包的时间戳与所述基准时间确定第四时间差值,并根据所述第二队列中第N-1个媒体包的时间戳与所述基准时间确定第五时间差值;根据所述第四时间差值和所述第五时间差值确定所述第六时间差值。
可选地,所述装置还包括:媒体包播放模块,用于在所述第三时间差值大于或等于所述缓存时间长度时,播放所述第二队列中的媒体包。
可选地,所述装置还包括:播放速度保持模块,用于在所述第三时间差值等于所述第六时间差值时,保持所述第二队列中媒体包的播放速度。
可选地,所述装置还包括:时间长度获取模块,用于在所述时间戳获取模块分别获取预设的第一队列和第二队列中各个媒体包的时间戳之前,获取所述第一队列中全部媒体包的播放时间总长度;媒体包存储模块,用于在所述播放时间总长度大于或等于所述缓存时间长度时,将所述第一队列中的媒体包依次存储至所述第二队列,并向所述第一队列中存入新的媒体包。
本发明实施例包括以下优点:
本发明实施例分别设置有第一队列和第二队列,第一队列和第二队列中均存储有媒体包,第一队列主要用于接收媒体包,第二队列主要用于播放媒体包。分别获取第一队列和第二队列中各个媒体包的时间戳;根据第一队列中第N个媒体包的时间戳、第二队列中第N个媒体包的时间戳和预设的基准时间,确定第三时间差值,第三时间差值用于根据预设的缓存时间长度确定第二队列中媒体包的缓存状态,N为正整数,N大于或等于2;在第三时间差值小于缓存时间长度时,根据第一队列中第N-1个媒体包的时间戳、第二队列中第N-1个媒体包的时间戳和基准时间,确定第六时间差值,第六时间差值用于根据第三时间差值确定第二队列中媒体包的播放速度;在第三时间差值大于第六时间差值时,减小第二队列中媒体包的播放速度;在第三时间差值小于第六时间差值时,增大第二队列中媒体包的播放速度。
本发明实施例利用第一队列和第二队列中的媒体包的时间差值确定第二队列中媒体包的缓存状态,在第三时间差值小于缓存时间长度时,即在第二队列中媒体包的缓存状态变差时,或第二队列中媒体包的数量减少时,再利用第一队列和第二队列中相邻的两个媒体包的时间差值之差确定增大或减小第二队列中媒体包的播放速度,实现了在网络环境变差时,可以调整媒体包的播放速度,达到了平滑播放媒体包的效果。
附图说明
图1是本发明的一种媒体包的处理方法实施例的步骤流程图;
图2是本发明的一种媒体包的处理装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明实施例的核心构思之一是,预设第一队列和第二队列,第一队列主要用于接收媒体包,第二队列主要用于播放媒体包。将媒体包依次存入第一队列和第二队列,根据第一队列和第二队列中的媒体包的时间差值,间接确定网络状况,并根据第一队列和第二队列中相邻的两个媒体包的时间差值之差,确定第二队列中媒体包的缓存状态,达到平滑播放媒体包的效果。
参照图1,示出了本发明的一种媒体包的处理方法实施例的步骤流程图,该方法可以应用于流媒体服务器中,该方法具体可以包括如下步骤:
步骤101,分别获取预设的第一队列和第二队列中各个媒体包的时间戳。
本发明实施例中,媒体包中包含自定义的信息头(Header)和媒体数据(Data)。其中,信息头用于识别媒体包,媒体数据是真正的音视频数据。时间戳是对音视频数据进行编码时携带的时间信息,时间戳是一个时间点。
本发明实施例中,预先设置第一队列和第二队列,第一队列和第二队列均可以存储媒体包(Media Packet)。媒体包先存入第一队列,再从第一队列存入第二队列,具体地,媒体包依次存入第一队列,在满足预设条件时,第一队列中的媒体包再存入第二队列中,同时,新的媒体包再存入第一队列。该预设条件可以为第一队列中的媒体包达到第一队列的存储限额,可以是数量限额,也可以是时间限额等等,本发明实施例对该预设条件的具体内容不做限制。
在本发明的优选实施例中,在分别获取预设的第一队列和第二队列中各个媒体包的时间戳之前,可以实时获取第一队列中全部媒体包的播放时间总长度;在第一队列中全部媒体包的播放时间总长度大于或等于预设的缓存时间长度时,将第一队列中的媒体包依次存储至第二队列,并向第一队列中存入新的媒体包。例如,实时获取第一队列中全部媒体包的播放时间总长度为T1,预设的缓存时间长度为T,在播放时间总长度T1大于或等于缓存时间长度T时,将第一队列中的媒体包M1、M2、M3和M4依次存储至第二队列。其中,媒体包M1先存入第一队列,然后是媒体包M2、M3和M4,在将第一队列中的媒体包存入第二队列时,按照先存入(第一队列)-先存入(第二队列)的原则,即先存入第一队列的媒体包,仍然先存入第二队列中。此时,将新的媒体包M5再存入第一队列。
在本发明的优选实施例中,在第一队列中全部媒体包的播放时间总长度小于预设的缓存时间长度时,继续向第一队列中存入媒体包,可以不向第二队列中存入媒体包。
本发明实施例中,可以通过预设的缓存时间长度判断是否将第一队列的媒体包存入第二队列。而且,在第一队列中存入达到缓存时间长度的媒体包,可以防止初始的网络环境变差而造成的媒体包播放卡顿的问题。
步骤102,根据第一队列中第N个媒体包的时间戳、第二队列中第N个媒体包的时间戳和预设的基准时间,确定第三时间差值。
本发明实施例中,N为正整数,N大于或等于2。N的具体取值可以根据实际情况,如网络状况、媒体包的播放时间长度等进行设置,本发明实施例对此不做限制。
本发明实施例中,由于媒体包的时间戳是一个时间点,因此预设一基准时间,通过时间戳和基准时间可以确定一个时间差值,即确定一个时间段,后续可以利用时间段直接地或间接地确定第二队列中媒体包的缓存状态,以及,第二队列中媒体包的播放速度。
本发明实施例中,第三时间差值用于根据预设的缓存时间长度确定第二队列中媒体包的缓存状态,具体的缓存状态可以为缓存上升状态、缓存下降状态或缓存平稳状态。
在本发明的优选实施例中,可以根据第一队列中第N个媒体包的时间戳与基准时间确定第一时间差值,并根据第二队列中第N个媒体包的时间戳与基准时间确定第二时间差值;根据第一时间差值和第二时间差值确定第三时间差值。例如,第一队列中第N个媒体包的时间戳为t1(N),第二队列中第N个媒体包的时间戳为t2(N),基准时间为t,将时间戳t1(N)与基准时间t相减,得到第一时间差tc1(N),将时间戳t2(N)与基准时间t相减,得到第二时间差tc2(N),将第一时间差值tc1(N)和第二时间差值tc2(N)相减,得到第三时间差值tcz(N)。
步骤103,在第三时间差值小于缓存时间长度时,根据第一队列中第N-1个媒体包的时间戳、第二队列中第N-1个媒体包的时间戳和基准时间,确定第六时间差值。
本发明实施例中,因为相邻两个媒体包之间的时间间隔是保持不变的,所以可以利用相邻两个媒体包之间的时间差值之差确定如何调整第二队列中媒体包的播放速度。
本发明实施例中,将第三时间差值与缓存时间长度进行比较,进而确定第二队列中媒体包的缓存状态。
在本发明的优选实施例中,在第三时间差值小于缓存时间长度时,可以根据第一队列中第N-1个媒体包的时间戳与基准时间确定第四时间差值,并根据第二队列中第N-1个媒体包的时间戳与基准时间确定第五时间差值;根据第四时间差值和第五时间差值确定第六时间差值。
例如,第一队列中第N-1个媒体包的时间戳为t1(N-1),第二队列中第N-1个媒体包的时间戳为t2(N-1),基准时间为t,将时间戳t1(N-1)与基准时间t相减,得到第四时间差tc1(N-1),将时间戳t2(N-1)与基准时间t相减,得到第五时间差tc2(N-1),将第四时间差值tc1(N-1)和第五时间差值tc2(N-1)相减,得到第六时间差值tcz(N-1)。
本发明实施例中,第六时间差值用于根据第三时间差值确定第二队列中媒体包的播放速度。
步骤104,在第三时间差值大于第六时间差值时,减小第二队列中媒体包的播放速度。
本发明实施例中,在第三时间差值大于第六时间差值时,确定第二队列中媒体包的转换状态为下降状态,此时,可以减小第二队列中媒体包的播放速度。
接上例,在第三时间差值tcz(N)大于第六时间差值tcz(N-1)时,确定第二队列中媒体包的转换状态为下降状态,此时,可以按照预设的毫秒数减小第二队列中媒体包的播放速度。
步骤105,在第三时间差值小于第六时间差值时,增大第二队列中媒体包的播放速度。
本发明实施例中,在第三时间差值小于第六时间差值时,确定第二队列中媒体包的转换状态为上升状态,此时,可以增大第二队列中媒体包的播放速度。
接上例,在第三时间差值tcz(N)小于第六时间差值tcz(N-1)时,确定第二队列中媒体包的转换状态为上升状态,此时,可以按照预设的毫秒数增大第二队列中媒体包的播放速度。
步骤106,在第三时间差值等于第六时间差值时,保持第二队列中媒体包的播放速度。
本发明实施例中,在第三时间差值等于第六时间差值时,确定第二队列中媒体包的转换状态为平稳状态,此时,可以保持第二队列中媒体包的播放速度。
接上例,在第三时间差值tcz(N)等于第六时间差值tcz(N-1)时,确定第二队列中媒体包的转换状态为平稳状态,此时,可以保持第二队列中媒体包的播放速度。
上述步骤103是在第三时间差值小于缓存时间长度时,继续确定第六时间差值,进而将第六时间差值与第三时间差值进行比较,最终利用后续步骤104、步骤105和步骤106减小、增大或保持第二队列中媒体包的播放速度。在第三时间差值大于或等于缓存时间长度时,不需要确定第六时间差值,可以直接按照正常速度播放第二队列中的媒体包。
本发明实施例中,关于各个媒体包的时间戳,以及,第一时间差值、第二时间差值、第三时间差值、第四时间差值、第五时间差值和第六时间差值的获取时间,可以根据实际情况实时获取,也可以设置一个或多个获取周期,按照获取一个或多个周期分别对应获取各时间差值和时间戳。
本发明实施例中,在确定第一时间差值、第二时间差值、第四时间差值和第五时间差值时,可以利用时间戳减去基准时间,分别得到第一时间差值、第二时间差值、第四时间差值和第五时间差值。
本发明实施例中,在确定第三时间差值和第六时间差值时,可以利用第二时间差值减去第一时间差值得到第三时间差值,利用第五时间差值减去第四时间差值得到第六时间差值。即用正在播放的媒体包的时间差值减去正在接收的媒体包的时间差值。
本发明实施例分别设置有第一队列和第二队列,第一队列和第二队列中均存储有媒体包,第一队列主要用于接收媒体包,第二队列主要用于播放媒体包。分别获取第一队列和第二队列中各个媒体包的时间戳;根据第一队列中第N个媒体包的时间戳、第二队列中第N个媒体包的时间戳和预设的基准时间,确定第三时间差值,第三时间差值用于根据预设的缓存时间长度确定第二队列中媒体包的缓存状态,N为正整数,N大于或等于2;在第三时间差值小于缓存时间长度时,根据第一队列中第N-1个媒体包的时间戳、第二队列中第N-1个媒体包的时间戳和基准时间,确定第六时间差值,第六时间差值用于根据第三时间差值确定第二队列中媒体包的播放速度;在第三时间差值大于第六时间差值时,减小第二队列中媒体包的播放速度;在第三时间差值小于第六时间差值时,增大第二队列中媒体包的播放速度。
本发明实施例利用第一队列和第二队列中的媒体包的时间差值确定第二队列中媒体包的缓存状态,在第三时间差值小于缓存时间长度时,即在第二队列中媒体包的缓存状态变差时,或第二队列中媒体包的数量减少时,再利用第一队列和第二队列中相邻的两个媒体包的时间差值之差确定增大或减小第二队列中媒体包的播放速度,实现了在网络环境变差时,可以调整媒体包的播放速度,达到了平滑播放媒体包的效果。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图2,示出了本发明的一种媒体包的处理装置实施例的结构框图,该装置可以应用于流媒体服务器中,该装置具体可以包括如下模块:
时间戳获取模块201,用于分别获取预设的第一队列和第二队列中各个媒体包的时间戳。
时间差值确定模块202,用于根据第一队列中第N个媒体包的时间戳、第二队列中第N个媒体包的时间戳和预设的基准时间,确定第三时间差值,第三时间差值用于根据预设的缓存时间长度确定第二队列中媒体包的缓存状态,N为正整数,N大于或等于2。
时间差值确定模块202,还用于在第三时间差值小于缓存时间长度时,根据第一队列中第N-1个媒体包的时间戳、第二队列中第N-1个媒体包的时间戳和基准时间,确定第六时间差值,第六时间差值用于根据第三时间差值确定第二队列中媒体包的播放速度。
播放速度调整模块203,用于在第三时间差值大于第六时间差值时,减小第二队列中媒体包的播放速度;在第三时间差值小于第六时间差值时,增大第二队列中媒体包的播放速度。
在本发明的优选实施例中,时间差值确定模块202,用于根据第一队列中第N个媒体包的时间戳与基准时间确定第一时间差值,并根据第二队列中第N个媒体包的时间戳与基准时间确定第二时间差值;根据第一时间差值和第二时间差值确定第三时间差值。
在本发明的优选实施例中,时间差值确定模块202,用于根据第一队列中第N-1个媒体包的时间戳与基准时间确定第四时间差值,并根据第二队列中第N-1个媒体包的时间戳与基准时间确定第五时间差值;根据第四时间差值和第五时间差值确定第六时间差值。
在本发明的优选实施例中,媒体包的处理装置还包括:
媒体包播放模块204,用于在第三时间差值大于或等于缓存时间长度时,播放第二队列中的媒体包。
在本发明的优选实施例中,媒体包的处理装置还包括:
播放速度保持模块205,用于在第三时间差值等于第六时间差值时,保持第二队列中媒体包的播放速度。
在本发明的优选实施例中,媒体包的处理装置还包括:
时间长度获取模块206,用于在时间戳获取模块201分别获取预设的第一队列和第二队列中各个媒体包的时间戳之前,获取第一队列中全部媒体包的播放时间总长度。
媒体包存储模块207,用于在播放时间总长度大于或等于缓存时间长度时,将第一队列中的媒体包依次存储至第二队列,并向第一队列中存入新的媒体包。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种媒体包的处理方法和一种媒体包的处理装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (12)

1.一种媒体包的处理方法,其特征在于,包括:
分别获取预设的第一队列和第二队列中各个媒体包的时间戳;
根据所述第一队列中第N个媒体包的时间戳、所述第二队列中第N个媒体包的时间戳和预设的基准时间,确定第三时间差值,所述第三时间差值用于根据预设的缓存时间长度确定所述第二队列中媒体包的缓存状态,N为正整数,N大于或等于2;
在所述第三时间差值小于所述缓存时间长度时,根据所述第一队列中第N-1个媒体包的时间戳、所述第二队列中第N-1个媒体包的时间戳和所述基准时间,确定第六时间差值,所述第六时间差值用于根据所述第三时间差值确定所述第二队列中媒体包的播放速度;
在所述第三时间差值大于所述第六时间差值时,减小所述第二队列中媒体包的播放速度;
在所述第三时间差值小于所述第六时间差值时,增大所述第二队列中媒体包的播放速度。
2.根据权利要求1所述的媒体包的处理方法,其特征在于,所述根据所述第一队列中第N个媒体包的时间戳、所述第二队列中第N个媒体包的时间戳和预设的基准时间,确定第三时间差值,包括:
根据所述第一队列中第N个媒体包的时间戳与所述基准时间确定第一时间差值,并根据所述第二队列中第N个媒体包的时间戳与所述基准时间确定第二时间差值;
根据所述第一时间差值和所述第二时间差值确定所述第三时间差值。
3.根据权利要求1所述的媒体包的处理方法,其特征在于,所述根据所述第一队列中第N-1个媒体包的时间戳、所述第二队列中第N-1个媒体包的时间戳和所述基准时间,确定第六时间差值,包括:
根据所述第一队列中第N-1个媒体包的时间戳与所述基准时间确定第四时间差值,并根据所述第二队列中第N-1个媒体包的时间戳与所述基准时间确定第五时间差值;
根据所述第四时间差值和所述第五时间差值确定所述第六时间差值。
4.根据权利要求1-3中任一项所述的媒体包的处理方法,其特征在于,所述方法还包括:
在所述第三时间差值大于或等于所述缓存时间长度时,播放所述第二队列中的媒体包。
5.根据权利要求1-3中任一项所述的媒体包的处理方法,其特征在于,所述方法还包括:
在所述第三时间差值等于所述第六时间差值时,保持所述第二队列中媒体包的播放速度。
6.根据权利要求1-3中任一项所述的媒体包的处理方法,其特征在于,在所述分别获取预设的第一队列和第二队列中各个媒体包的时间戳之前,所述方法还包括:
获取所述第一队列中全部媒体包的播放时间总长度;
在所述播放时间总长度大于或等于所述缓存时间长度时,将所述第一队列中的媒体包依次存储至所述第二队列,并向所述第一队列中存入新的媒体包。
7.一种媒体包的处理装置,其特征在于,包括:
时间戳获取模块,用于分别获取预设的第一队列和第二队列中各个媒体包的时间戳;
时间差值确定模块,用于根据所述第一队列中第N个媒体包的时间戳、所述第二队列中第N个媒体包的时间戳和预设的基准时间,确定第三时间差值,所述第三时间差值用于根据预设的缓存时间长度确定所述第二队列中媒体包的缓存状态,N为正整数,N大于或等于2;
所述时间差值确定模块,还用于在所述第三时间差值小于所述缓存时间长度时,根据所述第一队列中第N-1个媒体包的时间戳、所述第二队列中第N-1个媒体包的时间戳和所述基准时间,确定第六时间差值,所述第六时间差值用于根据所述第三时间差值确定所述第二队列中媒体包的播放速度;
播放速度调整模块,用于在所述第三时间差值大于所述第六时间差值时,减小所述第二队列中媒体包的播放速度;在所述第三时间差值小于所述第六时间差值时,增大所述第二队列中媒体包的播放速度。
8.根据权利要求7所述的媒体包的处理装置,其特征在于,所述时间差值确定模块,用于根据所述第一队列中第N个媒体包的时间戳与所述基准时间确定第一时间差值,并根据所述第二队列中第N个媒体包的时间戳与所述基准时间确定第二时间差值;根据所述第一时间差值和所述第二时间差值确定所述第三时间差值。
9.根据权利要求7所述的媒体包的处理装置,其特征在于,所述时间差值确定模块,用于根据所述第一队列中第N-1个媒体包的时间戳与所述基准时间确定第四时间差值,并根据所述第二队列中第N-1个媒体包的时间戳与所述基准时间确定第五时间差值;根据所述第四时间差值和所述第五时间差值确定所述第六时间差值。
10.根据权利要求7-9中任一项所述的媒体包的处理装置,其特征在于,所述装置还包括:
媒体包播放模块,用于在所述第三时间差值大于或等于所述缓存时间长度时,播放所述第二队列中的媒体包。
11.根据权利要求7-9中任一项所述的媒体包的处理装置,其特征在于,所述装置还包括:
播放速度保持模块,用于在所述第三时间差值等于所述第六时间差值时,保持所述第二队列中媒体包的播放速度。
12.根据权利要求7-9中任一项所述的媒体包的处理装置,其特征在于,所述装置还包括:
时间长度获取模块,用于在所述时间戳获取模块分别获取预设的第一队列和第二队列中各个媒体包的时间戳之前,获取所述第一队列中全部媒体包的播放时间总长度;
媒体包存储模块,用于在所述播放时间总长度大于或等于所述缓存时间长度时,将所述第一队列中的媒体包依次存储至所述第二队列,并向所述第一队列中存入新的媒体包。
CN201810463920.5A 2018-05-15 2018-05-15 一种媒体包的处理方法和装置 Active CN110493164B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810463920.5A CN110493164B (zh) 2018-05-15 2018-05-15 一种媒体包的处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810463920.5A CN110493164B (zh) 2018-05-15 2018-05-15 一种媒体包的处理方法和装置

Publications (2)

Publication Number Publication Date
CN110493164A true CN110493164A (zh) 2019-11-22
CN110493164B CN110493164B (zh) 2022-02-22

Family

ID=68545208

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810463920.5A Active CN110493164B (zh) 2018-05-15 2018-05-15 一种媒体包的处理方法和装置

Country Status (1)

Country Link
CN (1) CN110493164B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103338386A (zh) * 2013-07-10 2013-10-02 航天恒星科技有限公司 基于简化时间戳的音视频同步方法
CN103916716A (zh) * 2013-01-08 2014-07-09 北京信威通信技术股份有限公司 一种无线网络下视频实时传输的码率平滑方法
WO2015003302A1 (zh) * 2013-07-08 2015-01-15 华为技术有限公司 视频播放的控制方法、设备及系统
CN105847942A (zh) * 2016-04-01 2016-08-10 青岛海信宽带多媒体技术有限公司 媒体数据缓冲方法、媒体数据缓冲装置及智能电视
CN107087210A (zh) * 2017-03-30 2017-08-22 青岛海信电器股份有限公司 基于缓存时间判断视频播放状态的方法及终端
CN107396171A (zh) * 2017-07-24 2017-11-24 广州酷狗计算机科技有限公司 网络直播方法、装置和存储介质
CN107529097A (zh) * 2016-06-20 2017-12-29 北京信威通信技术股份有限公司 一种自适应调整视频缓冲大小的方法及装置
CN107801080A (zh) * 2017-11-10 2018-03-13 普联技术有限公司 一种音视频同步方法、装置及设备
CN107888938A (zh) * 2016-09-29 2018-04-06 北京视联动力国际信息技术有限公司 一种网络视频播放方法及其装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103916716A (zh) * 2013-01-08 2014-07-09 北京信威通信技术股份有限公司 一种无线网络下视频实时传输的码率平滑方法
WO2015003302A1 (zh) * 2013-07-08 2015-01-15 华为技术有限公司 视频播放的控制方法、设备及系统
CN103338386A (zh) * 2013-07-10 2013-10-02 航天恒星科技有限公司 基于简化时间戳的音视频同步方法
CN105847942A (zh) * 2016-04-01 2016-08-10 青岛海信宽带多媒体技术有限公司 媒体数据缓冲方法、媒体数据缓冲装置及智能电视
CN107529097A (zh) * 2016-06-20 2017-12-29 北京信威通信技术股份有限公司 一种自适应调整视频缓冲大小的方法及装置
CN107888938A (zh) * 2016-09-29 2018-04-06 北京视联动力国际信息技术有限公司 一种网络视频播放方法及其装置
CN107087210A (zh) * 2017-03-30 2017-08-22 青岛海信电器股份有限公司 基于缓存时间判断视频播放状态的方法及终端
CN107396171A (zh) * 2017-07-24 2017-11-24 广州酷狗计算机科技有限公司 网络直播方法、装置和存储介质
CN107801080A (zh) * 2017-11-10 2018-03-13 普联技术有限公司 一种音视频同步方法、装置及设备

Also Published As

Publication number Publication date
CN110493164B (zh) 2022-02-22

Similar Documents

Publication Publication Date Title
US10930318B2 (en) Gapless video looping
US9473548B1 (en) Latency reduction in streamed content consumption
CN105247437B (zh) 同步多个ott流传输客户端
US20190045242A1 (en) Live consecutive ad insertion
CN102664032B (zh) 一种直播时移的播放进度调节条及其控制方法
CN109565620A (zh) 低延迟http实时流传输
US10015222B2 (en) Systems and methods for selective retrieval of adaptive bitrate streaming media
US20150229695A1 (en) Methods and apparatus for reducing latency shift in switching between distinct content streams
JP2011526123A (ja) ビデオストリームの配信に使用する間隔ベースの広告挿入
KR20120101710A (ko) 코덱이 적용된 프레임 크기로의 오디오 분할
CN103747287A (zh) 应用于flash的视频播放速度调整的方法及系统
KR20110065312A (ko) 메인 콘텐트에 다른 콘텐트를 삽입하여 스트리밍하는 방법 및 장치
CN103517157A (zh) 实现hls频道时移播放的方法及系统
CN106993212B (zh) 浏览器窗口中播放多路视频的方法及装置
CN109937448A (zh) 用于在特技播放回放期间提供音频内容的系统和方法
JP2013192062A (ja) 映像配信システム、映像配信装置、映像配信方法およびプログラム
CN107920108A (zh) 一种媒体资源的推送方法、客户端及服务器
CN104093084A (zh) 一种播放视频的方法及装置
TWI723394B (zh) 修正視訊串流流量的方法、機上盒及電腦可讀儲存介質
CN105898625A (zh) 一种播放处理方法及终端设备
JP4830542B2 (ja) ネットワークavシステム及びコントローラ
CN110493164A (zh) 一种媒体包的处理方法和装置
CN106713948A (zh) 视频分段加载方法和装置
CN102647622A (zh) 流媒体剪辑播放进度管理方法及系统
US9978423B2 (en) Modified playback rate for portions of video content

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant