CN111343504B - 视频处理方法、装置、计算机设备和存储介质 - Google Patents

视频处理方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN111343504B
CN111343504B CN202010433505.2A CN202010433505A CN111343504B CN 111343504 B CN111343504 B CN 111343504B CN 202010433505 A CN202010433505 A CN 202010433505A CN 111343504 B CN111343504 B CN 111343504B
Authority
CN
China
Prior art keywords
video
stream
slice
sub
downloading
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
Application number
CN202010433505.2A
Other languages
English (en)
Other versions
CN111343504A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010433505.2A priority Critical patent/CN111343504B/zh
Publication of CN111343504A publication Critical patent/CN111343504A/zh
Application granted granted Critical
Publication of CN111343504B publication Critical patent/CN111343504B/zh
Priority to JP2022539104A priority patent/JP7431329B2/ja
Priority to PCT/CN2021/091889 priority patent/WO2021233123A1/zh
Priority to US17/732,486 priority patent/US20220256205A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • 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/44008Processing 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 operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请涉及内容分发处理技术,特别涉及一种视频处理方法、装置、计算机设备和存储介质。所述方法包括:通过至少两个通道下载视频流,得到至少两个视频子流;从所述至少两个视频子流的补充增强信息帧中提取视频切片编号;根据提取的视频切片编号确定所述至少两个视频子流中的相应视频子流缺失视频切片;从所述相应视频子流对应的视频源端下载缺失的所述视频切片;将下载的所述视频切片和所述至少两个视频子流,按照所述视频切片编号的顺序写入客户端中进行播放。采用本方法能够在降低服务器压力的同时,还可以降低播放延迟时间。

Description

视频处理方法、装置、计算机设备和存储介质
技术领域
本申请涉及视频处理技术领域,特别是涉及一种视频处理方法、装置、计算机设备和存储介质。
背景技术
随着视频处理技术和互联网技术的不断发展,越来越多的用户可以利用客户端连接互联网来选择观看自己喜欢的视频,为广大用户提供了极大的便利。对于视频播放而言,卡顿是分析视频播放质量的重要指标,传统的视频播放方案中,为了避免在视频播放过程中出现卡顿的问题,客户端通常会缓存一部分视频数据,将缓存视频数据的这段时间称为保护窗。
而传统的视频播放方案中,各客户端均是通过指定协议从服务端获取视频数据。当客户端数量达到一定规模后,服务端将承受巨大的I/O(Input/Output,输入/输出)和带宽等压力。若服务器无法及时处理客户端的请求,客户端将会出现卡顿的问题。
为了解决上述问题,在播放视频的过程中,可以从视频源端(如其它服务器或其它客户端)下载一部分视频数据,从而缓解服务器的处理压力以避免卡顿。若从视频源端下载部分视频数据,则需要在保护窗的基础上添加一段延迟以用于视频数据传输,即除了从服务器下载所要播放的视频数据,还会从其它视频源端下载所要播放的视频数据,从而可以大大降低了服务器的压力。然而,采用传统视频播放方案也进一步增大了播放延迟的时间。
发明内容
基于此,有必要针对上述技术问题,提供一种能够在降低服务器压力的同时,还可以降低视频播放延迟时间的视频处理方法、装置、计算机设备和存储介质。
一种视频处理方法,所述方法包括:
通过至少两个通道下载视频流,得到至少两个视频子流;
从所述至少两个视频子流的补充增强信息帧中提取视频切片编号;
根据提取的视频切片编号确定所述至少两个视频子流中的相应视频子流缺失视频切片;
从所述相应视频子流对应的视频源端下载缺失的所述视频切片;
将下载的所述视频切片和所述至少两个视频子流,按照所述视频切片编号的顺序写入客户端中进行播放。
一种视频处理装置,所述装置包括:
第一下载模块,用于通过至少两个通道下载视频流,得到至少两个视频子流;
提取模块,用于从所述两个视频子流的补充增强信息帧中提取视频切片编号;
确定模块,用于根据提取的视频切片编号确定所述至少两个视频子流中的相应视频子流缺失视频切片;
第二下载模块,用于从所述相应视频子流对应的视频源端下载缺失的所述视频切片;
播放模块,用于将下载的所述视频切片和所述至少两个至少视频子流,按照所述视频切片编号的顺序写入客户端中进行播放。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
通过至少两个通道下载视频流,得到至少两个视频子流;
从所述至少两个视频子流的补充增强信息帧中提取视频切片编号;
根据提取的视频切片编号确定所述至少两个视频子流中的相应视频子流缺失视频切片;
从所述相应视频子流对应的视频源端下载缺失的所述视频切片;
将下载的所述视频切片和所述至少两个视频子流,按照所述视频切片编号的顺序写入客户端中进行播放。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
通过至少两个通道下载视频流,得到至少两个视频子流;
从所述至少两个视频子流的补充增强信息帧中提取视频切片编号;
根据提取的视频切片编号确定所述至少两个视频子流中的相应视频子流缺失视频切片;
从所述相应视频子流对应的视频源端下载缺失的所述视频切片;
将下载的所述视频切片和所述至少两个视频子流,按照所述视频切片编号的顺序写入客户端中进行播放。
上述视频处理方法、装置、计算机设备和存储介质,不仅仅从服务器下载视频流,而是分至少两个通道下载视频流,从而可以降低服务器的压力。从各视频子流的补充增强信息帧中提取视频切片编号,根据提取视频切片编号便可确定该至少两个视频子流中哪一个视频子流是否缺失视频切片,从而可以从对应的视频源端快速补充缺失的视频切片,大大的降低了视频播放延迟的时间。
一种视频处理方法,所述方法包括:
接收视频采集***推送目标视频格式的原始视频流;
对所述原始视频流依次进行切片处理,得到对应的视频切片;
对所得的视频切片进行编号,得到视频切片编号;
将所述视频切片编号保存于补充增强信息帧中,得到切片后的所述目标视频格式的视频流;
将所述视频流发送至内容分发网络***的目标服务器,以便所述目标服务器根据客户端发送的视频播放指令返回对应的视频流。
一种视频处理装置,所述装置包括:
接收模块,用于接收视频采集***推送目标视频格式的原始视频流;
处理模块,用于对所述原始视频流依次进行切片处理,得到对应的视频切片;
编号模块,用于对所得的视频切片进行编号,得到视频切片编号;
保存模块,用于将所述视频切片编号保存于补充增强信息帧中,得到切片后的所述目标视频格式的视频流;
发送模块,用于将所述视频流发送至内容分发网络***的目标服务器,以便所述目标服务器根据客户端发送的视频播放指令返回对应的视频流。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收视频采集***推送目标视频格式的原始视频流;
对所述原始视频流依次进行切片处理,得到对应的视频切片;
对所得的视频切片进行编号,得到视频切片编号;
将所述视频切片编号保存于补充增强信息帧中,得到切片后的所述目标视频格式的视频流;
将所述视频流发送至内容分发网络***的目标服务器,以便所述目标服务器根据客户端发送的视频播放指令返回对应的视频流。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收视频采集***推送目标视频格式的原始视频流;
对所述原始视频流依次进行切片处理,得到对应的视频切片;
对所得的视频切片进行编号,得到视频切片编号;
将所述视频切片编号保存于补充增强信息帧中,得到切片后的所述目标视频格式的视频流;
将所述视频流发送至内容分发网络***的目标服务器,以便所述目标服务器根据客户端发送的视频播放指令返回对应的视频流。
上述视频处理方法、装置、计算机设备和存储介质,通过对视频采集***推送的原始视频流进行切片处理,对所得的视频切片进行编号,并将所得的视频切片编号保存于补充增强信息帧中,从而客户端可以利用补充增强信息帧中的视频切片编号确定是否出现视频切片缺失的情况,以便于客户端可以及时地补充缺失的视频切片,从而有利于降低客户端播放视频时的延迟时间。
附图说明
图1为一个实施例中视频处理方法的应用环境图;
图2为一个实施例中视频处理方法的流程示意图;
图3为一个实施例中预加载视频流并播放的步骤的流程示意图;
图4为另一个实施例中视频处理方法的流程示意图;
图5为另一个实施例中视频处理方法的流程示意图;
图6为对FLV流媒体格式的原始视频流进行P2P切片的流程示意图;
图7为直播视频流传输过程的流程示意图;
图8为一个实施例中视频处理装置的结构框图;
图9为另一个实施例中视频处理装置的结构框图;
图10为另一个实施例中视频处理装置的结构框图;
图11为一个实施例中计算机设备的内部结构图;
图12为另一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的视频处理方法,可以应用于如图1所示的应用环境中。其中,终端102、其它用户的终端(以下简称其它终端)104、CDN(Content Delivery Network,内容分发网络)***中的目标服务器106、转码服务器108、视频采集***110之间通过网络进行通信,如图1所示。终端102通过至少两个通道下载视频流(如从内容分发网络***的目标服务器106或其它客户端104下载视频流),得到至少两个视频子流;从该至少两个视频子流的补充增强信息帧中提取视频切片编号;根据提取的视频切片编号确定至少两个视频子流中的相应视频子流缺失视频切片;从相应视频子流对应的视频源端下载缺失的视频切片;将下载的视频切片和至少两个视频子流,按照视频切片编号的顺序写入客户端中进行播放。
其中,终端102中安装有视频播放的客户端,以便用来播放视频。当其它终端104需要播放视频时,可以从目标服务器106下载视频流,也可以从终端102下载部分视频流(即下载某个视频子流)。终端102和其它终端104可以包括但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。目标服务器106和转码服务器108可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,图2为本申请实施例提供的一种视频处理方法,以该方法应用于图1中的终端102为例进行说明,包括以下步骤:
S202,通过至少两个通道下载视频流,得到至少两个视频子流。
其中,视频流可以是直播视频流,也可以是录播视频流,还可以是其它非直播形式的视频流。在下载视频流之前或下载过程中,可以对视频流划分为两个或两个以上的视频子流。
直播视频流可以由直播视频的视频切片所组成。录播视频流可以由预先录制视频的视频切片所组成。每个视频切片可以是由一个或多个视频帧所构成,在后续实施例中,以视频流为直播视频流、且以视频切片由一个视频帧构成为例进行阐述。
此外,每个视频切片可以是采用特定视频格式对视频帧进行封装所得。该视频格式可以包括但不限于FLV(FlashVideo,Flash视频)流媒体格式、RMVB(RealMedia,可变比特率)格式、MPEG(Moving Picture Experts Group,动态图像专家组)格式和AVI(AudioVideo Interleaved,音频视频交错)格式等等。
视频流为直播视频流时,视频子流可以是由直播视频流中的视频切片所构成,例如,直播视频流为1、2、3、...、4n+3,对应地,第1个视频子流可以是0、4、8、...、4n;第2个视频子流可以是1、5、9、...、4n+1;第3个视频子流可以是2、6、10、...、4n+2;第4个视频子流可以是3、7、11、...、4n+3。其中,上述n为大于或等于0的正整数。
在一个实施例中,视频流是由转码服务器对视频采集***推送的原始视频流依次进行切片处理所得;视频切片编号是由转码服务器对切片后的各视频切片进行编号所得。
其中,原始视频流包括原始直播视频流,原始直播视频流的视频格式可以包括但不限于FLV流媒体格式、RMVB格式、MPEG格式和AVI格式等等。在后续实施例中,以原始直播视频流和直播视频流为FLV流媒体格式的视频流为例进行阐述。
具体地,转码服务器接收视频采集***推送目标视频格式的原始视频流,对原始视频流依次进行转码,在转码的过程中进行切片处理,得到对应的视频切片;对所得的视频切片进行编号,得到视频切片编号;将视频切片编号保存于补充增强信息帧中,得到转码并打上编号的视频流;将切片后的视频流发送至内容分发网络***的目标服务器,以便目标服务器根据客户端发送的视频播放指令返回对应的视频流。其中,该客户端是指安装于终端上的可用来播放视频的客户端。
在一个实施例中,视频采集***拍摄目标对象得到视频数据,然后采用特定的视频格式对所得的视频数据进行封装,得到由多个视频数据包组成的原始视频流。
例如,视频流为直播视频流时,视频采集***按照FLV媒体流格式对视频数据进行封装,从而得到FLV媒体流格式的直播视频流。
对于S202,在播放初期,终端可以只从内容分发网络***的目标服务器下载视频流;在结束播放初期之后(即下载完初期的播放视频流之后),终端可以从内容分发网络***的目标服务器和其它客户端下载视频流;此外,在结束播放初期之后,终端还可以只从其它客户端下载视频流。其中,其它客户端可以指其它终端上安装的可用来播放视频的客户端。因此,可以将S202分为以下几个场景进行阐述:
场景1,播放初期,终端只从内容分发网络***的目标服务器下载视频流。
在一个实施例中,S202具体可以包括:终端将所要下载的视频流划分为至少两个视频子流;从内容分发网络***的目标服务器中下载至少两个视频子流。例如,终端可以将0~30s或者10~30s的视频流划分4个视频子流,从内容分发网络***的目标服务器中下载4个视频子流。
在一个实施例中,终端按照预设的编号规则对待下载的视频流划分为至少两个子流。此时,终端可以从内容分发网络***的目标服务器中下载视频子流。
例如,视频流为直播视频流时,将直播视频流分为4个视频子流,具体划分如下所示:
1)第1个视频子流,将视频切片编号为4n的视频切片化为第1个视频子流。比如,将视频切片编号为0、4、8…的视频切片化为第1个视频子流。终端从内容分发网络***的目标服务器中下载第1个视频子流。
2)第2个视频子流,将视频切片编号为4n+1的视频切片化为第2个视频子流。比如,将视频切片编号为1、5、9…的视频切片化为第1个视频子流。终端从内容分发网络***的目标服务器中下载第2个视频子流。
3)第3个视频子流,将视频切片编号为4n+2的视频切片化为第3个视频子流。比如,将视频切片编号为2、6、10…的视频切片化为第3个视频子流。终端从内容分发网络***的目标服务器中下载第3个视频子流。
4)第4个视频子流,将视频切片编号为4n+3的视频切片化为第4个视频子流。比如,将视频切片编号为3、7、11…的视频切片化为第4个视频子流。终端从内容分发网络***的目标服务器中下载第4个视频子流。
需要指出的是,在下载过程中,第1个视频子流、第2个视频子流、第3个视频子流和第4个视频子流可以是同时从内容分发网络***的目标服务器下载。其中,上述的n为大于或等于0的正整数。
场景2,在结束播放初期之后,终端可以分别从内容分发网络***的目标服务器和其它客户端下载视频流。
在一个实施例中,终端通过客户端与至少一个其它客户端建立通信连接;S202具体可以包括:终端从其它客户端下载至少一个视频子流;从内容分发网络***的目标服务器下载剩余的视频子流。
例如,视频流为直播视频流时,终端可以将0~30s或者10~30s的直播视频流划分4个视频子流,可以从其它客户端下载2个视频子流,并停止从内容分发网络***的目标服务器中下载该2个视频子流;此外,终端从内容分发网络***的目标服务器中下载另外2个视频子流。
在一个实施例中,从其它客户端下载至少一个视频子流的步骤,具体可以包括:终端在该至少两个视频子流中,选取至少一个目标视频子流;从其它客户端下载目标视频子流。该方法还包括:当确定从其它客户端下载目标视频子流时,终端暂停从目标服务器中下载目标视频子流。
其中,在从其它客户端下载目标视频子流之前,该目标视频子流可以从内容分发服务器下载。当确定从其它客户端下载目标视频子流时,终端则暂停从目标服务器中下载目标视频子流。
在一个实施例中,当终端与其它客户端建立通信连接、且选取至少一个目标视频子流时,可以确定从其它客户端下载该目标视频子流。此时,终端一方面可以从其它客户端下载目标视频子流,另一方面暂停从目标服务器中下载目标视频子流。
在一个实施例中,终端按照预设的编号规则对待下载的视频流进行划分,即划分为至少两个视频子流,将其中至少一个视频子流从其它客户端下载,将剩余视频子流从内容分发网络***的目标服务器中下载。
例如,视频流为直播视频流时,将直播视频流分为4个视频子流进行下载,具体如下所示:
1)第1个视频子流,终端从其它客户端下载第1个视频子流,并且暂停从内容分发网络***的目标服务器中下载第1个视频子流。
2)第2个视频子流,终端从其它客户端下载第2个视频子流,并且暂停从内容分发网络***的目标服务器中下载第2个视频子流。
3)第3个视频子流,终端从内容分发网络***的目标服务器中下载第3个视频子流。
4)第4个视频子流,终端从内容分发网络***的目标服务器中下载第4个视频子流。
场景3,在结束播放初期之后,终端可以只从其它客户端下载视频流。
在一个实施例中,终端通过客户端与至少一个其它客户端建立通信连接;S202具体可以包括:终端从其它客户端下载该至少两个的视频子流。
例如,视频流为直播视频流时,终端可以将0~30s或者10~30s的直播视频流划分4个,然后从其它客户端中下载4个视频子流。
在一个实施例中,终端按照预设的编号规则对待下载的视频流进行子流划分,即划分为至少两个视频子流,将该至少两个视频子流从其它客户端下载。
例如,视频流为直播视频流时,将直播视频流分为4个视频子流进行下载,具体如下所示:
1)第1个视频子流,终端从其它客户端下载第1个视频子流,并且暂停从内容分发网络***的目标服务器中下载第1个视频子流。
2)第2个视频子流,终端从其它客户端下载第2个视频子流,并且暂停从内容分发网络***的目标服务器中下载第2个视频子流。
3)第3个视频子流,终端从内容分发网络***的目标服务器中下载第3个视频子流,并且暂停从内容分发网络***的目标服务器中下载第3个视频子流。
4)第4个视频子流,终端从内容分发网络***的目标服务器中下载第4个视频子流,并且暂停从内容分发网络***的目标服务器中下载第4个视频子流。
S204,从至少两个视频子流的补充增强信息帧中提取视频切片编号。
其中,SEI(Supplemental Enhancement Information,补充增强信息)帧用于向视频流中加入额外信息,集成于视频流中。
在一个实施例中,终端从各视频子流中定位到补充增强信息帧,并在补充增强信息帧中提取出视频切片编号。
S206,根据提取的视频切片编号确定至少两个视频子流中的相应视频子流缺失视频切片。
在一个实施例中,S206具体可以包括:终端判断该至少两个视频子流中是否缺失视频切片编号;若存在至少一个视频子流缺失视频切片编号,则按照缺失的视频切片编号确定至少一个视频子流中所缺失的视频切片。
在一个实施例中,终端在分个下载视频流时,每一个视频子流通常是按照视频切片编号的大小顺序进行下载的。因此,每一个下载的视频子流中视频切片编号是具有连续性的,具有大小顺序。例如,第1个视频子流的视频切片编号是0、4、8、12、...、4n。
在一个实施例中,终端按照视频切片编号的连续性确定至少两个视频子流中的相应视频子流是否缺失视频切片编号,若是,则确定相应视频子流不是完整的数据流,则执行S208。例如,若下载的第1个视频子流为0、4、8、16、...、4n,根据视频切片的连续性可知,所下载的第1个视频子流不完整,缺失了编号为12的视频切片,则需要立即将编号为12的视频切片进行下载。
S208,从相应视频子流对应的视频源端下载缺失的视频切片。
其中,该视频源端可以是内容分发网络***中的目标服务器,也可以是其它客户端。
在一个实施例中,终端确定缺失的视频切片对应的视频源端,从该视频源端下载缺失的视频切片。
具体地,终端确定缺失的视频切片对应的是内容分发网络***中的目标服务器,则向该目标服务器发送携带所缺失的视频切片编号的下载请求,从该目标服务器下载缺失的视频切片。终端确定缺失的视频切片对应的是其它客户端,则向该其它客户端发送携带所缺失的视频切片编号的下载请求,从该其它客户端下载缺失的视频切片。
S210,将下载的视频切片和至少两个视频子流,按照视频切片编号的顺序写入客户端中进行播放。
在一个实施例中,S210具体可以包括:终端将下载的视频切片和至少两个视频子流进行保存;将保存的视频切片和各视频子流按照视频切片编号的顺序依次写入客户端,得到相应的待播放视频流;对待播放视频流中的各视频切片依次进行渲染,得到待播放图像序列;通过客户端播放待播放图像序列。
在一个实施例中,终端调用渲染工具对待播放视频流中的各视频切片进行渲染,得到对应的待播放图像序列,通过客户端播放该待播放图像序列。
例如,终端调用WebGL(Web Graphics Library,网络图形库),或OpenGL ES(OpenGraphics Library for Embedded Systems,嵌入式***开放式图形库),或OpenGL ES2.0版本对待播放视频流中的各视频切片进行渲染,得到待播放图像序列。
上述实施例中,不仅仅从服务器下载视频流,而是分至少两个通道下载视频流,从而可以降低服务器的压力。从各视频子流的补充增强信息帧中提取视频切片编号,根据提取视频切片编号便可确定该至少两个视频子流中哪一个视频子流是否缺失视频切片,从而可以从对应的视频源端快速补充缺失的视频切片,大大的降低了视频播放延迟的时间。
在一个实施例中,如图3所示,S202之前,该方法还可以包括:
S302,获取视频播放指令。
其中,该视频播放指令中可携带视频的视频标识。例如,用户若想看某体育比赛的决赛,那么该视频播放指令中携带有该体育比赛的决赛标识。
在一个实施例中,终端在开启客户端之后,展示视频播放的入口页面,当检测到输入的针对待播放的视频标识的触发操作时,生成视频播放指令,并向内容分发网络***中的目标服务器发送视频播放指令,以及将展示的入口页面切换至视频播放页面。
S304,响应于视频播放指令,从内容分发网络***的目标服务器中下载预设时间范围内的完整视频流。
在一个实施例中,终端在获得视频播放指令时,向内容分发网络***的目标服务器发送视频播放指令,以便该目标服务器根据视频播放指令中的视频标识获取对应的预设时间范围内的完整视频流,然后将该完整视频流发送给客户端。
例如,以视频流为直播视频流为例,用户在某体育比赛的决赛直播第i分钟开始观看,那么可以先从内容分发网络***的目标服务器中下载第i分钟至第i+1分钟之内的完整直播视频流,以便客户端可以稳定播放该决赛视频。
S306,通过客户端播放该完整视频流。
在一个实施例中,终端调用渲染工具对该完整视频流中的各视频切片进行渲染,得到对应的待播放图像序列,通过客户端播放该待播放图像序列。
例如,以视频流为直播视频流为例,终端调用WebGL,或OpenGL ES,或OpenGLES2.0版本对该完整直播视频流中的各视频切片进行渲染,得到待播放图像序列。
S308,当客户端在播放完整视频流过程中达到稳定播放状态时,通过至少两个通道下载预设时间范围外的视频流。
其中,稳定播放状态可以指:在单位播放时间内播放视频的帧数与预设帧率对应的视频帧数相同,从而使视频能够流畅播放,不出现卡顿的现象。例如,对于帧率为24fps的视频,在一秒之内需要播放24帧,若在播放时能达到每秒24帧的播放速度,则不会出现卡顿现象,表示处于稳定播放状态;若出现网络问题导致无法及时下载,或解码速度过慢,从而导致一秒之内播放的帧数少于24帧,则会出现卡顿现象,表示处于不稳定的播放状态。
上述S308可以参考上述实施例中的S202。
上述实施例中,在视频播放初期,先从内容分发网络***的目标服务器下载一段完整的视频流进行播放,以便避免出现卡顿的情况,当播放稳定时,开始分流下载视频流,从而可以降低服务器的压力。
在一个实施例中,如图4所示,图4为本申请提供的一种视频处理方法,以该方法应用于图1中的转码服务器108为例进行说明,包括以下步骤:
S402,接收视频采集***推送目标视频格式的原始视频流。
其中,原始视频流可以是原始的直播视频流、录播视频流或其它非直播形式的视频流。在后续实施例中,以原始视频流为原始直播视频流、且以视频切片由一个视频帧构成为例进行阐述。
目标视频格式可以包括但不限于FLV流媒体格式、RMVB格式、MPEG格式和AVI格式等等。视频采集***可以是专用的视频采集设备,如体育赛事直播时的视频采集设备,或者新闻发布会直播时的视频采集设备,又或者游戏直播或其它网络直播时所采用的终端设备等等。在后续实施例中,以原始视频流为FLV流媒体格式的视频流为例进行阐述。
在一个实施例中,转码服务器与视频采集***建立通信连接,然后接收视频采集***基于实施传输协议而发送的原始视频流。其中,实施传输协议可以是RTMP(Real TimeMessaging Protocol,实时消息传输协议)、HLS(Http Live Streaming,基于HTTP的流媒体实时传输)协议、WebRTC(Web Real-Time Communication,源自网页即时通信)协议。
S404,对原始视频流依次进行切片处理,得到对应的视频切片。
在一个实施例中,转码服务器对原始视频流依次进行转码,在转码的过程中进行切片处理,得到对应的视频切片。
S406,对所得的视频切片进行编号,得到视频切片编号。
在一个实施例中,转码服务器根据预设编号规则对所得的视频切片进行编号,得到视频切片编号。
S408,将视频切片编号保存于补充增强信息帧中,得到切片后的目标视频格式的视频流。
其中,原始视频流在转码切片之后,所得的视频流的格式与原始视频流相同,依然为目标视频格式。在后续实施例中,以视频流为FLV流媒体格式的视频流为例进行阐述。
SEI(Supplemental Enhancement Information,补充增强信息)帧用于向视频流中加入额外信息,集成于视频流中。
S410,将视频流发送至内容分发网络***的目标服务器,以便目标服务器根据客户端发送的视频播放指令返回对应的视频流。
在一个实施例中,转码服务器基于实施传输协议向内容分发网络***的目标服务器发送切片后的视频流,以便目标服务器根据客户端发送的视频播放指令返回对应的视频流。
其中,客户端从目标服务器可以通过至少两个通道下载视频流,得到至少两个视频子流,当视频子流中出现视频切片缺失,可以即时补充缺失的视频切片。以及,该客户端也可以从其它客户端下载视频子流。对于补充缺失视频切片以及从其它客户端下载视频子流的过程,可以参考上述实施例中的S202-S210。
例如,当接收到P2P切片流的视频播放指令时,目标服务器可以将视频流分多个视频子流向客户端发送;当接收到非P2P切片流的视频播放指令时,目标服务器可以将视频流直接向客户端发送。
此外,当客户端与其它客户端建立通信连接,并从其它客户端请求至少一个视频子流时,目标服务器则暂停向客户端发送该至少一个视频子流。
上述实施例中,通过对视频采集***推送的原始视频流进行切片处理,对所得的视频切片进行编号,并将所得的视频切片编号保存于补充增强信息帧中,从而客户端可以利用补充增强信息帧中的视频切片编号确定是否出现视频切片缺失的情况,以便于客户端可以及时地补充缺失的视频切片,从而有利于降低客户端播放视频时的延迟时间。
在一个实施例中,如图5所示,视频处理方法还包括:
S502,视频采集***向转码服务器推送目标视频格式的原始视频流。
S504,转码服务器在接收到原始视频流时,对原始视频流依次进行切片处理,得到对应的视频切片。
S506,转码服务器对所得的视频切片进行编号,得到视频切片编号。
S508,转码服务器将视频切片编号保存于补充增强信息帧中,得到切片后的目标视频格式的视频流。
S510,转码服务器将视频流发送至内容分发网络***的目标服务器(即CDN服务器),以便目标服务器根据客户端发送的视频播放指令返回对应的视频流。
S512,终端获取视频播放指令。
S514,终端响应于视频播放指令,从内容分发网络***的目标服务器中下载预设时间范围内的完整视频流。
S516,终端通过客户端播放完整视频流。
S518,终端当客户端在播放完整视频流过程中达到稳定播放状态时,通过至少两个通道下载视频流,得到至少两个视频子流。
在一个实施例中,S518具体可以包括:终端将所要下载的视频流划分为至少两个视频子流;从内容分发网络***的目标服务器中下载至少两个视频子流。
在一个实施例中,该方法还包括:终端通过客户端与至少一个其它客户端建立通信连接。S518具体可以包括:S518a,终端从其它客户端下载至少一个视频子流;S518b,从内容分发网络***的目标服务器下载剩余的视频子流。
在一个实施例中,上述从其它客户端下载至少一个视频子流的步骤,具体可以包括:终端在该至少两个视频子流中,选取至少一个目标视频子流;从其它客户端下载目标视频子流。该方法还包括:当确定从其它客户端下载目标视频子流时,终端暂停从目标服务器中下载目标视频子流。
S520,终端从各视频子流的补充增强信息帧中提取视频切片编号。
S522,终端根据提取的视频切片编号确定相应视频子流缺失视频切片。
在一个实施例中,S522具体可以包括:终端判断该至少两个视频子流中是否缺失视频切片编号;若存在至少一个视频子流缺失视频切片编号,则按照缺失的视频切片编号确定至少一个视频子流中所缺失的视频切片。
S524,终端从相应视频子流对应的视频源端下载缺失的视频切片。
S526,终端将下载的视频切片和至少两个视频子流进行保存。
S528,终端将保存的视频切片和各视频子流按照视频切片编号的顺序依次写入客户端,得到相应的待播放视频流。
S530,终端对待播放视频流中的各视频切片依次进行渲染,得到待播放图像序列。
S532,终端通过客户端播放待播放图像序列。
其中,上述的原始视频流和视频流均可以是FLV流媒体格式的视频流。
作为一个示例,以原始直播视频流和直播视频流为FLV流媒体格式的视频流为例进行举例说明,如下:
如图6所示,图6为对FLV流媒体格式的原始直播视频流进行P2P切片的流程:
1)主播通过视频采集***(如电脑或手机等)推流到转码服务器。
此外,也可以根据用户设置或者***配置要求完成自动推流。其中,推流是指将原始直播视频流向转码服务器进行推送。
2)切片,转码服务器对视频切片的video tag(视频标签)进行编号,并把编号信息(即上述实施例中的视频切片编号)保存于SEI帧中。
3)得到经过切片后的直播视频流,然后将该直播视频流发送至直播CDN服务器(即上述实施例中内容分发网络***的目标服务器)。
其中,该直播视频流仍然保持标准的FLV流媒体格式。
4)P2P客户端向CDN服务器发送P2P切片流请求(P2P切片的视频播放指令),普通客户端发送flv请求(非P2P切片的视频播放指令)。由于经过P2P切片后所得的直播视频流仍然保持标准的FLV流媒体格式,所以CDN服务器在接收到这两种请求时可以进行统一回源,即在接收到这两种请求时可以直接从转码服务器获取切片后的直播视频流,无需获取不同视频格式的直播视频流。
如图7所示,图7为直播视频流传输的流程图,具体如下:
(1)开始进行直播之前,终端从CDN服务器下载一段固定时长的完整直播数据流(对应的切片编号为0,1,2,3,4,5…),然后进行播放,直至达到稳定播放状态时,执行步骤(2)。
例如,先下载30s的一段完整直播视频流,如图7所示,步骤1.1,下载30s内的完整直播视频流;步骤1.2,从该完整直播视频流中解析视频流标签;步骤1.3,从该完整直播视频流中解析视频切片;当完成步骤1.3时执行步骤5,处理视频切片;步骤6,存储所下载的视频切片;步骤7,在客户端中写入视频切片;步骤8,通过客户端的播放器对写入的视频切片进行播放。
(2)当达到稳定播放状态时,终端分多个通道进行视频流下载。
例如,将视频流分为4个视频子流:
Figure 631939DEST_PATH_IMAGE001
其中,终端开始分通道下载直播视频流时,可以都从CDN服务器下载,具体如下所述:步骤2.1,从CDN服务器下载视频子流;步骤2.2,从下载的视频子流中解析视频流标签;步骤2.3,从下载的视频子流中解析视频切片;然后执行步骤5。
当其它客户端有直播视频流时,可以从其它客户端下载直播视频流,具体如步骤(3)所述。
(3)终端通过客户端与其他播放相同直播视频的其它客户端建立通信连接,并从该其它客户端请求一个视频子流。
如图7所示,终端向其它客户端请求视频子流1(1,5,9…),具体过程可参考步骤2.1-2.3;此外,当终端向其它客户端请求视频子流1时,则停止从CDN服务器下载视频子流1。
(4)处理视频切片,终端在收到数据时,会获取SEI帧中的编号信息,通过数据编号的连续性,判断直播视频流传输的完整性,以便及时进行下载缺失的视频切片。
当确定某个视频子流中缺失视频切片时,则会从缺失视频切片的视频子流所对应的CDN服务器或其它客户端下载缺失的视频切片,具体过程如图7所示,步骤3.1,从缺失视频切片的视频子流所对应的CDN服务器或其它客户端下载缺失的视频切片;步骤3.2,解析该视频切片所对应的视频流标签;步骤3.3,解析该视频切片;解析完成之后,执行步骤5。
例如:终端请求视频子流0,实际收到(0,4,8,16…)的视频子流,当收到切片16时,即可判断所收到的视频子流不完整,缺失编号12的视频切片,立刻对视频切片12进行下载。如此,就可以省去P2P窗口,降低延迟,实现超低延迟P2P。
(5)将所下载的视频切片和各直播视频流存储在本地,并按照视频切片编号的顺序依次写入播放器中,以便播放器进行播放。
(6)终端会通过客户端与其它客户端建立通信连接,其它客户端在发送视频子流时,根据编号顺序把相应视频子流的视频切片进行传输。
此外,某个其它客户端(或本端客户端)可能会同时接收多个其它客户端请求,则该某个其它客户端(或本端客户端)分别向发送请求的其它客户端按编号顺序发送视频切片。
在一个实施例中,当基于WebRTC协议的网页播放视频时,从WebRTC服务器下载视频子流进行播放,具体步骤如图7所示,步骤4.1,从WebRTC服务器下载视频子流;步骤4.2,合成视频切片;步骤4.3,解析视频切片;解析完成之后,执行步骤5;然后执行步骤8,存储所下载的视频切片,以在WebRTC网页中播放。
通过上述实施例,可以在不卡顿和保证P2P分享率的前提下,实现更低延迟的P2P视频直播,与现有P2P视频直播技术对比,延迟可以降低10s以上。
应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图8所示,图8为本申请实施例提供的一种视频处理装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:第一下载模块802、提取模块804、确定模块806、第二下载模块808和播放模块810,其中:
第一下载模块802,用于通过至少两个通道下载视频流,得到至少两个视频子流;
提取模块804,用于从至少两个视频子流的补充增强信息帧中提取视频切片编号;
确定模块806,用于根据提取的视频切片编号确定至少两个视频子流中的相应视频子流缺失视频切片;
第二下载模块808,用于从相应视频子流对应的视频源端下载缺失的视频切片;
播放模块810,用于将下载的视频切片和至少两个视频子流,按照视频切片编号的顺序写入客户端中进行播放。
在一个实施例中,第一下载模块802,还用于将所要下载的视频流划分为至少两个视频子流;从内容分发网络***的目标服务器中,通过至少两个通道分别下载至少两个视频子流。
在一个实施例中,如图9所示,该装置还包括:连接模块812;其中:
第一下载模块802,还用于从其它客户端下载至少一个视频子流;从目标服务器下载剩余的视频子流。
在一个实施例中,第一下载模块802,在各视频子流中,选取至少一个目标视频子流;从其它客户端下载目标视频子流;当确定从其它客户端下载目标视频子流时,暂停从目标服务器中下载目标视频子流。
在一个实施例中,确定模块806,还用于判断该至少两个视频子流中是否缺失视频切片编号;若存在至少一个视频子流缺失视频切片编号,则按照缺失的视频切片编号确定至少一个视频子流中所缺失的视频切片。
在一个实施例中,播放模块810,用于将下载的视频切片和至少两个视频子流进行保存;将保存的视频切片和各视频子流按照视频切片编号的顺序依次写入客户端,得到相应的待播放视频流;对待播放视频流中的各视频切片依次进行渲染,得到待播放图像序列;通过客户端播放待播放图像序列。
在一个实施例中,视频流是由转码服务器对视频采集***推送的原始视频流依次进行切片处理所得;视频切片编号是由转码服务器对切片后的各视频切片进行编号所得。
在一个实施例中,原始视频流和视频流均为FLV流媒体格式的视频流。
上述实施例中,不仅仅从服务器下载视频流,而是分至少两个通道下载视频流,从而可以降低服务器的压力。从各视频子流的补充增强信息帧中提取视频切片编号,根据提取视频切片编号便可确定该至少两个视频子流中哪一个视频子流是否缺失视频切片,从而可以从对应的视频源端快速补充缺失的视频切片,大大的降低了视频播放延迟的时间。
在一个实施例中,如图9所示,该装置还包括:获取模块814;其中:
获取模块814,用于通过至少两个通道下载视频流之前,获取视频播放指令;
第一下载模块802,还用于响应于视频播放指令,从内容分发网络***的目标服务器中下载预设时间范围内的完整视频流;
播放模块810,还用于通过客户端播放完整视频流;
第一下载模块802,还用于当客户端在播放完整视频流过程中达到稳定播放状态时,通过至少两个通道下载视频流。
上述实施例中,在视频播放初期,先从内容分发网络***的目标服务器下载一段完整的视频流进行播放,以便避免出现卡顿的情况,当播放稳定时,开始分流下载视频流,从而可以降低服务器的压力。
在一个实施例中,如图10所示,图10为本申请实施例提供的一种视频处理装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:接收模块1002、处理模块1004、编号模块1006、保存模块1008和发送模块1010;其中:
接收模块1002,用于接收视频采集***推送目标视频格式的原始视频流;
处理模块1004,用于对原始视频流依次进行切片处理,得到对应的视频切片;
编号模块1006,用于对所得的视频切片进行编号,得到视频切片编号;
保存模块1008,用于将视频切片编号保存于补充增强信息帧中,得到切片后的目标视频格式的视频流;
发送模块1010,用于将视频流发送至内容分发网络***的目标服务器,以便目标服务器根据客户端发送的视频播放指令返回对应的视频流。
在一个实施例中国,原始视频流和视频流可以均为FLV流媒体格式的视频流。
上述实施例中,通过对视频采集***推送的原始视频流进行切片处理,对所得的视频切片进行编号,并将所得的视频切片编号保存于补充增强信息帧中,从而客户端可以利用补充增强信息帧中的视频切片编号确定是否出现视频切片缺失的情况,以便于客户端可以及时地补充缺失的视频切片,从而有利于降低客户端播放视频时的延迟时间。
关于视频处理装置的具体限定可以参见上文中对于视频处理方法的限定,在此不再赘述。上述视频处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图11所示。该计算机设备包括通过***总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种视频处理方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:通过至少两个通道下载视频流,得到至少两个视频子流;从至少两个视频子流的补充增强信息帧中提取视频切片编号;根据提取的视频切片编号确定至少两个视频子流中的相应视频子流缺失视频切片;从相应视频子流对应的视频源端下载缺失的视频切片;将下载的视频切片和至少两个视频子流,按照视频切片编号的顺序写入客户端中进行播放。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:获取视频播放指令;响应于视频播放指令,从内容分发网络***的目标服务器中下载预设时间范围内的完整视频流;通过客户端播放完整视频流;当客户端在播放完整视频流过程中达到稳定播放状态时,通过至少两个通道下载视频流。
在一个实施例中,计算机程序被处理器执行通过至少两个通道下载视频流的步骤时,使得处理器具体执行以下步骤:将所要下载的视频流划分为至少两个视频子流;从内容分发网络***的目标服务器中下载至少两个视频子流。
在一个实施例中,计算机程序被处理器执行时,计算机程序被处理器执行通过至少两个通道下载视频流的步骤时,使得处理器具体执行以下步骤:从其它客户端下载至少一个视频子流;从内容分发网络***的目标服务器下载剩余的视频子流。
在一个实施例中,计算机程序被处理器执行从其它客户端下载至少一个视频子流的步骤时,使得处理器具体执行以下步骤:在该至少两个视频子流中,选取至少一个目标视频子流;从其它客户端下载目标视频子流。计算机程序被处理器执行时,使得处理器还执行以下步骤:当确定从其它客户端下载目标视频子流时,暂停从目标服务器中下载目标视频子流。
在一个实施例中,计算机程序被处理器执行根据提取的视频切片编号确定至少两个视频子流中的相应视频子流缺失视频切片的步骤时,使得处理器具体执行以下步骤:判断该至少两个视频子流中是否缺失视频切片编号;若存在至少一个视频子流缺失视频切片编号,则按照缺失的视频切片编号确定至少一个视频子流中所缺失的视频切片。
在一个实施例中,计算机程序被处理器执行将下载的视频切片和至少两个视频子流,按照视频切片编号的顺序写入客户端中进行播放的步骤时,使得处理器具体执行以下步骤:将下载的视频切片和至少两个视频子流进行保存;将保存的视频切片和各视频子流按照视频切片编号的顺序依次写入客户端,得到相应的待播放视频流;对待播放视频流中的各视频切片依次进行渲染,得到待播放图像序列;通过客户端播放待播放图像序列。
在一个实施例中,视频流是由转码服务器对视频采集***推送的原始视频流依次进行切片处理所得;视频切片编号是由转码服务器对切片后的各视频切片进行编号所得。
在一个实施例中,原始视频流和视频流均为FLV流媒体格式的视频流。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现以下步骤:通过至少两个通道下载视频流,得到至少两个视频子流;从至少两个视频子流的补充增强信息帧中提取视频切片编号;根据提取的视频切片编号确定至少两个视频子流中的相应视频子流缺失视频切片;从相应视频子流对应的视频源端下载缺失的视频切片;将下载的视频切片和至少两个视频子流,按照视频切片编号的顺序写入客户端中进行播放。
在一个实施例中,计算机程序被处理器执行时,使得处理器还执行以下步骤:获取视频播放指令;响应于视频播放指令,从内容分发网络***的目标服务器中下载预设时间范围内的完整视频流;通过客户端播放完整视频流;当客户端在播放完整视频流过程中达到稳定播放状态时,通过至少两个通道下载视频流。
在一个实施例中,计算机程序被处理器执行分通过至少两个通道下载视频流的步骤时,使得处理器具体执行以下步骤:将所要下载的视频流划分为至少两个视频子流;从内容分发网络***的目标服务器中,通过至少两个通道分别下载至少两个视频子流。
在一个实施例中,计算机程序被处理器执行时,计算机程序被处理器执行通过至少两个通道下载视频流的步骤时,使得处理器具体执行以下步骤:从其它客户端下载至少一个视频子流;从内容分发网络***的目标服务器下载剩余的视频子流。
在一个实施例中,计算机程序被处理器执行从其它客户端下载至少一个视频子流的步骤时,使得处理器具体执行以下步骤:在各视频子流中,选取至少一个目标视频子流;从其它客户端下载目标视频子流。计算机程序被处理器执行时,使得处理器还执行以下步骤:当确定从其它客户端下载目标视频子流时,暂停从目标服务器中下载目标视频子流。
在一个实施例中,计算机程序被处理器执行根据提取的视频切片编号确定至少两个视频子流中的相应视频子流缺失视频切片的步骤时,使得处理器具体执行以下步骤:判断该至少两个视频子流中是否缺失视频切片编号;若存在至少一个视频子流缺失视频切片编号,则按照缺失的视频切片编号确定至少一个视频子流中所缺失的视频切片。
在一个实施例中,计算机程序被处理器执行将下载的视频切片和至少两个视频子流,按照视频切片编号的顺序写入客户端中进行播放的步骤时,使得处理器具体执行以下步骤:将下载的视频切片和至少两个视频子流进行保存;将保存的视频切片和各视频子流按照视频切片编号的顺序依次写入客户端,得到相应的待播放视频流;对待播放视频流中的各视频切片依次进行渲染,得到待播放图像序列;通过客户端播放待播放图像序列。
在一个实施例中,视频流是由转码服务器对视频采集***推送的原始视频流依次进行切片处理所得;视频切片编号是由转码服务器对切片后的各视频切片进行编号所得。
在一个实施例中,原始视频流和视频流均为FLV流媒体格式的视频流。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是转码服务器,其内部结构图可以如图12所示。该计算机设备包括通过***总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储视频流数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种视频处理方法。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:接收视频采集***推送目标视频格式的原始视频流;对原始视频流依次进行切片处理,得到对应的视频切片;对所得的视频切片进行编号,得到视频切片编号;将视频切片编号保存于补充增强信息帧中,得到切片后的目标视频格式的视频流;将视频流发送至内容分发网络***的目标服务器,以便目标服务器根据客户端发送的视频播放指令返回对应的视频流。
在一个实施例中,原始视频流和视频流均为FLV流媒体格式的视频流。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现以下步骤:接收视频采集***推送目标视频格式的原始视频流;对原始视频流依次进行切片处理,得到对应的视频切片;对所得的视频切片进行编号,得到视频切片编号;将视频切片编号保存于补充增强信息帧中,得到切片后的目标视频格式的视频流;将视频流发送至内容分发网络***的目标服务器,以便目标服务器根据客户端发送的视频播放指令返回对应的视频流。
在一个实施例中,原始视频流和视频流均为FLV流媒体格式的视频流。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (24)

1.一种视频处理方法,其特征在于,所述方法包括:
获取视频播放指令,所述视频播放指令为P2P切片流请求或FLV请求;
当所述视频播放指令为P2P切片流请求时,通过至少两个通道下载视频流,得到至少两个视频子流;所述视频流的格式为目标视频格式,是由转码服务器对视频采集***推送的、且为所述目标视频格式的原始视频流依次进行切片处理所得;
从所述至少两个视频子流的补充增强信息帧中提取视频切片编号;
根据提取的视频切片编号的连续性确定所述至少两个视频子流中的相应视频子流缺失视频切片;
从所述相应视频子流对应的视频源端下载缺失的所述视频切片;
将下载的所述视频切片和所述至少两个视频子流,按照所述视频切片编号的顺序写入客户端中进行播放;
当所述视频播放指令为FLV请求时,直接下载所述视频流进行播放。
2.根据权利要求1所述的方法,其特征在于,所述通过至少两个通道下载视频流之前,所述方法还包括:
当所述视频播放指令为P2P切片流请求时,从内容分发网络***的目标服务器中下载预设时间范围内的完整视频流;
通过所述客户端播放所述完整视频流;
当所述客户端在播放所述完整视频流过程中达到稳定播放状态时,执行所述通过至少两个通道下载视频流的步骤。
3.根据权利要求1所述的方法,其特征在于,所述通过至少两个通道下载视频流包括:
将所要下载的视频流划分为至少两个视频子流;
从内容分发网络***的目标服务器中,通过至少两个通道分别下载所述至少两个视频子流。
4.根据权利要求1所述的方法,其特征在于,所述通过至少两个通道下载视频流包括:
从其它客户端下载至少一个视频子流;
从内容分发网络***的目标服务器下载剩余的视频子流。
5.根据权利要求4所述的方法,其特征在于,所述从其它客户端下载至少一个视频子流包括:
在所述至少两个视频子流中,选取至少一个目标视频子流;
从其它客户端下载所述目标视频子流;
所述方法还包括:当确定从其它客户端下载所述目标视频子流时,暂停从所述目标服务器中下载所述目标视频子流。
6.根据权利要求1所述的方法,其特征在于,所述根据提取的视频切片编号确定所述至少两个视频子流中的相应视频子流缺失视频切片包括:
判断所述至少两个视频子流中是否缺失视频切片编号;
若存在至少一个视频子流缺失视频切片编号,则按照缺失的所述视频切片编号确定所述至少一个视频子流中所缺失的视频切片。
7.根据权利要求1所述的方法,其特征在于,所述将下载的所述视频切片和所述至少两个视频子流,按照所述视频切片编号的顺序写入客户端中进行播放包括:
将下载的所述视频切片和所述至少两个视频子流进行保存;
将保存的视频切片和各视频子流按照所述视频切片编号的顺序依次写入客户端,得到相应的待播放视频流;
对所述待播放视频流中的各视频切片依次进行渲染,得到待播放图像序列;
通过所述客户端播放所述待播放图像序列。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述视频切片编号是由所述转码服务器对切片后的各视频切片进行编号所得。
9.根据权利要求8所述的方法,其特征在于,所述原始视频流和所述视频流均为FLV流媒体格式的视频流。
10.一种视频处理方法,其特征在于,所述方法包括:
接收视频采集***推送目标视频格式的原始视频流;
对所述原始视频流依次进行切片处理,得到对应的视频切片;
对所得的视频切片进行编号,得到视频切片编号;
将所述视频切片编号保存于补充增强信息帧中,得到切片后的所述目标视频格式的视频流;
将所述视频流发送至内容分发网络***的目标服务器,以便所述目标服务器根据不同客户端发送的P2P切片流请求和FLV请求进行统一回源得到所述视频流,并直接将所述视频流返回至所述FLV请求对应的客户端;以及,分至少两个通道返回所述视频流至所述P2P切片流请求对应的客户端,当所述P2P切片流请求对应的客户端根据视频切片编号的连续性确定返回的所述视频流的视频子流中出现视频切片缺失时,及时返回缺失的视频切片。
11.根据权利要求10所述的方法,其特征在于,所述原始视频流和所述视频流均为FLV流媒体格式的视频流。
12.一种视频处理装置,其特征在于,所述装置包括:
第一下载模块,用于获取视频播放指令,所述视频播放指令为P2P切片流请求或FLV请求;当所述视频播放指令为P2P切片流请求时,通过至少两个通道下载视频流,得到至少两个视频子流;所述视频流的格式为目标视频格式,是由转码服务器对视频采集***推送的、且为所述目标视频格式的原始视频流依次进行切片处理所得;
提取模块,用于从所述两个视频子流的补充增强信息帧中提取视频切片编号;
确定模块,用于根据提取的视频切片编号的连续性确定所述至少两个视频子流中的相应视频子流缺失视频切片;
第二下载模块,用于从所述相应视频子流对应的视频源端下载缺失的所述视频切片;
播放模块,用于将下载的所述视频切片和所述至少两个视频子流,按照所述视频切片编号的顺序写入客户端中进行播放;当所述视频播放指令为FLV请求时,直接下载所述视频流进行播放。
13.根据权利要求12所述的装置,其特征在于,所述第一下载模块,还用于当所述视频播放指令为P2P切片流请求时,从内容分发网络***的目标服务器中下载预设时间范围内的完整视频流;
所述播放模块,还用于通过所述客户端播放所述完整视频流;
所述第一下载模块,还用于当所述客户端在播放所述完整视频流过程中达到稳定播放状态时,通过至少两个通道下载视频流。
14.根据权利要求12所述的装置,其特征在于,所述第一下载模块,还用于将所要下载的视频流划分为至少两个视频子流;从内容分发网络***的目标服务器中,通过至少两个通道分别下载所述至少两个视频子流。
15.根据权利要求12所述的装置,其特征在于,所述第一下载模块,还用于从其它客户端下载至少一个视频子流;从内容分发网络***的目标服务器下载剩余的视频子流。
16.根据权利要求15所述的装置,其特征在于,所述第一下载模块,还用于在所述至少两个视频子流中,选取至少一个目标视频子流;从其它客户端下载所述目标视频子流;当确定从其它客户端下载所述目标视频子流时,暂停从所述目标服务器中下载所述目标视频子流。
17.根据权利要求12所述的装置,其特征在于,所述确定模块,还用于判断所述至少两个视频子流中是否缺失视频切片编号;若存在至少一个视频子流缺失视频切片编号,则按照缺失的所述视频切片编号确定所述至少一个视频子流中所缺失的视频切片。
18.根据权利要求12所述的装置,其特征在于,所述播放模块,还用于将下载的所述视频切片和所述至少两个视频子流进行保存;将保存的视频切片和各视频子流按照所述视频切片编号的顺序依次写入客户端,得到相应的待播放视频流;对所述待播放视频流中的各视频切片依次进行渲染,得到待播放图像序列;通过所述客户端播放所述待播放图像序列。
19.根据权利要求12至18任一项所述的装置,其特征在于,所述视频切片编号是由所述转码服务器对切片后的各视频切片进行编号所得。
20.根据权利要求19所述的装置,其特征在于,所述原始视频流和所述视频流均为FLV流媒体格式的视频流。
21.一种视频处理装置,其特征在于,所述装置包括:
接收模块,用于接收视频采集***推送目标视频格式的原始视频流;
处理模块,用于对所述原始视频流依次进行切片处理,得到对应的视频切片;
编号模块,用于对所得的视频切片进行编号,得到视频切片编号;
保存模块,用于将所述视频切片编号保存于补充增强信息帧中,得到切片后的所述目标视频格式的视频流;
发送模块,用于将所述视频流发送至内容分发网络***的目标服务器,以便所述目标服务器根据不同客户端发送的P2P切片流请求和FLV请求进行统一回源得到所述视频流,并直接将所述视频流返回至所述FLV请求对应的客户端;以及,分至少两个通道返回所述视频流至所述P2P切片流请求对应的客户端,当所述P2P切片流请求对应的客户端根据视频切片编号的连续性确定返回的所述视频流的视频子流中出现视频切片缺失时,及时返回缺失的视频切片。
22.根据权利要求21所述的装置,其特征在于,所述原始视频流和所述视频流均为FLV流媒体格式的视频流。
23.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至9,或10至11中任一项所述的方法的步骤。
24.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9,或10至11中任一项所述的方法的步骤。
CN202010433505.2A 2020-05-21 2020-05-21 视频处理方法、装置、计算机设备和存储介质 Active CN111343504B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202010433505.2A CN111343504B (zh) 2020-05-21 2020-05-21 视频处理方法、装置、计算机设备和存储介质
JP2022539104A JP7431329B2 (ja) 2020-05-21 2021-05-06 ビデオ処理方法、装置、コンピュータデバイスおよびコンピュータプログラム
PCT/CN2021/091889 WO2021233123A1 (zh) 2020-05-21 2021-05-06 视频处理方法、装置、计算机设备和存储介质
US17/732,486 US20220256205A1 (en) 2020-05-21 2022-04-28 Video processing method and apparatus, computer device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010433505.2A CN111343504B (zh) 2020-05-21 2020-05-21 视频处理方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN111343504A CN111343504A (zh) 2020-06-26
CN111343504B true CN111343504B (zh) 2020-09-18

Family

ID=71187582

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010433505.2A Active CN111343504B (zh) 2020-05-21 2020-05-21 视频处理方法、装置、计算机设备和存储介质

Country Status (4)

Country Link
US (1) US20220256205A1 (zh)
JP (1) JP7431329B2 (zh)
CN (1) CN111343504B (zh)
WO (1) WO2021233123A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111343504B (zh) * 2020-05-21 2020-09-18 腾讯科技(深圳)有限公司 视频处理方法、装置、计算机设备和存储介质
CN111782151A (zh) * 2020-07-03 2020-10-16 珠海金山网络游戏科技有限公司 一种下载管理方法与装置
CN112383792B (zh) * 2020-11-12 2023-04-18 咪咕视讯科技有限公司 直播内容同步处理方法、电子设备及存储介质
CN115484239B (zh) * 2022-09-15 2023-10-27 北京百度网讯科技有限公司 多媒体数据流的处理方法、装置、电子设备及存储介质
CN116993253B (zh) * 2023-07-12 2024-06-25 哈尔滨商业大学 一种实时物流信息跟踪方法及***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101945129A (zh) * 2010-09-10 2011-01-12 北京易视腾科技有限公司 P2p流媒体直播的低延时传输方法及***
EP2814194A1 (en) * 2010-06-01 2014-12-17 Global Invacom Ltd. Data transmission apparatus system and method
CN104967685A (zh) * 2015-06-25 2015-10-07 广东德诚网络科技有限公司 基于Flash P2P的流媒体多级缓存网络加速方法
CN105142035A (zh) * 2015-09-14 2015-12-09 桂林电子科技大学 一种视频流切片转发***及方法
CN108055594A (zh) * 2017-11-14 2018-05-18 北京百度网讯科技有限公司 边缘切片的实现方法、装置、计算机设备及存储介质
CN109819266A (zh) * 2017-11-20 2019-05-28 中兴通讯股份有限公司 一种cdn中心组网方法及***

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004080145A (ja) * 2002-08-12 2004-03-11 Canon Inc 映像サーバシステム及びその映像再生方法
US20080291999A1 (en) * 2007-05-24 2008-11-27 Julien Lerouge Method and apparatus for video frame marking
JP2009065551A (ja) * 2007-09-07 2009-03-26 Fujifilm Corp 関連情報伝達方法、関連情報伝達サーバ、端末装置、関連情報伝達システム
CN102497387A (zh) * 2011-11-11 2012-06-13 合一网络技术(北京)有限公司 一种基于P2P客户端状态分析的Flash视频分发方法
US20170105010A1 (en) * 2015-10-09 2017-04-13 Microsoft Technology Licensing, Llc Receiver-side modifications for reduced video latency
US10367874B2 (en) * 2016-11-04 2019-07-30 Verizon Patent And Licensing Inc. MPEG-DASH delivery over multicast
CN107277558B (zh) * 2017-06-19 2020-03-31 网宿科技股份有限公司 一种实现直播视频同步的播放器客户端、***及方法
US10291936B2 (en) * 2017-08-15 2019-05-14 Electronic Arts Inc. Overcoming lost or corrupted slices in video streaming
US10779012B2 (en) * 2018-12-04 2020-09-15 Agora Lab, Inc. Error concealment in video communications systems
CN111343504B (zh) * 2020-05-21 2020-09-18 腾讯科技(深圳)有限公司 视频处理方法、装置、计算机设备和存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2814194A1 (en) * 2010-06-01 2014-12-17 Global Invacom Ltd. Data transmission apparatus system and method
CN101945129A (zh) * 2010-09-10 2011-01-12 北京易视腾科技有限公司 P2p流媒体直播的低延时传输方法及***
CN104967685A (zh) * 2015-06-25 2015-10-07 广东德诚网络科技有限公司 基于Flash P2P的流媒体多级缓存网络加速方法
CN105142035A (zh) * 2015-09-14 2015-12-09 桂林电子科技大学 一种视频流切片转发***及方法
CN108055594A (zh) * 2017-11-14 2018-05-18 北京百度网讯科技有限公司 边缘切片的实现方法、装置、计算机设备及存储介质
CN109819266A (zh) * 2017-11-20 2019-05-28 中兴通讯股份有限公司 一种cdn中心组网方法及***

Also Published As

Publication number Publication date
CN111343504A (zh) 2020-06-26
JP7431329B2 (ja) 2024-02-14
JP2023511019A (ja) 2023-03-16
WO2021233123A1 (zh) 2021-11-25
US20220256205A1 (en) 2022-08-11

Similar Documents

Publication Publication Date Title
CN111343504B (zh) 视频处理方法、装置、计算机设备和存储介质
US11812080B2 (en) System and method for smooth transition of live and replay program guide displays
US10187668B2 (en) Method, system and server for live streaming audio-video file
KR101904244B1 (ko) 개량된 스트리밍 미디어 재생
CN114503599B (zh) 使用gltf2场景描述中的扩展来支持视频和音频数据
US9317188B2 (en) Devices and methods for providing navigation images associated with adaptive bit rate video content
US8438484B2 (en) Video preview module to enhance online video experience
CN111277869B (zh) 视频播放方法、装置、设备和存储介质
US20100242066A1 (en) Method of Performing Random Seek Preview for Streaming Video
US9666233B2 (en) Efficient video frame rendering in compliance with cross-origin resource restrictions
US9860285B2 (en) System, apparatus, and method for sharing a screen having multiple visual components
US11528523B2 (en) Method and system to share a snapshot extracted from a video transmission
US9648320B2 (en) Methods and systems for processing content
CN114222156A (zh) 视频剪辑方法、装置、计算机设备和存储介质
US11678019B2 (en) User interface (UI) engine for cloud UI rendering
US20170062004A1 (en) Method for enabling seamless and bidirectional playback of video
CN112866745B (zh) 流媒体视频数据处理方法、装置、计算机设备和存储介质
US10547878B2 (en) Hybrid transmission protocol
WO2013163221A1 (en) Systems and methods for adaptive streaming with augmented video stream transitions
US20230224557A1 (en) Auxiliary mpds for mpeg dash to support prerolls, midrolls and endrolls with stacking properties
US11799943B2 (en) Method and apparatus for supporting preroll and midroll during media streaming and playback
US20130287092A1 (en) Systems and Methods for Adaptive Streaming with Augmented Video Stream Transitions
CN117812362A (zh) 一种显示设备及播放动态内存回收方法
EP2946554B1 (en) System, apparatus and method for sharing a screen having multiple visual components
CN114760486A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40024838

Country of ref document: HK