CN109474854B - 视频播放方法、播放列表的生成方法及相关设备 - Google Patents

视频播放方法、播放列表的生成方法及相关设备 Download PDF

Info

Publication number
CN109474854B
CN109474854B CN201811447827.1A CN201811447827A CN109474854B CN 109474854 B CN109474854 B CN 109474854B CN 201811447827 A CN201811447827 A CN 201811447827A CN 109474854 B CN109474854 B CN 109474854B
Authority
CN
China
Prior art keywords
video
information
file
fragment
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
CN201811447827.1A
Other languages
English (en)
Other versions
CN109474854A (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.)
Bigo Technology Singapore Pte Ltd
Original Assignee
Guangzhou Baiguoyuan 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 Guangzhou Baiguoyuan Information Technology Co Ltd filed Critical Guangzhou Baiguoyuan Information Technology Co Ltd
Priority to CN201811447827.1A priority Critical patent/CN109474854B/zh
Publication of CN109474854A publication Critical patent/CN109474854A/zh
Application granted granted Critical
Publication of CN109474854B publication Critical patent/CN109474854B/zh
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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • 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 MPEG 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand

Abstract

本发明实施例公开了一种视频播放方法、播放列表的生成方法及相关设备,涉及计算机网络技术领域,该视频播放方法包括:基于播放列表接收针对视频文件的播放操作;依据所述播放操作,在所述播放列表中读取所述视频文件的第一索引文件信息;从所述第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息;依据所述第一分片地址信息下载所述视频文件的第一视频分片;在下载完所述第一视频分片后,依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息,其中,所述第二索引文件信息用于下载所述视频文件的第二视频分片;播放已下载的视频分片。本发实施例解决了现有技术中视频起播速度慢的问题,实现视频的快速起播。

Description

视频播放方法、播放列表的生成方法及相关设备
技术领域
本发明涉及计算机网络技术领域,尤其涉及一种视频播放方法、一种播放列表的生成方法、装置、设备及介质。
背景技术
现有视频点播系统通常是使用点直播流媒体传输协议(HTTP Live Streaming,HLS)实现的,如现有很多长视频点播系统都使用HLS协议进行实现。HLS是一个基于超文本传输协议(Hyper Text Transfer Protocol,HTTP)的流媒体网络传输协议。HLS工作原理是将一个视频流分成一个个小的分片数据,视频点播系统中的客户端可以一个个分片数据下载播放,并且客户端可以选择不同速率的视频,即允许媒体会话适应不同的数据速率。
在具体实现中,HLS通过一种M3U8文件格式描述视频的元数据。该M3U8文件是指UTF-8编码格式的M3U文件。如果视频提供多种码率,视频元数据可通过两级M3U8文件描述。这两级M3U8文件分为顶级M3U8文件和二级M3U8文件。其中,顶级M3U8文件存放着每个档位的视频信息,如码率、统一资源定位符(Uniform Resource Locator,URL)等;二级M3U8文件存放着每个分片数据的URL、时长等信息。客户端在播放之前,通常预先获取一个顶级M3U8列表,该顶级M3U8列表存放着顶级M3U8文件地址。当用户点击播放页中某个视频时,客户端首先根据顶级M3U8列表存放的顶级M3U8文件地址,下载用户选中视频的顶级M3U8文件,通过解析顶级M3U8文件,得到所选档位的二级M3U8地址,然后用得到这个二级M3U8地址下载二级M3U8文件,解析下载到的二级M3U8文件后,得到各个分片数据的URL和长度。随后,客户端可根据得到的各个分片数据的URL,从第一个分片数据开始,一个接一个地下载分片数据,然后在适当的时机开始播放视频。
如上所述,HLS协议实现对视频起播速度并没有做什么考虑。当存在两级M3U8文件,传统视频播放方法需要下载完2个M3U8文件才能开始请求下载视频的第一个分片数据,每个文件的下载都需要发送请求给服务器,因此需要至少一个往返时延(Round-TripTime,RTT)才能获取到数据。假设网速比较快,可以瞬间传完两个M3U8文件,也需要3个RTT才能收到视频的第一个传送流(Transport Stream,TS)文件数据。但实际应用中,存在服务器缓存不命中需要回源、TCP慢启动等情况,接收到第一个TS文件数据的时间一般会比预计的大,影响视频起播速度。
发明内容
有鉴于此,本发明实施例提供一种视频播放方法、播放列表的生成方法及相关设备,以解决现有技术中视频起播速度慢的问题,实现HLS视频流的快速起播。
第一方面,本发明实施例提供了一种视频播放方法,包括:基于播放列表接收针对视频文件的播放操作;依据所述播放操作,在所述播放列表中读取所述视频文件的第一索引文件信息;从所述第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息;依据所述第一分片地址信息下载所述视频文件的第一视频分片;在下载完所述第一视频分片后,依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息,其中,所述第二索引文件信息用于下载所述视频文件的第二视频分片;播放已下载的视频分片。
可选地,上述视频播放方法还包括:从所述第一索引文件信息或所述第二索引文件信息中提取视频分片的时长信息和字节信息;依据所述时长信息和所述字节信息,确定下载状态信息;当所述下载状态信息符合预设的播放条件,执行所述播放已下载的视频分片的步骤。
可选地,所述下载状态信息包括:分片总时长和分片下载耗时,所述分片总时长为依据所述时长信息确定的,所述分片下载耗时为依据所述字节信息确定的,所述方法还包括:检测所述分片下载耗时是否小于所述分片总时长;若所述分片下载耗时小于所述分片总时长,则确定所述下载状态信息符合预设的播放条件。
可选地,所述确定下载状态信息之前,还包括:获取缓冲字节数量信息和网络下载速率信息。其中,所述依据所述时长信息和所述字节信息,确定下载状态信息,包括:根据所述字节信息,缓冲字节数量信息以及所述网络下载速率信息,得到作为所述下载状态信息的分片下载耗时。
可选地,所述时长信息包括至少一个视频分片的播放时长,所述字节信息包括至少一个视频分片的字节数量。
可选地,所述第二视频分片包括所述视频文件中除所述第一视频分片外的视频分片,所述依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息之后,还包括:对所述第二索引文件信息进行解析,得到至少一个分片地址信息;依据所述至少一个分片地址信息下载所述视频文件的第二视频分片。
第二方面,本发明实施例还提供了一种播放列表的生成方法,包括:获取视频文件的第一索引文件信息;依据所述第一索引文件信息生成播放列表。其中,所述第一索引文件信息包括:所述视频文件的第一分片地址信息和第二索引文件地址信息,所述第一分片地址信息用于下载所述视频文件的第一视频分片,所述第二索引文件地址信息用于下载所述视频文件的第二索引文件信息,所述第二索引文件信息用于下载所述视频文件的第二视频分片。
可选地,所述第一索引文件信息还包括:视频分片的时长信息和字节信息;所述时长信息用于确定作为下载状态信息的分片总时长;所述字节信息用于确定作为所述下载状态信息的分片下载耗时。
可选地,所述时长信息包括至少一个视频分片的播放时长;所述字节信息包括至少一个视频分片的字节数量;所述第二视频分片包括所述视频文件中除所述第一视频分片外的视频分片。
第三方面,本发明实施例还提供了一种视频播放装置,包括:
播放操作接收模块,用于基于播放列表接收针对视频文件的播放操作;
索引文件信息读取模块,用于依据所述播放操作,在所述播放列表中读取所述视频文件的第一索引文件信息;
地址信息提取模块,用于从所述第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息;
视频分片下载模块,用于依据所述第一分片地址信息下载所述视频文件的第一视频分片;
索引文件信息下载模块,用于在下载完所述第一视频分片后,依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息,其中,所述第二索引文件信息用于下载所述视频文件的第二视频分片;
视频分片播放模块,用于播放已下载的视频分片。
可选地,上述视频播放装置还可以包括如下模块:
信息提取模块,用于从所述第一索引文件信息或所述第二索引文件信息中提取视频分片的时长信息和字节信息;
下载状态信息确定模块,用于依据所述时长信息和所述字节信息,确定下载状态信息;
播放触发模块,用于当所述下载状态信息符合预设的播放条件,触发视频分片播放模块360执行所述播放已下载的视频分片的步骤。
可选地,所述下载状态信息包括:分片总时长和分片下载耗时,所述分片总时长为依据所述时长信息确定的,所述分片下载耗时为依据所述字节信息确定的,上述视频播放装置还可以包括:检测模块。该检测模块,用于检测所述分片下载耗时是否小于所述分片总时长;若所述分片下载耗时小于所述分片总时长,则确定所述下载状态信息符合预设的播放条件。
可选地,上述视频播放装置还可以包括如下模块:信息获取模块。该信息获取模块,用于在下载状态信息确定模块确定下载状态信息之前,获取缓冲字节数量信息和网络下载速率信息。下载状态信息确定模块可以包括:分片下载耗时子模块。该分片下载耗时子模块,可以用于根据所述字节信息,缓冲字节数量信息以及所述网络下载速率信息,得到作为所述下载状态信息的分片下载耗时。
可选地,所述时长信息包括至少一个视频分片的播放时长,所述字节信息包括至少一个视频分片的字节数量。
可选地,所述第二视频分片包括所述视频文件中除所述第一视频分片外的视频分片。上述视频播放装置还包括:索引信息解析模块。该索引信息解析模块,可以用于在索引文件信息下载模块依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息之后,对所述第二索引文件信息进行解析,得到至少一个分片地址信息。视频分片下载模块,还用于依据所述至少一个分片地址信息下载所述视频文件的第二视频分片。
第四方面,本发明实施例还提供了一种设备,包括:处理器和存储器;所述存储器中存储有至少一条指令,所述指令由所述处理器执行,使得所述设备执行如第一方面所述的视频播放方法。
第五方面,本发明实施例还提供了一种计算机可读存储介质,所述存储介质中的指令由设备的处理器执行时,使得设备能够执行如第一方面所述的视频播放方法。
第六方面,本发明实施例还提供了一种播放列表的生成装置,包括:
索引文件信息获取模块,用于获取视频文件的第一索引文件信息;
播放列表生成模块,用于依据所述第一索引文件信息生成播放列表;
其中,所述第一索引文件信息包括:所述视频文件的第一分片地址信息和第二索引文件地址信息,所述第一分片地址信息用于下载所述视频文件的第一视频分片,所述第二索引文件地址信息用于下载所述视频文件的第二索引文件信息,所述第二索引文件信息用于下载所述视频文件的第二视频分片。
可选地,所述第一索引文件信息还包括:视频分片的时长信息和字节信息;所述时长信息用于确定作为下载状态信息的分片总时长;所述字节信息用于确定作为所述下载状态信息的分片下载耗时。
可选地,所述时长信息包括至少一个视频分片的播放时长;所述字节信息包括至少一个视频分片的字节数量;所述第二视频分片包括所述视频文件中除所述第一视频分片外的视频分片。
第七方面,本发明实施例还提供了一种服务器,包括:处理器和存储器;
所述存储器中存储有至少一条指令,所述指令由所述处理器执行,使得所述服务器执行如第二方面所述的播放列表的生成方法。
第八方面,本发明实施例还提供了一种计算机可读存储介质,所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如第二方面所述的播放列表的生成方法。
采用本发明实施例,在接收到的播放操作后,可依据该播放操作在播放列表中读取视频文件的第一索引文件信息,并可从该第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息,以依据第一分片地址信息下载视频文件的第一个视频分片,避免了现有视频播放方法需要获取顶级M3U8文件地址的麻烦,即解决了现有技术中由于获取顶级M3U8文件地址所造成的视频起播速度慢的技术问题;以及,在下载完第一视频分片后,依据提取到的第二索引文件地址下载该视频文件的第二索引文件信息,以便后续可以依据该第二索引文件信息继续下载视频文件的第二视频分片,随后可播放已下载的视频分片,实现了视频快速起播,减少视频起播时间,即减少了用户等待视频播放的时间,提升用户体验。
附图说明
图1是本发明的一种视频播放方法实施例的步骤流程示意图;
图2是本发明实施例的一种播放列表的生成方法的步骤流程示意图;
图3是本发明实施例中的一种视频播放装置的结构方框示意图;
图4是本发明一个示例中的一种设备的结构方框示意图;
图5是本发明实施例中的一种播放列表的生成装置的结构方框示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构或组成。
参照图1,示出了本发明的一种视频播放方法实施例的步骤流程示意图,具体可以包括如下步骤:
步骤110,基于播放列表接收针对视频文件的播放操作。
本发明实施例中,播放列表可以存放着一个或多个视频文件的第一索引文件信息,如存放着多个视频的顶级M3U8文件的内容信息等,并可用于显示该播放列表中各视频文件对应的视频名称,以方便用户选中其所需要观看的视频。针对视频文件的播放操作可以是指用户针对其所需要播放的视频提交的输入操作,如可以是用户点击播放列表中某一视频名称的操作等,本发明实施例对此不作具体限制。
在实际处理中,用于播放视频的客户端可以预先加载视频的播放列表,并显示该播放列表,如在客户端的播放页面上显示播放列表,使得用户可以基于该播放列表选择其所需要播放的视频。当用户需要播放视频时,可以基于播放列表选择其所需要播放的视频,并可针对选中的视频向客户端输入播放操作,即向客户端提交针对视频文件的播放操作,使得客户端可以接收到该播放操作。
步骤120,依据所述播放操作,在所述播放列表中读取所述视频文件的第一索引文件信息。
具体的,本发明实施例在接收到播放操作后,可以依据该播放操作携带的操作参数,如视频名称、视频文件标识等,确定出当前所需要播放的视频对应的视频文件,随后可以从在播放列表中读出该视频文件的第一索引文件信息,以依据第一索引文件信息下载该视频文件的第一视频分片。其中,第一索引文件信息可以包括视频文件的第一分片地址信息和第二索引文件地址信息等。
需要说明的是,本发明实施例中的第一分片地址信息可以用于下载视频文件的第一视频分片,如可以是视频的第一个视频分片的地址信息,用于下载视频的第一个视频分片等。第二索引文件地址信息可以用于下载视频文件的第二索引文件信息,如可以是视频的二级M3U8文件的地址信息,用于下载二级M3U8文件信息等。第二索引文件信息可以用于下载视频文件的第二视频分片,如可以用于下载视频文件中除了第一个视频分片之外的各个视频分片,具体可以包括视频文件中除了第一个视频分片之外的各个视频分片的地址信息,如可以包括视频的非首个视频分片的地址、时长等信息,具体可以包括视频的第二个视频分片的地址信息、第二个视频分片的播放时长、第三个视频分片的地址信息、第三个视频分片的播放时长、第四个视频分片的地址信息、第四个视频分片的播放时长……第N个视频分片的地址信息、第N个视频分片的播放时长等,其中,N为大于4的整数。
步骤130,从所述第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息。
具体的,本发明实施例在读取到第一索引文件信息后,可以通过该第一索引文件信息进行解析,得到该第一索引文件信息中所包含的第一分片地址信息和第二索引文件地址信息。例如,在用户点击视频点播系统的播放页面显示的播放列表中某个视频后,该视频点播系统的客户端可以直接解析在播放列表存放的顶级M3U8文件信息,得到用户点击的视频的第一个分片地址信息和二级M3U8文件地址信息;其中,该第一个视频分片地址可以用于下载视频的第一个视频分片,如可以是视频的第一个视频分片的地址;二级M3U8文件地址信息可以用于下载视频的二级M3U8文件信息,如可以是二级M3U8文件的地址。
当然,第一索引文件信息还可以包括视频的其他信息,如可以包括:视频每个档位对应的码率、URL等,本发明实施例对此不作具体限制。
步骤140,依据所述第一分片地址信息下载所述视频文件的第一视频分片。
本发明实施例在提取到第一分片地址信息后,可以根据该第一分片地址信息下载第一分片地址信息所对应的视频分片,即下载视频文件的第一视频分片,如在第一分片地址信息为视频的第一个视频分片的地址信息时,可以依据该第一分片地址信息下载视频的第一视频分片;又如,在第一分片地址信息为视频的部分视频分片的地址信息时,即第一分片地址信息包括视频的部分视频分片的地址,可以依据该第一分片地址信息下载该视频的部分视频分片等。
步骤150,在下载完所述第一视频分片后,依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息。
其中,所述第二索引文件信息用于下载所述视频文件的第二视频分片。具体而言,本发明实施例在视频文件的第一分片下载完后,可以依据步骤130提取到的第二索引文件地址信息下载该视频文件的第二索引文件信息,以便后续可以依据下载到的第二索引文件信息下载该视频文件中除了第一视频分片之外的第二视频分片。该第二视频分片可以包括视频文件中除了第一视频分片之外的视频分片,如在第一视频分片为视频的第一个视频分片时,第二视频分片可以包括该视频的非首个视频分片,具体可以包括视频的第二个视频分片、第三个视频分片、第四个视频分片……第N个视频分片等,N为大于4的整数;又如,在在第一视频分片为视频的部分视频分片时,第二视频分片可以是该视频中除了第一视频分片之外的剩余视频分片。
需要说明的是,同一个视频的视频文件可以划分为多个视频分片,并可以分别基于各视频分片对应的分片地址信息进行存储,如可以基于第一个视频分片对应的分片地址存储第一个视频分片,基于第二个视频分片对应的分片地址存储第二个视频分片,基于第三个视频分片对应的分片地址存储第三个视频分片,如此类推,基于第N个视频分片对应的分片地址存储第N个视频分片。
步骤160,播放已下载的视频分片。
具体而言,本发明实施例在下载到视频分片后,可以根据当前下载情况确定是否开播,即确定是否进行视频播放。若确定开播,则可以依据当前已下载的视频分片进行视频播放。若当前下载情况不能满足预设的播放条件,即确定未开播,则可以在满足播放条件时再播放已下载的视频分片。其中,已下载的视频分片可以包括下载到的视频分片,如可以包括下载到的第一视频分片、第二视频分片等。
综上,本发明实施例可以依据接收到的播放操作后,在播放列表中读取视频文件的第一索引文件信息,并可从该第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息,以依据第一分片地址信息下载视频文件的第一个视频分片,避免了现有视频播放方法需要获取顶级M3U8文件地址的麻烦,即解决了现有技术中由于获取顶级M3U8文件地址所造成的视频起播速度慢的技术问题;以及,在下载完第一视频分片后,依据提取到的第二索引文件地址下载该视频文件的第二索引文件信息,以便后续可以依据该第二索引文件信息继续下载视频文件的第二视频分片,随后可播放已下载的视频分片,实现了视频快速起播,减少视频起播时间,即减少了用户等待视频播放的时间,提升用户体验。
进一步而言,本发明实施例在下载完第一视频分片后,可以继续下载第二索引文件地址信息对应的第二索引文件信息,随后可依据该第二索引文件信息下载该视频文件的第一视频分片之后的各个视频分片,如在下载完视频的第一个视频分片后,可继续下载视频的二级M3U8文件,接着可依据该二级M3U8文件中所包含的信息挨个下载第一个分片之后的视频分片。
在上述实施例的基础上,可选地,本发明实施例在依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息之后,还可以包括:对所述第二索引文件信息进行解析,得到至少一个分片地址信息;依据所述至少一个分片地址信息下载所述视频文件的第二视频分片。
具体而言,本发实施例在下载到视频文件的第二索引文件信息后,可以通过该第二索引文件信息进行解析,得到该第二索引文件信息所包含的各种信息,具体可以包括视频文件的第二视频分片对应的分片地址信息,该分片地址信息可以用于下载该视频文件的第二视频分片。当然,第二索引文件信息还可以包括其他信息,如可以包括视频分片的播放时长,视频分片所占的字节数量等,本发明实施例对此不作具体限制。例如,视频点播系统的客户端可以通过解析视频文件的第二索引文件信息,得到除了第一视频分片之外的各个视频分片的地址信息,随后可分别依据得到的各个视频分片的地址信息进行下载,以完成该视频文件的视频分片的下载,以及可以依据下载到的视频分片进行视频播放,实现视频播放,满足用户观看视频的需求。
在实际处理中,本发明实施例在依据第一分片地址载到视频文件的第一视频分片后,可以根据当前下载情况选择是否开播,如在网络比较好下载速度比较快的情况下,可以确定当前下载情况符合预设的播放条件,进而可以基于已下载到的第一视频分片进行开播,即播放已下载的第一视频分片。可选地,本发明实施例的视频播放方法还可以包括:从所述第一索引文件信息或所述第二索引文件信息中提取视频分片的时长信息和字节信息;依据所述时长信息和所述字节信息,确定下载状态信息;当所述下载状态信息符合预设的播放条件,执行所述播放已下载的视频分片的步骤。
其中,视频分片的时长信息可以用于确定一个或多个视频分片的播放时长,具体可以包括一个或多个视频分片的播放时长,如从第一索引文件信息中提取到的时长信息可以包括视频的第一个视频分片的播放时长、第二个视频分片的播放时长等;又如从第二索引文件信息中提取到的时长信息可以包括视频的第二个视频分片的播放时长、第三个视频分片的播放时长等,本发明实施例对此不作具体限制。
视频分片的字节信息可以表征视频分片所占的字节数量,可以用于确定视频分片文件大小,具体可以包括一个或多个视频分片的字节数量,如从第一索引文件信息中提取到的字节信息可以包括视频的第一个视频分片的字节数量1220872,第二个视频分片的字节数量758204,第三个视频分片的字节数量77640,第四个视频分片的字节数量877584等,本发明实施例对此也不作具体限制。
本发明实施例在提取到视频分片的时长信息和字节信息后,可以采用该时长信息和字节信息确定出该视频分片对应的下载状态信息,以依据该下载状态信息选择是否开播。其中,下载状态信息可以用于表征视频分片当前下载情况,具体可以包括分片下载耗时和分片总时长等,该分片下载耗时可以是下载完n个视频分片的耗时,分片总时长可以是播放完这n个视频分片的时长,n为大于1的整数。若分片下载耗时小于分片总时长,则可以选择开播,即执行上述步骤160。
在本发明的一个可选实施例中,下载状态信息可以包括:分片总时长和分片下载耗时,所述分片总时长为依据所述时长信息确定的,所述分片下载耗时为依据所述字节信息确定的。可选的,本发明实施例提供的视频播放方法还可以包括:检测所述分片下载耗时是否小于所述分片总时长;若所述分片下载耗时小于所述分片总时长,则确定所述下载状态信息符合预设的播放条件。具体的,本发明实施例在确定出分片下载耗时和分片总时长后,可以将出分片下载耗时与分片总时长进行比较,以判断该分片下载耗时是否小于分片总时长。若分片下载耗时小于分片总时长,则可以确定视频的视频分片当前下载速度比较快,即当前网络下载速率比较快,达到视频的播放条件,然后可以基于已下载到的视频分片开始播放。
本发明实施例中,可选地,在确定下载状态信息之前,还可以包括:获取缓冲字节数量信息和网络下载速率信息,以便后续在执行依据时长信息和字节信息确定下载状态信息时,可以结合该缓冲字节数量信息和网络下载速率信息,依据提取到的字节信息得到分片下载耗时。上述依据所述时长信息和所述字节信息,确定下载状态信息,具体可以包括:根据所述字节信息,缓冲字节数量信息以及所述网络下载速率信息,得到作为所述下载状态信息的分片下载耗时。其中,缓冲字节数量信息可以用于表征缓冲的字节数量,可依据视频分片的码率和起始缓冲时长来确定,如在第一个视频分片的播放时长为4,第一个视频分片的字节数量为1220872时,第一个视频分片的码率Rc为305218,若起始缓冲时长Tc设置为2,则通过计算可以确定缓冲的字节数量Lc是610436,即缓冲字节数量Lc的值可以是码率Rc与起始缓冲时长Tc的乘积。网络下载速率信息可以表征视频分片当前的下载速率。
在具体实现中,本发明实施例在缓冲字节数量信息以及网络下载速率信息后,可以采用该缓冲字节数量信息、网络下载速率信息与提取到的视频分片的字节信息进行计算,得到作为下载状态信息的分片下载耗时;并可以根据提取到视频分片的时长信息得到作为下载状态信息的分片总时长,如可以根据提取到连续n个视频分片的播放时长确定出这n个视频分片所对应的分片总时长;以及,在检测到分片下载耗时小于分片总时长时,依据已下载的视频分片进行开播。
作为本发明的一个示例,在等待一定缓冲时间后,可以检测后面下载的连续n个所需要的剩余下载时长是否小于预设的n个视频分片的播放时长,来确定是否开播。若设视频的起始缓冲时长是Tc,缓冲的字节数量Lc通过缓冲区的码率Rc乘以起始缓冲时长Tc得到,该码率Rc可以通过使用连续n个视频分片的平均码率计算得到。当连续n个视频分片对应的分片总时长是Tn,且这n个视频分片所对应的分片文件总长度是Ln,在下载完这n个视频分片所需要的分片下载耗时Tr,该分片下载耗时Tr的值可以根据分片文件总长度Ln减去缓冲的字节数量Lc来确定;其中,分片文件总长度Ln可以为n个视频分片的文件长度的总和,如可以是这n个视频分片所占的字节总数量。
当分片下载耗时Tr小于分片总时长Tn,即在Tn>=Tr时,可以确定当前的下载状态信息符合预设的播放条件,然后可执行播放已下载的视频分片的步骤。其中,分片总时长Tn可以依据在二级M3U8文件中提取到n个视频分片的播放时长相加得到的;分片下载耗时Tr可以通过公式(Ln-Lc)/R计算得到,R当可以为前网络下载速率,且R可以通过把起始缓冲时间分成若干段,并把各段码率加权平均计算得到。
可见,本发明实施例判断HLS视频是否可以起播,可以通过当前颗播放的视频分片及其后面下载的连续n个视频分片的信息来判断,从而可以规避现有技术次采用整个视频来判断导致HLS视频起播速度慢的问题。例如,当n为4,且连续的4个视频分片的播放时长分别为4.0,4.0,4.0,4.0,以及这4个视频分片的文件长度分别为1220872,758204,776440,877584,起始缓冲时长Tc为2,若检测到当前的这段时间段落在第一个视频分片,则可以基于第一个视频分片的播放时长/4.0和文件长度1220872确定第一个分片码率Rc为305218,以随后可依据该第一个分片码率Rc和起始缓冲时长Tc确定出缓冲的字节数量Lc 610436。当下载完前2秒数据后,如果计算的下载速率R为300000,则可以根据公式Tr=(Ln-Lc)/Rr确定出分片下载耗时Tr为10.0755,进而可以确定分片下载耗时Tr小于分片总时长Tn,即达到开播条件,进而可以开播;如果计算的下载速率R为200000,则可以根据公式Tr=(Ln-Lc)/Rr确定出分片下载耗时Tr为15.11进而可以确定分片下载耗时Tr大于分片总时长Tn,即达不到开播条件。
进一步而言,本发明实施例在网络速率很小,长时间达不到开播条件的情况下,若有视频分片的数据下载并且等待时长超过预设的等待时间阈值,如在等待时长超过等待时间阈值5秒时,也可以开始播放视频。需要说明的是,本发明实施例的视频播放中确定开播的步骤不仅可以用于判断何时开始播放的场景中,还可以用于判断播空、视频查找(Seek)、切换码率后何时继续播放等场景中,本发明实施例对此不作具体限制。
在具体实现中,可选地,提取到的时长信息可以包括至少一个视频分片的播放时长,如从第一索引文件提取到的时长信息可以包括:第一个视频分片的播放时长,第二个视频分片的播放时长、第三个视频分片的播放时长;而从第二索引文件提取到的时长信息可以包括:不能在第一索引文件提取到的各个视频分片的播放时长,如结合上述例子,从第二索引文件提取到的时长信息可以包括:第四个视频分片的播放时长,第五个视频分片的播放时长、第六个视频分片的播放时长等,本发明实施例对此不作具体限制。
同理,提取到的字节信息包括至少一个视频分片的字节数量,如从第一索引文件提取到的字节信息可以包括:第一个视频分片所占的字节数量,第二个视频分片所占的字节数量、第三个视频分片所占的字节数量;而从第二索引文件提取到的字节信息可以包括:不能在第一索引文件提取到的各个视频分片所占的字节数量,如结合上述例子,从第二索引文件提取到的字节信息可以包括:第四个视频分片所占的字节数量,第五个视频分片所占的字节数量、第六个视频分片所占的字节数量等,本发明实施例对此不作具体限制。
进一步而言,本发明实施例在下载第一个视频分片后,并在下载并解析完第二索引文件信息之前,可从第一索引文件信息提取出视频分片的字节信息和时长信息,以依据提取到的字节信息和时长信息判断是否满足预设的播放条件。例如,在第一索引文件信息为视频顶级M3U8文件信息,第二索引文件信息为二级M3U8文件信息的情况下,可以在顶级M3U8文件中记录作为第一分片地址信息的第一个分片地址,并可在第一个分片地址后以注释的形式记录后4个视频分片的播放时长和文件大小,如后4个视频分片的播放时长分别为4.0,4.0,4.0,4.0;后4个视频分片的文件大小分别为1220872,758204,776440,877584。从而,可在下载第一个分片地址对应的第一个视频分片后,下载并解析完二级M3U8文件信息前,依据这4个视频分片的播放时长和文件大小确定出用于表征当前下载情况的下载状态信息,并判断该下载状态信息是否符合预设的播放条件,以确定是否播放视频。
当然,本发明实施例还可以采用其他方式确定是否播放视频,如第一索引文件中包含了带宽BAUNDWIDTH和第一视频时长T的情况下,可以根据该带宽BAUNDWIDTH和第一视频时长T得到整个视频最大的一个文件的文件长度L,随后可以利用该文件长度L确定下载状态信息是否符合播放条件,以确定是否播放视频。例如,可以以顶级M3U8的BAUNDWIDTH*第一个视频时长T得到一个文件大小L,且该文件大小L可以为整个视频最大的文件长度,随后可将该文件大小L作为每个视频分片的文件大小,从而可以基于该文件大小L确定出分片文件总长度Ln,以依据该文件大小L和出公式Tr=(Ln-Lc)/Rr确定出分片下载耗时Tr,以及可以将每个视频分片的播放时长确定为第一视频时长T,即可以基于第一视频时长T确定出分片总时长Tn,进而可以通过判断分片下载耗时Tr是否小于分片总时长Tn来确定是否开始播放视频,实现视频的快速起播,提升用户体验。
为了实现上述实施例提供的视频播放方法,本发明实施例还提供了一种播放列表的生成方法。如图2所示,本发明实施例提供的视频播放方法可以包括如下步骤:
步骤210,获取视频文件的第一索引文件信息。
具体,本发明实施例在播放列表生成之前,可以获取该播放列表所需要存放的视频对应的视频文件的第一索引文件信息。其中,所述第一索引文件信息具体包括:所述视频文件的第一分片地址信息和第二索引文件地址信息,所述第一分片地址信息用于下载所述视频文件的第一视频分片,所述第二索引文件地址信息用于下载所述视频文件的第二索引文件信息,所述第二索引文件信息用于下载所述视频文件的第二视频分片。
步骤220,依据所述第一索引文件信息生成播放列表。
本发明实施例在获取到视频文件的第一索引文件信息后,可以采用获取到的第一索引文件信息,如视频的第一分片地址信息、第二索引文件地址信息等,生成视频的播放列表,以便后续可以依据该播放列表中存放的第一索引文件信息实现视频快速起播,提升用户体验。其中,播放列表可以存放视频的第一索引文件信息,可用于显示该播放列表中所存放的视频文件的第一索引文件信息对应的视频名称,以供用户选择播放。
本发明实施例中,可选地,所述第一索引文件信息还可以包括:视频分片的时长信息和字节信息;所述时长信息用于确定作为下载状态信息的分片总时长;
所述字节信息用于确定作为所述下载状态信息的分片下载耗时。
作为本发明的一个示例,在获取到视频的顶级M3U8文件内容后,可以将获取到的顶级M3U8文件内容作为视频的第一索引文件信息,以依据该顶级M3U8文件内容生成播放列表。其中,顶级M3U8文件内容可以包括每档的视频信息,如每档的视频码率、二级M3U8文件的URL地址,作为第一分片地址信息的第一个视频分片的URL地址,第一分片地址信息后所需要记录的n个视频分片的播放时长和字节数量等,本示例对此不作具体限制。其中,第一个视频分片的URL地址可以包括每档对应的的第一个分片地址。可见,本示例中的播放列表不存放顶级M3U8地址,而是存放顶级M3U8文件内容信息,以便后续在接收到播放操作时可以基于该播放列表直接解析顶级M3U8文件内容信息,规避了现有技术中通过播放列表中存放的顶级M3U8地址下载顶级M3U8文件内容信息所造成视频起播速度慢的问题,并可在顶级M3U8文件信息中存放每个档位对应第一个分片地址,从而可以在视频播放时先依据第一个分片地址下载第一个视频分片再下载二级M3U8文件信息,实现视频的快速起播,减少视频起播时间,进而提升用户体验。
可选地,本发明实施例中的时长信息可以包括至少一个视频分片的播放时长;字节信息可以包括至少一个视频分片的字节数量;第二视频分片包括所述视频文件中除所述第一视频分片外的视频分片。例如,可以以注释形式在视频的第一索引文件信息中添加视频的每档的第一个视频分片的URL地址,以及可以注释形式在第一个视频分片的URL地址下,记录后4个视频分片的播放时长和字节数量,以便后续视频播放过程中可以依据记录的这4个视频分片的播放时长和字节数量确定视频的开播时机,实现视频快速起播。同理,可以在作为第二索引文件信息的二级M3U8文件信息可以包括第二视频分片的播放时长和字节信息,如可以在二级M3U8文件中以注释的形式加入每个视频分片所占的字节数量和播放时长,以便用于后续视频播放过程中估算开播时机。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。
参照图3,示出了本发明实施例中的一种视频播放装置的结构方框示意图,该视频播放装置具体可以包括如下模块:
播放操作接收模块310,用于基于播放列表接收针对视频文件的播放操作;
索引文件信息读取模块320,用于依据所述播放操作,在所述播放列表中读取所述视频文件的第一索引文件信息;
地址信息提取模块330,用于从所述第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息;
视频分片下载模块340,用于依据所述第一分片地址信息下载所述视频文件的第一视频分片;
索引文件信息下载模块350,用于在下载完所述第一视频分片后,依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息,其中,所述第二索引文件信息用于下载所述视频文件的第二视频分片;
视频分片播放模块360,用于播放已下载的视频分片。
在上述实施例的基础上,可选地,上述视频播放装置还可以包括如下模块:
信息提取模块,用于从所述第一索引文件信息或所述第二索引文件信息中提取视频分片的时长信息和字节信息;
下载状态信息确定模块,用于依据所述时长信息和所述字节信息,确定下载状态信息;
播放触发模块,用于当所述下载状态信息符合预设的播放条件,触发视频分片播放模块360执行所述播放已下载的视频分片的步骤。
在本发明的一个可选实施例中,所述下载状态信息包括:分片总时长和分片下载耗时,所述分片总时长为依据所述时长信息确定的,所述分片下载耗时为依据所述字节信息确定的,上述视频播放装置还可以包括:检测模块。该检测模块,用于检测所述分片下载耗时是否小于所述分片总时长;若所述分片下载耗时小于所述分片总时长,则确定所述下载状态信息符合预设的播放条件。
在本发明的一个可选实施例中,上述视频播放装置还可以包括如下模块:信息获取模块。该信息获取模块,用于在下载状态信息确定模块确定下载状态信息之前,获取缓冲字节数量信息和网络下载速率信息。下载状态信息确定模块可以包括:分片下载耗时子模块。该分片下载耗时子模块,可以用于根据所述字节信息,缓冲字节数量信息以及所述网络下载速率信息,得到作为所述下载状态信息的分片下载耗时。
本发明实施例中,可选地,所述时长信息包括至少一个视频分片的播放时长,所述字节信息包括至少一个视频分片的字节数量。
在本发明的一个可选实施例中,所述第二视频分片包括所述视频文件中除所述第一视频分片外的视频分片。本发明实施例提供的视频播放装置还包括:索引信息解析模块。该索引信息解析模块,可以用于在索引文件信息下载模块350依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息之后,对所述第二索引文件信息进行解析,得到至少一个分片地址信息。视频分片下载模块340,还用于依据所述至少一个分片地址信息下载所述视频文件的第二视频分片。
在具体实现中,上述视频播放装置可以集成在用于视频播放的设备中。该设备可以是两个或多个物理实体构成,也可以是一个物理实体构成,如设备可以是个人计算机(Personal Computer,PC)、电脑、手机、平板设备、个人数字助理、服务器、消息收发设备、游戏控制台等。
进一步的,本发明实施例还提供一种设备,包括:处理器和存储器。存储器中存储有至少一条指令,且指令由所述处理器执行,使得所述设备执行如上述方法实施例中所述的视频播放方法。
参照图4,示出了本发明一个示例中的一种设备的结构示意图。如图4所示,该设备具体可以包括:处理器40、存储器41、具有触摸功能的显示屏42、输入装置43、输出装置44以及通信装置45。该设备中处理器40的数量可以是一个或者多个,图4中以一个处理器40为例。该设备中存储器41的数量可以是一个或者多个,图4中以一个存储器41为例。该设备的处理器40、存储器41、显示屏42、输入装置43、输出装置44以及通信装置45可以通过总线或者其他方式连接,图4中以通过总线连接为例。
存储器41作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明任意实施例所述的任务处理方法对应的程序指令/模块(例如,上述任务处理装置中的播放操作接收模块310、索引文件信息读取模块320、地址信息提取模块330、视频分片下载模块340、索引文件信息下载模块350以及视频分片播放模块360等)。存储器41可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器41可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器41可进一步包括相对于处理器40远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
显示屏42为具有触摸功能的显示屏42,其可以是电容屏、电磁屏或者红外屏。一般而言,显示屏42用于根据处理器40的指示显示数据,还用于接收作用于显示屏42的触摸操作,并将相应的信号发送至处理器40或其他装置。可选的,当显示屏42为红外屏时,其还包括红外触摸框,该红外触摸框设置在显示屏42的四周,其还可以用于接收红外信号,并将该红外信号发送至处理器40或者其他设备。
通信装置45,用于与其他设备建立通信连接,其可以是有线通信装置和/或无线通信装置。
输入装置43可用于接收输入的数字或者字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入,还可以是用于获取图像的摄像头以及获取音频数据的拾音设备。输出装置44可以包括扬声器等音频设备。需要说明的是,输入装置43和输出装置44的具体组成可以根据实际情况设定。
处理器40通过运行存储在存储器41中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述视频播放方法。具体的,实施例中,处理器40执行存储器41中存储的一个或多个程序时,具体实现如下操作:基于播放列表接收针对视频文件的播放操作;依据所述播放操作,在所述播放列表中读取所述视频文件的第一索引文件信息;从所述第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息;依据所述第一分片地址信息下载所述视频文件的第一视频分片;在下载完所述第一视频分片后,依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息,其中,所述第二索引文件信息用于下载所述视频文件的第二视频分片;播放已下载的视频分片。
本发明实施例还提供一种计算机可读存储介质,所述存储介质中的指令由设备的处理器执行时,使得设备能够执行如上述方法实施例所述的视频播放方法。示例性的,该视频播放方法包括:基于播放列表接收针对视频文件的播放操作;依据所述播放操作,在所述播放列表中读取所述视频文件的第一索引文件信息;从所述第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息;依据所述第一分片地址信息下载所述视频文件的第一视频分片;在下载完所述第一视频分片后,依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息,其中,所述第二索引文件信息用于下载所述视频文件的第二视频分片;播放已下载的视频分片。
参照图5,示出了本发明实施例中的播放列表的生成装置的结构方框示意图,该播放列表的生成装置具体可以包括如下模块:
索引文件信息获取模块510,用于获取视频文件的第一索引文件信息;
播放列表生成模块520,用于依据所述第一索引文件信息生成播放列表。
其中,所述第一索引文件信息包括:所述视频文件的第一分片地址信息和第二索引文件地址信息,所述第一分片地址信息用于下载所述视频文件的第一视频分片,所述第二索引文件地址信息用于下载所述视频文件的第二索引文件信息,所述第二索引文件信息用于下载所述视频文件的第二视频分片。
在本发明的一个可选实施例中,所述第一索引文件信息还包括:视频分片的时长信息和字节信息;所述时长信息用于确定作为下载状态信息的分片总时长;所述字节信息用于确定作为所述下载状态信息的分片下载耗时。
本发明实施例中,可选地,所述时长信息包括至少一个视频分片的播放时长;
所述字节信息包括至少一个视频分片的字节数量;所述第二视频分片包括所述视频文件中除所述第一视频分片外的视频分片。
在具体实现中,上述播放列表的生成装置可以集成在用于生成播放列表的服务器中。该服务器可以是两个或多个物理实体构成,也可以是一个物理实体构成。
进一步的,本发明实施例还提供一种服务器,包括:处理器和存储器。存储器中存储有至少一条指令,且指令由所述处理器执行,使得服务器执行如上述方法实施例中所述的播放列表的生成方法。
本发明实施例还提供一种计算机可读存储介质,所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如上述方法实施例所述的播放列表的生成方法。示例性的,该播放列表的生成方法,包括:获取视频文件的第一索引文件信息;依据所述第一索引文件信息生成播放列表。其中,所述第一索引文件信息包括:所述视频文件的第一分片地址信息和第二索引文件地址信息,所述第一分片地址信息用于下载所述视频文件的第一视频分片,所述第二索引文件地址信息用于下载所述视频文件的第二索引文件信息,所述第二索引文件信息用于下载所述视频文件的第二视频分片。
需要说明的是,对于装置、设备、存储介质实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是机器人,个人计算机,服务器,或者网络设备等)执行本发明任意实施例所述的视频播放方法。
值得注意的是,上述视频播放装置中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (15)

1.一种视频播放方法,其特征在于,包括:
基于播放列表接收针对视频文件的播放操作;
依据所述播放操作,在所述播放列表中读取所述视频文件的第一索引文件信息;
从所述第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息;
依据所述第一分片地址信息下载所述视频文件的第一视频分片;
在下载完所述第一视频分片后,依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息,其中,所述第二索引文件信息用于下载所述视频文件的第二视频分片;
播放已下载的视频分片。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
从所述第一索引文件信息或所述第二索引文件信息中提取视频分片的时长信息和字节信息;
依据所述时长信息和所述字节信息,确定下载状态信息;
当所述下载状态信息符合预设的播放条件,执行所述播放已下载的视频分片的步骤。
3.根据权利要求2所述的方法,其特征在于,所述下载状态信息包括:分片总时长和分片下载耗时,所述分片总时长为依据所述时长信息确定的,所述分片下载耗时为依据所述字节信息确定的,所述方法还包括:
检测所述分片下载耗时是否小于所述分片总时长;
若所述分片下载耗时小于所述分片总时长,则确定所述下载状态信息符合预设的播放条件。
4.根据权利要求3所述的方法,其特征在于,所述确定下载状态信息之前,还包括:
获取缓冲字节数量信息和网络下载速率信息;
其中,所述依据所述时长信息和所述字节信息,确定下载状态信息,包括:根据所述字节信息,缓冲字节数量信息以及所述网络下载速率信息,得到作为所述下载状态信息的分片下载耗时。
5.根据权利要求2至4任一所述的方法,其特征在于,所述时长信息包括至少一个视频分片的播放时长,所述字节信息包括至少一个视频分片的字节数量。
6.根据权利要求1至4任一所述的方法,其特征在于,所述第二视频分片包括所述视频文件中除所述第一视频分片外的视频分片,所述依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息之后,还包括:
对所述第二索引文件信息进行解析,得到至少一个分片地址信息;
依据所述至少一个分片地址信息下载所述视频文件的第二视频分片。
7.一种播放列表的生成方法,其特征在于,包括:
获取视频文件的第一索引文件信息,其中,所述第一索引文件信息包括:所述视频文件的第一分片地址信息和第二索引文件地址信息,所述第一分片地址信息用于下载所述视频文件的第一视频分片,所述第二索引文件地址信息用于下载所述视频文件的第二索引文件信息,所述第二索引文件信息用于下载所述视频文件的第二视频分片;
依据所述第一索引文件信息生成播放列表。
8.根据权利要求7所述的方法,其特征在于,
所述第一索引文件信息还包括:视频分片的时长信息和字节信息;
所述时长信息用于确定作为下载状态信息的分片总时长;
所述字节信息用于确定作为所述下载状态信息的分片下载耗时。
9.根据权利要求8所述的方法,其特征在于,
所述时长信息包括至少一个视频分片的播放时长;
所述字节信息包括至少一个视频分片的字节数量;
所述第二视频分片包括所述视频文件中除所述第一视频分片外的视频分片。
10.一种视频播放装置,其特征在于,包括:
播放操作接收模块,用于基于播放列表接收针对视频文件的播放操作;
索引文件信息读取模块,用于依据所述播放操作,在所述播放列表中读取所述视频文件的第一索引文件信息;
地址信息提取模块,用于从所述第一索引文件信息中提取第一分片地址信息和第二索引文件地址信息;
视频分片下载模块,用于依据所述第一分片地址信息下载所述视频文件的第一视频分片;
索引文件信息下载模块,用于在下载完所述第一视频分片后,依据所述第二索引文件地址信息下载所述视频文件的第二索引文件信息,其中,所述第二索引文件信息用于下载所述视频文件的第二视频分片;
视频分片播放模块,用于播放已下载的视频分片。
11.一种视频播放设备,其特征在于,包括:处理器和存储器;
所述存储器中存储有至少一条指令,所述指令由所述处理器执行,使得所述设备执行如权利要求1至6任一所述的视频播放方法。
12.一种计算机可读存储介质,其特征在于,所述存储介质中的指令由设备的处理器执行时,使得设备能够执行如权利要求1至6任一所述的视频播放方法。
13.一种播放列表的生成装置,其特征在于,包括:
索引文件信息获取模块,用于获取视频文件的第一索引文件信息;
播放列表生成模块,用于依据所述第一索引文件信息生成播放列表;
其中,所述第一索引文件信息包括:所述视频文件的第一分片地址信息和第二索引文件地址信息,所述第一分片地址信息用于下载所述视频文件的第一视频分片,所述第二索引文件地址信息用于下载所述视频文件的第二索引文件信息,所述第二索引文件信息用于下载所述视频文件的第二视频分片。
14.一种服务器,其特征在于,包括:处理器和存储器;
所述存储器中存储有至少一条指令,所述指令由所述处理器执行,使得所述服务器执行如权利要求7至9任一所述的播放列表的生成方法。
15.一种计算机可读存储介质,其特征在于,所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如权利要求7至9任一所述的播放列表的生成方法。
CN201811447827.1A 2018-11-29 2018-11-29 视频播放方法、播放列表的生成方法及相关设备 Active CN109474854B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811447827.1A CN109474854B (zh) 2018-11-29 2018-11-29 视频播放方法、播放列表的生成方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811447827.1A CN109474854B (zh) 2018-11-29 2018-11-29 视频播放方法、播放列表的生成方法及相关设备

Publications (2)

Publication Number Publication Date
CN109474854A CN109474854A (zh) 2019-03-15
CN109474854B true CN109474854B (zh) 2021-09-14

Family

ID=65673618

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811447827.1A Active CN109474854B (zh) 2018-11-29 2018-11-29 视频播放方法、播放列表的生成方法及相关设备

Country Status (1)

Country Link
CN (1) CN109474854B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111935535B (zh) * 2019-05-13 2022-06-17 阿里巴巴集团控股有限公司 数据处理方法、装置、终端设备及计算机存储介质
CN110290396B (zh) * 2019-05-31 2024-04-09 广州市百果园信息技术有限公司 一种视频处理的方法、装置、系统、设备和存储介质
CN112423018A (zh) * 2020-10-27 2021-02-26 深圳Tcl新技术有限公司 媒体文件编码传输方法、装置、设备及可读存储介质
CN112565906A (zh) * 2020-11-05 2021-03-26 深圳市麦谷科技有限公司 一种在线视频的点播处理方法及系统
CN112533067B (zh) * 2020-11-12 2022-05-31 烽火通信科技股份有限公司 一种超高清点播视频的快速起播方法与装置
GB2603751A (en) * 2021-01-28 2022-08-17 Openwave Mobility Inc A Method for Determining a Play Duration Estimate of an Adaptive Bit Rate Media Presentation
CN113259695A (zh) * 2021-04-29 2021-08-13 广州虎牙科技有限公司 视频播放方法、装置、电子设备、存储介质
CN114422831B (zh) * 2022-01-20 2024-03-19 北京奇艺世纪科技有限公司 媒体播放方法及装置、电子设备和可读存储介质
CN114630192A (zh) * 2022-03-16 2022-06-14 深圳法政信息技术有限公司 一种视频存证方法
CN114615550B (zh) * 2022-03-17 2023-12-08 北京奇艺世纪科技有限公司 一种视频获取方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741730A (zh) * 2009-12-02 2010-06-16 成都市华为赛门铁克科技有限公司 文件下载方法及设备、提供文件下载服务的方法及系统
CN105992043A (zh) * 2015-10-15 2016-10-05 乐视致新电子科技(天津)有限公司 一种数据处理的方法及装置
CN108769830A (zh) * 2018-05-29 2018-11-06 武汉斗鱼网络科技有限公司 一种缓存视频的方法以及相关设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9813740B2 (en) * 2012-08-24 2017-11-07 Google Inc. Method and apparatus for streaming multimedia data with access point positioning information

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741730A (zh) * 2009-12-02 2010-06-16 成都市华为赛门铁克科技有限公司 文件下载方法及设备、提供文件下载服务的方法及系统
CN105992043A (zh) * 2015-10-15 2016-10-05 乐视致新电子科技(天津)有限公司 一种数据处理的方法及装置
CN108769830A (zh) * 2018-05-29 2018-11-06 武汉斗鱼网络科技有限公司 一种缓存视频的方法以及相关设备

Also Published As

Publication number Publication date
CN109474854A (zh) 2019-03-15

Similar Documents

Publication Publication Date Title
CN109474854B (zh) 视频播放方法、播放列表的生成方法及相关设备
CN106572358B (zh) 一种直播时移方法及客户端
US11831950B2 (en) Methods and apparatus to measure exposure to streaming media
EP3120569B1 (en) Manifest re-assembler for a streaming video channel
US8713005B2 (en) Assisted hybrid mobile browser
US11902399B2 (en) Methods and apparatus to measure exposure to streaming media
US20160094601A1 (en) Methods and apparatus to measure exposure to streaming media
TWI470983B (zh) 用以更新超文件傳輸協定內容描述之方法及裝置
US10334316B2 (en) Determining a quality of experience metric based on uniform resource locator data
CN109587521B (zh) 视频卡顿的判定方法及装置
JP2017529726A (ja) ストリーミングサービスのためのクライアント及びサーバの動作方法
CN107690093B (zh) 一种视频播放方法及装置
CN108924630B (zh) 一种显示缓存进度的方法和播放设备
US10284889B1 (en) Determining an actual start of program content relative to a scheduled start of the program content
CN109587517B (zh) 一种多媒体文件的播放方法及装置、服务器及存储介质
CA3124540A1 (en) Systems and methods for storing and delivering content assets
CN107623847B (zh) 一种视频业务的视频质量评估方法和装置
CN111327964A (zh) 一种定位视频播放卡顿的方法及设备
CN109756756B (zh) 视频播放方法和视频播放装置
CN112235592A (zh) 直播方法、直播处理方法、装置、计算机设备
US20210044641A1 (en) Content player performance detection
CN113453062B (zh) 视频元数据的获取、处理方法及装置、系统、电子设备
CN117596438A (zh) 一种视频流处理系统及方法
Andersson et al. Video quality encoding characterization and comparison
CN110740342A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220606

Address after: 31a, 15 / F, building 30, maple mall, bangrang Road, Brazil, Singapore

Patentee after: Baiguoyuan Technology (Singapore) Co.,Ltd.

Address before: 511442 23-39 / F, building B-1, Wanda Plaza North, Wanbo business district, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU BAIGUOYUAN INFORMATION TECHNOLOGY Co.,Ltd.