CN109089130A - 一种调整直播视频的时间戳的方法和装置 - Google Patents
一种调整直播视频的时间戳的方法和装置 Download PDFInfo
- Publication number
- CN109089130A CN109089130A CN201811089865.4A CN201811089865A CN109089130A CN 109089130 A CN109089130 A CN 109089130A CN 201811089865 A CN201811089865 A CN 201811089865A CN 109089130 A CN109089130 A CN 109089130A
- Authority
- CN
- China
- Prior art keywords
- video frame
- timestamp
- corresponding timestamp
- target
- video
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000002159 abnormal effect Effects 0.000 claims abstract description 30
- 238000011156 evaluation Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 abstract description 23
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23608—Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23424—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- 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
-
- 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport 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/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/475—End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种调整直播视频的时间戳的方法和装置,属于视频处理技术领域。所述方法包括:获取目标直播视频的目标音/视频帧,确定所述目标音/视频帧对应的时间戳;根据所述目标音/视频帧的前一音/视频帧对应的时间戳,判断所述目标音/视频帧对应的时间戳是否异常;如果异常,则基于所述前一音/视频帧对应的时间戳,对所述目标音/视频帧对应的时间戳进行调整。采用本发明,可以保证直播视频的整个直播数据流的时间戳连续稳定,提高了直播视频的播放稳定性。
Description
技术领域
本发明涉及视频处理技术领域,特别涉及一种调整直播视频的时间戳的方法和装置。
背景技术
伴随着互联网技术的发展以及宽带的不断提速,互联网与人们的生活联系的日益密切,观看直播已成为当下一种主流的娱乐形式。为了提高直播服务质量,直播平台的运营方多基于CDN(Content Delivery Network,内容分发网络)集群来提供直播服务。
主播端在录制直播视频时,可以采集音视频数据,对音视频数据进行图像美化、语音去噪等处理,然后将处理后的音视频数据编码、封装,同时为直播视频的每个音/视频帧添加时间戳。之后,主播端可以将直播数据流推送至指定的CDN边缘节点(可称为推流边缘节点)处。该推流边缘节点接收到直播数据流后,可以通过CDN中转节点将直播数据流推送到指定的CDN边缘节点(可称为拉流边缘节点)。这样,当观众想要观看该直播时,观众端可以从与其距离最近的拉流边缘节点处获取相应的直播数据流,然后按照时间戳的顺序对其中的音/视频帧进行解封装、解码和播放。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
主播端在录制直播视频时,可能会由于多种原因,导致生成的直播数据流中的音/视频帧的时间戳出现突增、乱序等问题,而部分观众端在获取到这些直播数据流后,在播放直播视频的时候,将会因播放器兼容性等问题,出现直播视频播放卡顿、中断等问题,故而,直播视频的播放稳定性较差。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种调整直播视频的时间戳的方法和装置。所述技术方案如下:
第一方面,提供了一种调整直播视频的时间戳的方法,所述方法包括:
获取目标直播视频的目标音/视频帧,确定所述目标音/视频帧对应的时间戳;
根据所述目标音/视频帧的前一音/视频帧对应的时间戳,判断所述目标音/视频帧对应的时间戳是否异常;
如果异常,则基于所述前一音/视频帧对应的时间戳,对所述目标音/视频帧对应的时间戳进行调整。
可选的,所述如果异常,则基于所述前一音/视频帧对应的时间戳,对所述目标音/视频帧对应的时间戳进行调整,包括:
如果所述目标音/视频帧对应的时间戳大于所述前一音/视频帧对应的时间戳,且二者差值大于预设时差阈值,则将所述目标音/视频帧对应的时间戳调整为所述前一音/视频帧对应的时间戳与所述预设时差阈值之和。
可选的,所述如果异常,则基于所述前一音/视频帧对应的时间戳,对所述目标音/视频帧对应的时间戳进行调整,包括:
如果所述目标音/视频帧对应的时间戳小于所述前一音/视频帧对应的时间戳,则将所述目标音/视频帧对应的时间戳调整为所述前一音/视频帧对应的时间戳。
可选的,所述获取目标直播视频的目标音/视频帧之后,还包括:
确定获取到的所述目标直播视频的首个音/视频帧对应的时间戳,将所述目标音/视频帧对应的时间戳减去所述首个音/视频帧对应的时间戳后得到的时间戳更新为所述目标音/视频帧对应的时间戳。
可选的,所述获取目标直播视频的目标音/视频帧,确定所述目标音/视频帧对应的时间戳,包括:
获取目标直播视频的目标音/视频帧,如果所述目标直播视频存在时间戳调整需求,则确定所述目标音/视频帧对应的时间戳。
可选的,所述方法还包括:
获取所述目标直播视频的播放体验评价,根据所述播放体验评价为所述目标直播视频设置时间戳调整需求。
可选的,所述对所述目标音/视频帧对应的时间戳进行调整之后,还包括:
根据所述目标音频帧对应的时间戳的调整情况,对所述目标视频帧对应的时间戳进行调整;和/或,
根据所述目标视频帧对应的时间戳的调整情况,对所述目标音频帧对应的时间戳进行调整。
第二方面,提供了一种调整直播视频的时间戳的装置,所述装置包括:
确定模块,用于获取目标直播视频的目标音/视频帧,确定所述目标音/视频帧对应的时间戳;
判断模块,用于根据所述目标音/视频帧的前一音/视频帧对应的时间戳,判断所述目标音/视频帧对应的时间戳是否异常;
调整模块,用于如果异常,则基于所述前一音/视频帧对应的时间戳,对所述目标音/视频帧对应的时间戳进行调整。
可选的,所述调整模块,具体用于:
如果所述目标音/视频帧对应的时间戳大于所述前一音/视频帧对应的时间戳,且二者差值大于预设时差阈值,则将所述目标音/视频帧对应的时间戳调整为所述前一音/视频帧对应的时间戳与所述预设时差阈值之和。
可选的,所述调整模块,具体用于:
如果所述目标音/视频帧对应的时间戳小于所述前一音/视频帧对应的时间戳,则将所述目标音/视频帧对应的时间戳调整为所述前一音/视频帧对应的时间戳。
可选的,所述调整模块,还用于:
确定获取到的所述目标直播视频的首个音/视频帧对应的时间戳,将所述目标音/视频帧对应的时间戳减去所述首个音/视频帧对应的时间戳后得到的时间戳更新为所述目标音/视频帧对应的时间戳。
可选的,所述确定模块,具体用于:
获取目标直播视频的目标音/视频帧,如果所述目标直播视频存在时间戳调整需求,则确定所述目标音/视频帧对应的时间戳。
可选的,所述装置还包括:
设置模块,用于获取所述目标直播视频的播放体验评价,根据所述播放体验评价为所述目标直播视频设置时间戳调整需求。
可选的,所述调整模块,还用于:
根据所述目标音频帧对应的时间戳的调整情况,对所述目标视频帧对应的时间戳进行调整;和/或,
根据所述目标视频帧对应的时间戳的调整情况,对所述目标音频帧对应的时间戳进行调整。
第三方面,提供了一种网络设备,所述网络设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的调整直播视频的时间戳的方法。
第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如第一方面所述的调整直播视频的时间戳的方法。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,获取目标直播视频的目标音/视频帧,确定目标音/视频帧对应的时间戳;根据目标音/视频帧的前一音/视频帧对应的时间戳,判断目标音/视频帧对应的时间戳是否异常;如果异常,则基于前一音/视频帧对应的时间戳,对目标音/视频帧对应的时间戳进行调整。这样,对于直播视频的每个音/视频帧,可以基于前一音/视频帧对应的时间戳,对该音/视频帧对应的时间戳进行调整,并且可以以本次调整后的时间戳为基础,继续调整后续音/视频帧的时间戳,从而可以保证直播视频的整个直播数据流的时间戳连续稳定,提高了直播视频的播放稳定性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种基于CDN集群的直播服务的网络框架图;
图2是本发明实施例提供的一种调整直播视频的时间戳的方法流程图;
图3是本发明实施例提供的一种调整直播视频的时间戳的装置结构示意图;
图4是本发明实施例提供的一种网络设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种调整直播视频的时间戳的方法,该方法的执行主体可以是网络设备,其中,参考如图1所示的基于CDN集群的直播服务的网络框架,网络设备可以是该网络框架中的任意设备,可以是用于录制直播视频的主播端,也可以是用于直播视频传输路径中的任意CDN节点(包括推流边缘节点、CDN中转节点和拉流边缘节点),还可以是用于播放直播视频的观众端。网络设备可以具备直播视频处理功能,可以以音/视频帧为单位获取直播视频的直播数据流,并可以对每个音/视频帧分别进行处理。网络设备可以包括处理器、存储器和收发器,处理器可以用于进行下述流程中执行调整直播视频的时间戳的处理,存储器可以用于存储处理过程中需要的数据以及产生的数据,如前一音/视频帧的时间戳、时间戳异常判断标准等,收发器可以用于接收和发送处理过程中的相关数据,如直播视频的音/视频帧等。本实施例中以网络设备为推流边缘节点为例进行说明,其余情况与之类似,必要处将进行详细说明。此处,如果直播数据流的音/视频帧对应的时间戳已被调整过,则该音/视频帧的传输路径中的后续网络设备无需再对相应的时间戳进行重复调整。需要说明的是,本发明申请中的“音/视频帧”可以理解为音频帧和视频帧,在对调整音频帧对应的时间戳时只考虑音频帧,在调整视频帧对应的时间戳时仅考虑视频帧。
下面将结合具体实施方式,对图1所示的处理流程进行详细的说明,内容可以如下:
步骤101,获取目标直播视频的目标音/视频帧,确定目标音/视频帧对应的时间戳。
其中,目标音/视频帧可以为目标直播视频的直播数据流中的任一音/视频帧。
在实施中,主播端可以采集主播用户在直播时需要录制的音视频数据,然后生成直播数据流,并在内容优化、编码和封装一系列处理后,将最终生成的直播数据流推送到CDN集群中指定的推流边缘节点处。以目标直播视频为例,推流边缘节点可以以音/视频帧为单位接收主播端推送来的目标直播视频的音视频数据,这样,在获取到目标直播视频的目标音/视频帧后,可以对目标音/视频帧进行解封装处理,并确定目标音/视频帧对应的时间戳。可以理解,对于获取到的目标直播视频的每个音/视频帧,均需要确定其对应的时间戳,并执行后续调整其时间戳的处理。需要说明的是,如果执行时间戳调整的网络设备为主播端,则主播端可以在封装目标音/视频帧后,且在向推流边缘节点发送该目标音/视频帧前,对目标音/视频帧执行本实施例中步骤201至步骤203的处理。
可选的,可以仅对存在时间戳调整需求的直播视频执行时间戳调整处理,相应的处理可以如下:获取目标直播视频的目标音/视频帧,如果目标直播视频存在时间戳调整需求,则确定目标音/视频帧对应的时间戳。
在实施中,推流边缘节点中可以预先存储有时间戳调整需求列表,该时间戳调整需求列表中可以记录有所有存在时间戳调整需求的直播视频。这样,当推流边缘节点获取到目标直播视频的目标音/视频帧后,可以通过该时间戳调整需求列表判断目标直播视频是否存在时间戳调整需求。如果存在,则可以确定目标音/视频帧对应的时间戳,并进行后续调整时间戳的处理。此处的时间戳调整需求列表可以是技术人员预先设定的,其中可以以直播平台为单位进行记录,如记录需要对哪些直播平台的直播视频进行时间戳调整,也可以以直播视频为单位进行记录,如记录需要对哪些直播视频进行时间戳调整,还可以以时间段为单位进行记录,如记录需要在哪个时间段内对直播视频进行时间戳调整。需要说明的是,如果调整时间戳的处理由其它网络设备执行,技术人员则可以将上述时间戳调整需求列表存储在具体执行时间戳调整处理的网络设备中。
可选的,可以根据用户对于直播视频的播放体验评价来判断是否需要调整直播视频的时间戳调整需求,相应的处理可以如下:获取目标直播视频的播放体验评价,根据播放体验评价为目标直播视频设置时间戳调整需求。
在实施中,直播平台的运营方可以在用户观看直播视频时,以推送的方式邀请用户反馈对于直播视频的播放体验评价,并将汇总后的所有播放体验评价提供给用于调整直播视频的时间戳的网络设备。以网络设备为推流边缘节点为例,推流边缘节点在获取到目标直播视频的播放体验评价后,可以先判断是否已对目标直播视频进行时间戳调整,如果否,则可以利用预设的关键词对所有播放体验评价进行过滤,得到和时间戳调整需求相关的播放体验评价,然后统计这些播放体验评价的数量,如果数量大于预设阈值,则可以为目标直播视频设置时间戳调整需求。此处预设的关键词可以是用于体现时间戳调整需求的关键词,如“直播不兼容”、“视频无法播放”等。
步骤202,根据目标音/视频帧的前一音/视频帧对应的时间戳,判断目标音/视频帧对应的时间戳是否异常。
在实施中,推流边缘节点在确定了目标音/视频帧对应的时间戳之后,可以调取目标音/视频帧的前一音/视频帧(即获取目标音/视频帧之前,最新获取到的音/视频帧)对应的时间戳,然后按照预设的时间戳异常判断标准,基于目标音/视频帧对应的时间戳和前一音/视频帧对应的时间戳,判断目标音/视频帧对应的时间戳是否异常。
步骤203,如果异常,则基于前一音/视频帧对应的时间戳,对目标音/视频帧对应的时间戳进行调整。
在实施中,如果判断出目标音/视频帧对应的时间戳出现异常,推流边缘节点则可以基于前一音/视频帧对应的时间戳,对目标音/视频帧对应的时间戳进行调整。之后,可以对调整后的目标音/视频帧重新进行封装,再继续传输目标音/视频帧。而如果目标音/视频帧对应的时间戳正常,推流边缘节点则可以直接对目标音/视频帧进行再次封装,然后继续传输目标音/视频帧。需要说明的是,在后续传输过程中,目标音/视频帧将会经过多个CDN中转节点,到达拉流边缘节点,然后由拉流边缘节点传输到观众端,如果上述推流边缘节点未对目标音/视频帧进行时间戳的调整,则上述CDN中转节点、拉流边缘节点和观众端均可以进行调整时间戳的处理。
可选的,如果某音/视频帧对应的时间戳与前一音/视频帧对应的时间戳间隔太大,则可以认为该音/视频帧对应的时间戳异常,相应的,针对此种异常,步骤203的处理可以如下:如果目标音/视频帧对应的时间戳大于前一音/视频帧对应的时间戳,且二者差值大于预设时差阈值,则将目标音/视频帧对应的时间戳调整为前一音/视频帧对应的时间戳与预设时差阈值之和。
在实施中,推流边缘节点可以采用差分阈值滤波法,对直播数据流的时间戳进行处理,以防止出现时间戳陡增的情况。具体的,在判断目标音/视频帧对应的时间戳是否异常时,推流边缘节点可以先计算目标音/视频帧对应的时间戳tn与其前一音/视频帧对应的时间戳tn-1的差值△t,然后比较该差值△t是否大于预设时差阈值t*,如果是,则表明目标音/视频帧对应的时间戳异常,这时,推流边缘节点则可以将目标音/视频帧对应的时间戳tn调整为前一音/视频帧对应的时间戳tn-1与预设时差阈值t*之和,即tn=tn-1+t*。
可选的,如果某音/视频帧对应的时间戳小于前一音/视频帧对应的时间戳,则可以认为该音/视频帧对应的时间戳异常,相应的,针对此种异常,步骤203的处理可以如下:如果目标音/视频帧对应的时间戳小于前一音/视频帧对应的时间戳,则将目标音/视频帧对应的时间戳调整为前一音/视频帧对应的时间戳。
在实施中,推流边缘节点可以对直播数据流中时间戳不递增的部分进行保持递增处理,以避免由于时间戳乱序而无法播放的问题。具体的,在判断目标音/视频帧对应的时间戳是否异常时,推流边缘节点可以先判断目标音/视频帧对应的时间戳tn与其前一音/视频帧对应的时间戳tn-1之间的大小,如果目标音/视频帧对应的时间戳tn小于前一音/视频帧对应的时间戳tn-1,则表明目标音/视频帧对应的时间戳异常,这时,推流边缘节点可以将目标音/视频帧对应的时间戳tn调整为前一音/视频帧对应的时间戳tn-1,即tn=tn-1,以保证播放器能够快速播放直播视频。
可选的,为了提高针对直播播放器的兼容性,可以对直播数据流的时间戳进行整体偏移调整,以固定时间戳的起始值,相应的处理可以如下:确定获取到的目标直播视频的首个音/视频帧对应的时间戳,将目标音/视频帧对应的时间戳减去首个音/视频帧对应的时间戳后得到的时间戳更新为目标音/视频帧对应的时间戳。
在实施中,推流边缘节点在获取到目标直播视频的首个音/视频帧后,可以记录该首个音/视频帧对应的时间戳,之后,可以基于该时间戳对目标直播视频的直播数据流进行时间戳偏移调整。具体的,以目标音/视频帧为例,推流边缘节点在获取到目标音/视频帧之后,可以将目标音/视频帧对应的时间戳减去已记录的上述首个音/视频帧对应的时间戳,然后将目标音/视频帧对应的时间戳更新为上述相减后得到的时间戳。这样,可以提高目标直播视频对于直播播放器的兼容性,同时可以有效避免直播播放器由于直播数据流的起始时间戳过大而无法播放直播视频的情况。
可选的,为了保证直播视频的音频和视频同步,可以在步骤203之后对直播视频的音/视频帧进一步调整,相应的处理可以如下:根据目标音频帧对应的时间戳的调整情况,对目标视频帧对应的时间戳进行调整;和/或,根据目标视频帧对应的时间戳的调整情况,对目标音频帧对应的时间戳进行调整。
在实施中,推流边缘节点在基于前一音频帧对应的时间戳,对目标音频帧对应的时间戳进行调整后,可以基于本次音频帧的时间戳的调整情况,对目标视频帧对应的时间戳进行调整,如本次调整后,目标直播视频的音频帧的时间戳整体前移了1s,那么可以将视频帧的时间戳也相应的整体前移1s。同理,推流边缘节点在基于前一视频帧对应的时间戳,对目标视频帧对应的时间戳进行调整后,可以基于本次视频帧的时间戳的调整情况,对目标音频帧对应的时间戳进行调整。
本发明实施例中,获取目标直播视频的目标音/视频帧,确定目标音/视频帧对应的时间戳;根据目标音/视频帧的前一音/视频帧对应的时间戳,判断目标音/视频帧对应的时间戳是否异常;如果异常,则基于前一音/视频帧对应的时间戳,对目标音/视频帧对应的时间戳进行调整。这样,对于直播视频的每个音/视频帧,可以基于前一音/视频帧对应的时间戳,对该音/视频帧对应的时间戳进行调整,并且可以以本次调整后的时间戳为基础,继续调整后续音/视频帧的时间戳,从而可以保证直播视频的整个直播数据流的时间戳连续稳定,提高了直播视频的播放稳定性。
基于相同的技术构思,本发明实施例还提供了一种调整直播视频的时间戳的装置,如图3所示,所述装置包括:
确定模块301,用于获取目标直播视频的目标音/视频帧,确定所述目标音/视频帧对应的时间戳;
判断模块302,用于根据所述目标音/视频帧的前一音/视频帧对应的时间戳,判断所述目标音/视频帧对应的时间戳是否异常;
调整模块303,用于如果异常,则基于所述前一音/视频帧对应的时间戳,对所述目标音/视频帧对应的时间戳进行调整。
可选的,所述调整模块303,具体用于:
如果所述目标音/视频帧对应的时间戳大于所述前一音/视频帧对应的时间戳,且二者差值大于预设时差阈值,则将所述目标音/视频帧对应的时间戳调整为所述前一音/视频帧对应的时间戳与所述预设时差阈值之和。
可选的,所述调整模块303,具体用于:
如果所述目标音/视频帧对应的时间戳小于所述前一音/视频帧对应的时间戳,则将所述目标音/视频帧对应的时间戳调整为所述前一音/视频帧对应的时间戳。
可选的,所述调整模块303,还用于:
确定获取到的所述目标直播视频的首个音/视频帧对应的时间戳,将所述目标音/视频帧对应的时间戳减去所述首个音/视频帧对应的时间戳后得到的时间戳更新为所述目标音/视频帧对应的时间戳。
可选的,所述确定模块301,具体用于:
获取目标直播视频的目标音/视频帧,如果所述目标直播视频存在时间戳调整需求,则确定所述目标音/视频帧对应的时间戳。
可选的,所述装置还包括:
设置模块,用于获取所述目标直播视频的播放体验评价,根据所述播放体验评价为所述目标直播视频设置时间戳调整需求。
可选的,所述调整模块303,还用于:
根据所述目标音频帧对应的时间戳的调整情况,对所述目标视频帧对应的时间戳进行调整;和/或,
根据所述目标视频帧对应的时间戳的调整情况,对所述目标音频帧对应的时间戳进行调整。
本发明实施例中,获取目标直播视频的目标音/视频帧,确定目标音/视频帧对应的时间戳;根据目标音/视频帧的前一音/视频帧对应的时间戳,判断目标音/视频帧对应的时间戳是否异常;如果异常,则基于前一音/视频帧对应的时间戳,对目标音/视频帧对应的时间戳进行调整。这样,对于直播视频的每个音/视频帧,可以基于前一音/视频帧对应的时间戳,对该音/视频帧对应的时间戳进行调整,并且可以以本次调整后的时间戳为基础,继续调整后续音/视频帧的时间戳,从而可以保证直播视频的整个直播数据流的时间戳连续稳定,提高了直播视频的播放稳定性。
需要说明的是:上述实施例提供的调整直播视频的时间戳的装置在调整直播视频的时间戳时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的调整直播视频的时间戳的装置与调整直播视频的时间戳的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图4是本发明实施例提供的网络设备的结构示意图。该网络设备400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器422(例如,一个或一个以上处理器)和存储器432,一个或一个以上存储应用程序442或数据444的存储介质430(例如一个或一个以上海量存储设备)。其中,存储器432和存储介质430可以是短暂存储或持久存储。存储在存储介质430的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对网络设备400中的一系列指令操作。更进一步地,中央处理器422可以设置为与存储介质430通信,在网络设备400上执行存储介质430中的一系列指令操作。
网络设备400还可以包括一个或一个以上电源429,一个或一个以上有线或无线网络接口450,一个或一个以上输入输出接口458,一个或一个以上键盘456,和/或,一个或一个以上操作***441,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD等等。
网络设备400可以包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行上述调整直播视频的时间戳的指令。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种调整直播视频的时间戳的方法,其特征在于,所述方法包括:
获取目标直播视频的目标音/视频帧,确定所述目标音/视频帧对应的时间戳;
根据所述目标音/视频帧的前一音/视频帧对应的时间戳,判断所述目标音/视频帧对应的时间戳是否异常;
如果异常,则基于所述前一音/视频帧对应的时间戳,对所述目标音/视频帧对应的时间戳进行调整。
2.根据权利要求1所述的方法,其特征在于,所述如果异常,则基于所述前一音/视频帧对应的时间戳,对所述目标音/视频帧对应的时间戳进行调整,包括:
如果所述目标音/视频帧对应的时间戳大于所述前一音/视频帧对应的时间戳,且二者差值大于预设时差阈值,则将所述目标音/视频帧对应的时间戳调整为所述前一音/视频帧对应的时间戳与所述预设时差阈值之和。
3.根据权利要求1所述的方法,其特征在于,所述如果异常,则基于所述前一音/视频帧对应的时间戳,对所述目标音/视频帧对应的时间戳进行调整,包括:
如果所述目标音/视频帧对应的时间戳小于所述前一音/视频帧对应的时间戳,则将所述目标音/视频帧对应的时间戳调整为所述前一音/视频帧对应的时间戳。
4.根据权利要求1所述的方法,其特征在于,所述获取目标直播视频的目标音/视频帧之后,还包括:
确定获取到的所述目标直播视频的首个音/视频帧对应的时间戳,将所述目标音/视频帧对应的时间戳减去所述首个音/视频帧对应的时间戳后得到的时间戳更新为所述目标音/视频帧对应的时间戳。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述获取目标直播视频的目标音/视频帧,确定所述目标音/视频帧对应的时间戳,包括:
获取目标直播视频的目标音/视频帧,如果所述目标直播视频存在时间戳调整需求,则确定所述目标音/视频帧对应的时间戳。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
获取所述目标直播视频的播放体验评价,根据所述播放体验评价为所述目标直播视频设置时间戳调整需求。
7.根据权利要求1所述的方法,其特征在于,所述对所述目标音/视频帧对应的时间戳进行调整之后,还包括:
根据所述目标音频帧对应的时间戳的调整情况,对所述目标视频帧对应的时间戳进行调整;和/或,
根据所述目标视频帧对应的时间戳的调整情况,对所述目标音频帧对应的时间戳进行调整。
8.一种调整直播视频的时间戳的装置,其特征在于,所述装置包括:
确定模块,用于获取目标直播视频的目标音/视频帧,确定所述目标音/视频帧对应的时间戳;
判断模块,用于根据所述目标音/视频帧的前一音/视频帧对应的时间戳,判断所述目标音/视频帧对应的时间戳是否异常;
调整模块,用于如果异常,则基于所述前一音/视频帧对应的时间戳,对所述目标音/视频帧对应的时间戳进行调整。
9.根据权利要求8所述的装置,其特征在于,所述调整模块,具体用于:
如果所述目标音/视频帧对应的时间戳大于所述前一音/视频帧对应的时间戳,且二者差值大于预设时差阈值,则将所述目标音/视频帧对应的时间戳调整为所述前一音/视频帧对应的时间戳与所述预设时差阈值之和。
10.根据权利要求8所述的装置,其特征在于,所述调整模块,具体用于:
如果所述目标音/视频帧对应的时间戳小于所述前一音/视频帧对应的时间戳,则将所述目标音/视频帧对应的时间戳调整为所述前一音/视频帧对应的时间戳。
11.根据权利要求8所述的装置,其特征在于,所述调整模块,还用于:
确定获取到的所述目标直播视频的首个音/视频帧对应的时间戳,将所述目标音/视频帧对应的时间戳减去所述首个音/视频帧对应的时间戳后得到的时间戳更新为所述目标音/视频帧对应的时间戳。
12.根据权利要求8-11任一项所述的装置,其特征在于,所述确定模块,具体用于:
获取目标直播视频的目标音/视频帧,如果所述目标直播视频存在时间戳调整需求,则确定所述目标音/视频帧对应的时间戳。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
设置模块,用于获取所述目标直播视频的播放体验评价,根据所述播放体验评价为所述目标直播视频设置时间戳调整需求。
14.根据权利要求8所述的装置,其特征在于,所述调整模块,还用于:
根据所述目标音频帧对应的时间戳的调整情况,对所述目标视频帧对应的时间戳进行调整;和/或,
根据所述目标视频帧对应的时间戳的调整情况,对所述目标音频帧对应的时间戳进行调整。
15.一种网络设备,其特征在于,所述网络设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至7任一所述的调整直播视频的时间戳的方法。
16.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至7任一所述的调整直播视频的时间戳的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811089865.4A CN109089130B (zh) | 2018-09-18 | 2018-09-18 | 一种调整直播视频的时间戳的方法和装置 |
US16/486,035 US20210368223A1 (en) | 2018-09-18 | 2018-11-02 | Method and apparatus for adjusting timestamp of live streaming video |
PCT/CN2018/113729 WO2020056877A1 (zh) | 2018-09-18 | 2018-11-02 | 一种调整直播视频的时间戳的方法和装置 |
EP18934311.4A EP3852376A4 (en) | 2018-09-18 | 2018-11-02 | METHOD AND DEVICE FOR ADAPTING THE TIME STAMP OF A LIVE RADIO VIDEO |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811089865.4A CN109089130B (zh) | 2018-09-18 | 2018-09-18 | 一种调整直播视频的时间戳的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109089130A true CN109089130A (zh) | 2018-12-25 |
CN109089130B CN109089130B (zh) | 2020-05-22 |
Family
ID=64842045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811089865.4A Active CN109089130B (zh) | 2018-09-18 | 2018-09-18 | 一种调整直播视频的时间戳的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210368223A1 (zh) |
EP (1) | EP3852376A4 (zh) |
CN (1) | CN109089130B (zh) |
WO (1) | WO2020056877A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112218156A (zh) * | 2020-10-09 | 2021-01-12 | 海信视像科技股份有限公司 | 一种调节视频动态对比度的方法及显示设备 |
CN112261418A (zh) * | 2020-09-18 | 2021-01-22 | 网宿科技股份有限公司 | 一种传输直播视频数据的方法和直播加速*** |
CN113395531A (zh) * | 2021-05-14 | 2021-09-14 | 广州虎牙科技有限公司 | 播放切换方法、装置、电子设备及计算机可读存储介质 |
WO2022142481A1 (zh) * | 2020-12-31 | 2022-07-07 | 杭州星犀科技有限公司 | 音视频数据的处理方法、直播装置、电子设备和存储介质 |
CN114979681A (zh) * | 2022-04-11 | 2022-08-30 | 上海哔哩哔哩科技有限公司 | 流媒体数据的时间戳更新方法及装置 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111343477B (zh) * | 2020-03-09 | 2022-05-06 | 北京达佳互联信息技术有限公司 | 数据传输方法、装置、电子设备及存储介质 |
CN112218127B (zh) * | 2020-10-16 | 2022-03-01 | 广州方硅信息技术有限公司 | 虚拟直播方法、装置、设备及存储介质 |
US11818189B2 (en) * | 2021-01-06 | 2023-11-14 | Tencent America LLC | Method and apparatus for media streaming |
CN113824689B (zh) * | 2021-08-24 | 2022-11-29 | 北京百度网讯科技有限公司 | 边缘计算网络、数据传输方法、装置、设备和存储介质 |
CN113949898B (zh) * | 2021-10-13 | 2024-03-08 | 北京奇艺世纪科技有限公司 | 多媒体处理方法、装置、设备和存储介质 |
CN113891132B (zh) * | 2021-10-25 | 2024-07-19 | 北京字节跳动网络技术有限公司 | 一种音视频同步监控方法、装置、电子设备及存储介质 |
CN114979739B (zh) * | 2022-05-25 | 2024-02-27 | 新疆美特智能安全工程股份有限公司 | 视频通信中的音频处理方法及*** |
CN116233472B (zh) * | 2023-05-08 | 2023-07-18 | 湖南马栏山视频先进技术研究院有限公司 | 一种音频视频同步的方法和云端处理*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090135854A1 (en) * | 2007-11-27 | 2009-05-28 | Mark Bettin | System and method for clock synchronization |
US20130336379A1 (en) * | 2012-06-13 | 2013-12-19 | Divx, Llc | System and Methods for Encoding Live Multimedia Content with Synchronized Resampled Audio Data |
CN105846940A (zh) * | 2016-03-30 | 2016-08-10 | 乐视控股(北京)有限公司 | 时间戳容错控制方法及装置 |
CN106507217A (zh) * | 2016-10-27 | 2017-03-15 | 腾讯科技(北京)有限公司 | 视频流的时间戳的处理方法和装置 |
CN108462896A (zh) * | 2018-03-23 | 2018-08-28 | 北京潘达互娱科技有限公司 | 直播数据流处理方法、装置及电子设备 |
CN108495164A (zh) * | 2018-04-09 | 2018-09-04 | 珠海全志科技股份有限公司 | 音视频同步处理方法及装置、计算机装置及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103167342B (zh) * | 2013-03-29 | 2016-07-13 | 天脉聚源(北京)传媒科技有限公司 | 一种音视频同步处理装置及方法 |
CN103731716B (zh) * | 2014-01-08 | 2017-01-18 | 珠海全志科技股份有限公司 | 一种ts流播放中的音视频同步方法 |
CN107979777A (zh) * | 2016-10-25 | 2018-05-01 | 央视国际网络无锡有限公司 | 一种直播流无缝切换方法及装置 |
CN107147919B (zh) * | 2017-06-19 | 2020-11-27 | 网宿科技股份有限公司 | 直播快速启播方法及*** |
-
2018
- 2018-09-18 CN CN201811089865.4A patent/CN109089130B/zh active Active
- 2018-11-02 WO PCT/CN2018/113729 patent/WO2020056877A1/zh unknown
- 2018-11-02 EP EP18934311.4A patent/EP3852376A4/en active Pending
- 2018-11-02 US US16/486,035 patent/US20210368223A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090135854A1 (en) * | 2007-11-27 | 2009-05-28 | Mark Bettin | System and method for clock synchronization |
US20130336379A1 (en) * | 2012-06-13 | 2013-12-19 | Divx, Llc | System and Methods for Encoding Live Multimedia Content with Synchronized Resampled Audio Data |
CN105846940A (zh) * | 2016-03-30 | 2016-08-10 | 乐视控股(北京)有限公司 | 时间戳容错控制方法及装置 |
CN106507217A (zh) * | 2016-10-27 | 2017-03-15 | 腾讯科技(北京)有限公司 | 视频流的时间戳的处理方法和装置 |
CN108462896A (zh) * | 2018-03-23 | 2018-08-28 | 北京潘达互娱科技有限公司 | 直播数据流处理方法、装置及电子设备 |
CN108495164A (zh) * | 2018-04-09 | 2018-09-04 | 珠海全志科技股份有限公司 | 音视频同步处理方法及装置、计算机装置及存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112261418A (zh) * | 2020-09-18 | 2021-01-22 | 网宿科技股份有限公司 | 一种传输直播视频数据的方法和直播加速*** |
CN112218156A (zh) * | 2020-10-09 | 2021-01-12 | 海信视像科技股份有限公司 | 一种调节视频动态对比度的方法及显示设备 |
WO2022142481A1 (zh) * | 2020-12-31 | 2022-07-07 | 杭州星犀科技有限公司 | 音视频数据的处理方法、直播装置、电子设备和存储介质 |
CN113395531A (zh) * | 2021-05-14 | 2021-09-14 | 广州虎牙科技有限公司 | 播放切换方法、装置、电子设备及计算机可读存储介质 |
CN113395531B (zh) * | 2021-05-14 | 2023-08-11 | 广州虎牙科技有限公司 | 播放切换方法、装置、电子设备及计算机可读存储介质 |
CN114979681A (zh) * | 2022-04-11 | 2022-08-30 | 上海哔哩哔哩科技有限公司 | 流媒体数据的时间戳更新方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2020056877A1 (zh) | 2020-03-26 |
EP3852376A4 (en) | 2021-12-22 |
US20210368223A1 (en) | 2021-11-25 |
CN109089130B (zh) | 2020-05-22 |
EP3852376A1 (en) | 2021-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109089130A (zh) | 一种调整直播视频的时间戳的方法和装置 | |
CN106470352B (zh) | 直播频道播放方法、装置及*** | |
JP6385447B2 (ja) | 動画提供方法および動画提供システム | |
CN107426629B (zh) | 一种流媒体文件处理方法及直播*** | |
CN111010614A (zh) | 一种显示直播字幕的方法、装置、服务器及介质 | |
US10341672B2 (en) | Method and system for media synchronization | |
CN106060055B (zh) | 一种电视视频播放方法及*** | |
KR101934200B1 (ko) | 미디어 동기화 방법 및 시스템 | |
EP2866451A1 (en) | Method and apparatus for IP video signal synchronization | |
CN109168059A (zh) | 一种在不同设备上分别播放音频与视频的唇音同步方法 | |
CN101232611B (zh) | 图像处理设备及其方法 | |
EP2640084A2 (en) | Video distribution system, apparatus, method and medium for distributing time shifted content starting from a selected chapter | |
CN103685264A (zh) | 轮播媒体分片的方法、客户端及*** | |
US20180367827A1 (en) | Player client terminal, system, and method for implementing live video synchronization | |
CN109714622A (zh) | 一种视频数据处理方法、装置及电子设备 | |
CN101931775A (zh) | 一种录像方法及装置 | |
CN105979289A (zh) | 一种视频的生成、播放方法和装置 | |
Kooij et al. | Playout delay of TV signals: measurement system design, validation and results | |
CN109218759A (zh) | 推送媒体流的方法、装置、服务器及存储介质 | |
CN111726641A (zh) | 直播视频的播放处理方法、装置及服务器 | |
US20220295127A1 (en) | Consolidating content streams to conserve bandwidth | |
CN106303672A (zh) | 一种基于录播视频的同步播放方法及装置 | |
CN109413371A (zh) | 视频帧率计算方法及装置 | |
CN108650541A (zh) | 实现不同设备同步播放视频的方法和*** | |
CN105898435A (zh) | 一种同步数据的方法和装置 |
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 |