CN114915850A - 一种视频播放控制方法、装置、电子设备及存储介质 - Google Patents

一种视频播放控制方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114915850A
CN114915850A CN202210430084.7A CN202210430084A CN114915850A CN 114915850 A CN114915850 A CN 114915850A CN 202210430084 A CN202210430084 A CN 202210430084A CN 114915850 A CN114915850 A CN 114915850A
Authority
CN
China
Prior art keywords
time
target
data objects
time frame
data object
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210430084.7A
Other languages
English (en)
Other versions
CN114915850B (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.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network 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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202210430084.7A priority Critical patent/CN114915850B/zh
Publication of CN114915850A publication Critical patent/CN114915850A/zh
Application granted granted Critical
Publication of CN114915850B publication Critical patent/CN114915850B/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/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
    • 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
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • 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/44012Processing 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 rendering scenes according to scene graphs, e.g. MPEG-4 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/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/4402Processing 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 reformatting operations of video signals for household redistribution, storage or real-time display
    • 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)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

本申请公开了一种视频播放控制方法、装置、电子设备及存储介质,通过本实施例的方法,获取视频播放时间轴上触发的时间点;基于时间点从包含多个目标数据对象的目标数据对象集合中获取与时间点匹配的目标时间帧包含的多个第一数据对象;数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻;根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示目标时间帧。本申请视频播放控制方法实现用户点击视频播放时间轴时画面快速跳转。

Description

一种视频播放控制方法、装置、电子设备及存储介质
技术领域
本申请涉及计算机技术领域,具体涉及一种视频播放控制方法、装置、电子设备及存储介质。
背景技术
随着终端技术的不断发展,终端能够提供的功能越来越多,比如:社交、购物、导航以及观看视频等。在终端上观看视频具有实时性强、便捷度高以及随时随地可实现等特点,使得使用该功能的用户量日渐庞大。用户在观看视频时,最常使用的功能为视频播放时间轴,也就是进度条,视频播放时间轴可允许用户对视频进行快进或者倒回等处理。
现有技术中,通过下一帧相对上一帧的变化来存储数据。比如一条线在上一帧是10厘米,下一帧是11厘米。第二帧只需要存储多出来的1厘米的信息。这种情况下,在画面跳转时需要从头计算,当播放到n帧时,需要前n-1个帧的所有信息。当用户拖动时间轴进行画面跳转,例如从10分钟处拖到30分钟处时,需要反复计算,把10分钟到30分钟的所有帧的信息求和出来,计算量巨大,造成卡顿,画面跳转速度较慢。
也即,现有技术中,用户点击视频播放时间轴时画面跳转速度较慢。
发明内容
本申请实施例提供一种视频播放控制方法、装置、电子设备及存储介质,可以实现用户点击视频播放时间轴时画面快速跳转。
本申请实施例提供一种视频播放控制方法,所述视频播放控制方法包括:
获取视频播放时间轴上触发的时间点;
基于所述时间点从包含多个目标数据对象的目标数据对象集合中获取与所述时间点匹配的目标时间帧包含的多个第一数据对象;所述目标数据对象集合以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻;其中,所述第一数据对象的创建时刻不晚于所述时间点,所述第一数据对象的结束时刻晚于所述时间点;
根据所述目标时间帧包含的所述多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示所述目标时间帧。
在一个可选的实施例中,所述视频播放控制方法还包括:
将所述目标时间帧更新为当前时间帧,将所述目标时间帧的下一时间帧更新为目标时间帧,将更新后的目标时间帧作为所述时间点,按照时间帧周期重复执行所述视频播放控制方法的步骤。
在一个可选的实施例中,在所述获取视频播放时间轴上触发的时间点之前,还包括:
获取用户的视频播放请求;
将所述视频播放请求发送至服务器,并获取所述服务器返回的基于所述视频播放请求筛选得到的目标数据对象集合。
在一个可选的实施例中,所述获取所述服务器返回的基于所述视频播放请求筛选得到的目标数据对象集合,包括:
获取所述服务器返回的基于所述视频播放请求筛选,并按照数据对象的创建时间排序后得到的目标数据对象集合。
在一个可选的实施例中,所述基于所述时间点从包含多个目标数据对象的目标数据对象集合中获取与所述时间点匹配的目标时间帧包含的多个第一数据对象,包括:
基于所述时间点在所述目标数据对象集合进行二分查找,得到与所述时间点匹配的分割点数据对象,其中,所述分割点数据对象的创建时间不晚于所述时间点,所述分割点数据对象之后相邻的目标数据对象的创建时间晚于所述时间点;
将所述分割点数据对象和所述分割点数据对象之前的多个目标数据对象的结束时间分别与所述时间点比较,将结束时刻晚于所述时间点的目标数据对象作为与所述时间点匹配的多个第一数据对象。
在一个可选的实施例中,所述视频播放控制方法还包括:
对所述当前时间帧进行哈希查找,得到所述当前时间帧的数据对象。
在一个可选的实施例中,所述视频播放控制方法还包括:
将所述差异对象信息的部分或全部写入图形处理器;
当所述目标时间帧的触发时刻触发时,将所述目标时间帧的触发时刻之前写入所述图形处理器的差异对象信息在所述目标时间帧上进行渲染显示。
在一个可选的实施例中,所述将所述差异对象信息的部分或全部写入图形处理器,包括:
将所述差异对象信息划分为多个批次的分批差异信息;
将所述多个批次的分批差异信息分批次写入所述图形处理器。
在一个可选的实施例中,所述视频播放控制方法还包括:
当所述目标时间帧的触发时刻触发时,判断所述多个批次的分批差异信息是否存在未写入所述图形处理器的分批差异信息;
若存在,则将所述目标时间帧的触发时刻之前未写入所述图形处理器的差异对象信息,在所述目标时间帧之后的有限个相邻的时间帧周期内写入所述图形处理器。
在一个可选的实施例中,所述目标时间帧包含的数据对象与当前时间帧包含的数据对象之间的所述差异对象信息在有限个相邻的时间帧周期内趋于零。
本申请实施例还提供一种视频播放控制装置,该视频播放控制装置包括:
第一获取单元,用于获取视频播放时间轴上触发的时间点;
第二获取单元,用于基于所述时间点从包含多个目标数据对象的目标数据对象集合中获取与所述时间点匹配的目标时间帧包含的多个第一数据对象;所述目标数据对象集合以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻;其中,所述第一数据对象的创建时刻不晚于所述时间点,所述第一数据对象的结束时刻晚于所述时间点;
显示单元,用于根据所述目标时间帧包含的所述多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示所述目标时间帧。
在一个可选的实施例中,所述显示单元用于:
将所述目标时间帧更新为当前时间帧,将所述目标时间帧的下一时间帧更新为目标时间帧,将更新后的目标时间帧作为所述时间点,按照时间帧周期重复执行所述视频播放控制方法的步骤。
在一个可选的实施例中,所述第一获取单元,包括:
播放请求获取单元,获取用户的视频播放请求;
发送单元,用于将所述视频播放请求发送至服务器,并获取所述服务器返回的基于所述视频播放请求筛选得到的目标数据对象集合。
在一个可选的实施例中,所述发送单元,用于:获取所述服务器返回的基于所述视频播放请求筛选,并按照数据对象的创建时间排序后得到的目标数据对象集合。
在一个可选的实施例中,所述第二获取单元,包括:
二分查找单元,用于基于所述时间点在所述目标数据对象集合进行二分查找,得到与所述时间点匹配的分割点数据对象,其中,所述分割点数据对象的创建时间不晚于所述时间点,所述分割点数据对象之后相邻的目标数据对象的创建时间晚于所述时间点;
时间比较单元,用于将所述分割点数据对象和所述分割点数据对象之前的多个目标数据对象的结束时间分别与所述时间点比较,将结束时刻晚于所述时间点的目标数据对象作为与所述时间点匹配的多个第一数据对象。
在一个可选的实施例中,所述显示单元还包括:
哈希查找单元,用于对所述当前时间帧进行哈希查找,得到所述当前时间帧的数据对象。
在一个可选的实施例中,所述显示单元还包括:
写入单元,用于将所述差异对象信息的部分或全部写入图形处理器;
渲染单元,用于当所述目标时间帧的触发时刻触发时,将所述目标时间帧的触发时刻之前写入所述图形处理器的差异对象信息在所述目标时间帧上进行渲染显示。
在一个可选的实施例中,所述写入单元包括:
分批单元,用于将所述差异对象信息划分为多个批次的分批差异信息;
子写入单元,用于将所述多个批次的分批差异信息分批次写入所述图形处理器。
在一个可选的实施例中,所述视频播放控制方法还用于:用于当所述目标时间帧的触发时刻触发时,判断所述多个批次的分批差异信息是否存在未写入所述图形处理器的分批差异信息;若存在,则将所述目标时间帧的触发时刻之前未写入所述图形处理器的差异对象信息,在所述目标时间帧之后的有限个相邻的时间帧周期内写入所述图形处理器。
在一个可选的实施例中,所述目标时间帧包含的数据对象与当前时间帧包含的数据对象之间的所述差异对象信息在有限个相邻的时间帧周期内趋于零。
本申请实施例还提供了一种视频播放控制装置,包括:
获取单元,用于获取终端发送的视频播放请求;
筛选单元,用于基于所述视频播放请求对预存数据对象集合进行筛选,得到多个与所述视频播放请求匹配的多个第二数据对象,所述预存数据对象集合包括多个预存数据对象和预存数据对象在视频播放时间轴上的创建时间和结束时间;
排序单元,用于基于创建时间对所述多个第二数据对象进行排序,得到目标数据对象集合;
返回单元,用于将所述目标数据对象集合返回至终端,以使所述终端基于所述目标数据对象集合进行时间帧显示。
本申请实施例还提供了一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行计算机程序时实现上述方法的步骤。
本申请实施例还提供了一种服务器,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行计算机程序时实现如上述方法的步骤。
本申请实施例还提供了一种存储介质,其上存储有计算机程序,其中,计算机程序被处理器执行时实现如上述方法的步骤。
本申请实施例提供了一种视频播放控制方法、装置、电子设备及存储介质,本申请视频播放控制方法将视频以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻,在获取到用户在视频播放时间轴上触发的时间点时,根据时间点从多个数据对象中找到与时间点匹配的多个第一数据对象,然后再根据多个第一数据对象显示目标时间帧,可以在用户点击视频播放时间轴时根据时间点快速确定对应的多个第一数据对象,进而根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息进而渲染显示,能够快速显示出用户点击视频播放时间轴时期望看到的画面,实现用户点击视频播放时间轴时画面快速跳转。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的视频的播放系统的场景示意图;
图2是本申请实施例提供的一种视频播放控制方法一实施例的流程示意图;
图3是本申请实施例提供的一种视频播放控制方法一实施例中终端提供的用户界面示意图;
图4是本申请实施例提供的一种视频播放控制方法另一实施例的流程示意图;
图5是本申请实施例提供的一种视频播放控制方法一具体实施方式的流程示意图;
图6是本申请实施例提供的一种视频播放控制装置一实施例的结构示意图;
图7是本申请实施例提供的一种视频播放控制装置另一实施例的结构示意图;
图8是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种视频播放控制方法、装置、电子设备及存储介质。具体地,本申请实施例的视频播放控制方法可以由计算机设备执行,其中,该计算机设备可以为终端或者服务器等设备。该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机(PC,Personal Computer)、个人数字助理(Personal Digital Assistant,PDA)等终端设备,该终端可以是视频播放应用终端、携带有视频播放程序的浏览器终端或即时通信终端等。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
例如,当该视频播放控制方法运行于终端时,终端设备存储有视频播放应用程序并用于呈现视频播放画面。终端设备用于通过图形用户界面与用户进行交互,例如通过终端设备下载安装视频播放应用程序并运行。该终端设备将图形用户界面提供给用户的方式可以包括多种,例如,可以渲染显示在终端设备的显示屏上,或者,通过全息投影呈现图形用户界面。例如,终端设备可以包括触控显示屏和处理器,该触控显示屏用于呈现图形用户界面以及接收用户作用于图形用户界面产生的操作指令,该图形用户界面包括视频播放画面,该处理器用于运行该视频播放程序、生成图形用户界面、响应操作指令以及控制图形用户界面在触控显示屏上的显示。
请参阅图1,图1是本申请实施例提供的视频的播放系统的场景示意图。该系统可以包括至少一个终端1000,至少一个服务器2000,至少一个数据库3000,以及网络4000。用户持有的终端1000可以通过网络4000连接到不同的服务器。终端1000是具有计算硬件的任何设备,该计算硬件能够支持和执行与视频播放对应的软件产品。另外,终端1000具有用于感测和获得用户通过在一个或者多个触控显示屏的多个点执行的触摸或者滑动操作的输入的一个或者多个多触敏屏幕。另外,当系统包括多个终端1000、多个服务器2000、多个网络4000时,不同的终端1000可以通过不同的网络4000、通过不同的服务器2000相互连接。网络4000可以是无线网络或者有线网络,比如无线网络为无线局域网(WLAN)、局域网(LAN)、蜂窝网络、2G网络、3G网络、4G网络、5G网络等。另外,不同的终端1000之间也可以使用自身的蓝牙网络或者热点网络连接到其他终端或者连接到服务器等。另外,该系统可以包括多个数据库3000,多个数据库3000耦合到不同的服务器2000,数据库3000用于存储数据。
需要说明的是,图1所示的视频的播放系统的场景示意图仅仅是一个示例,本申请实施例描述的视频的播放系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着视频的播放系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
首先,本申请实施例中提供一种视频播放控制方法,该视频播放控制方法包括:获取视频播放时间轴上触发的时间点;基于时间点从包含多个目标数据对象的目标数据对象集合中获取与时间点匹配的目标时间帧包含的多个第一数据对象;目标数据对象集合以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻;其中,第一数据对象的创建时刻不晚于时间点,第一数据对象的结束时刻晚于时间点;根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示目标时间帧。
如图2所示,图2是本申请实施例提供的一种视频播放控制方法一实施例的流程示意图,该视频播放控制方法应用于终端1000。该视频播放控制方法包括如下步骤S201-S203:
201、获取视频播放时间轴上触发的时间点。
本申请实施例中,在视频播放过程中,用户在终端提供的UI界面上点击视频播放时间轴,终端即可获取用户在视频播放时间轴上触发的时间轴点击位置,基于时间轴点击位置确定时间点,从而获取视频播放时间轴上触发的时间点。
具体的,可参考图3,图3是本申请实施例提供的一种视频播放控制方法一实施例中终端提供的用户界面示意图。
如图3所示,终端1000为一智能手机,终端1000提供的用户界面上包括视频播放时间轴110,视频播放时间轴110包括多个时间帧时刻,视频按照多个时间帧时刻逐帧播放视频,视频播放时间轴上的时间帧时刻按时间帧周期触发,时间帧周期可以根据具体情况设定,例如时间帧周期为40ms,即视频播放时,每隔40ms播放一帧时间帧。用户点击时间轴点击位置130,在用户点击时间轴点击位置130时,终端1000提供的用户界面正在播放当前时间帧时刻120对应的当前时间帧Current,当前时间帧Current包括多个经过渲染的数据对象,如圆形、人形等。当然,终端1000提供的用户界面还可以包括开始/暂停按钮、声音按钮,菜单按钮等等。
其中,用户可通过如下两种实现方式点击视频播放时间轴110。终端在用户点击视频播放时间轴110时,获取用户在视频播放时间轴上触发的时间轴点击位置,基于时间轴点击位置确定时间点,从而获取视频播放时间轴上触发的时间点。
第一种实现方式:用户界面UI中包括包含有控制点的视频播放时间轴110,用户可通过在视频播放时间轴110上拖动或者点击控制点,终端1000将用户拖动停止时停留的控制点或者点击的控制点确定为时间轴点击位置。
第二可实现的方式:用户界面UI中包括播放窗口,用户可使用手指在播放窗口左右滑动,终端1000将用户左右滑动停止时对应视频播放时间轴110的控制点确定为时间轴点击位置。
第三种实现方式:用户向终端1000发送语音跳转指令,终端1000将用户语音跳转指令中对应视频播放时间轴110的控制点确定为时间轴点击位置。
第四种实现方式:用户向终端1000发送手势控制指令,终端1000将手势控制指令中对应视频播放时间轴110的控制点确定为时间轴点击位置。
本申请实施例中,获取视频播放时间轴上触发的时间点,之前,可以包括:
(1)获取用户的视频播放请求。
本申请实施例中,视频播放请求可以为播放预设视频的请求指令。其中,用户可以通过文字输入或者语音输入等方式输入视频播放请求。具体的,用户界面提供语音输入图标或者文字输入图标,当检测到用户点击语音输入图标时,采集用户输入的语音信息,解析语音信息得到视频播放请求。当检测到用户点击文字输入图标时,采集用户输入的文字信息,解析文字信息得到视频播放请求。例如,用户点击语音输入图标,终端在用户界面弹出“请输出您想看的视频”,并开启麦克风采集用户的语音信息。
(2)将视频播放请求发送至服务器,并获取服务器返回的基于视频播放请求筛选得到的目标数据对象集合。
其中,目标数据对象集合中的多个目标数据对象是基于创建时间进行过排序的。目标数据对象集合为视频播放请求中预设视频所包含的所有数据对象。由于终端的算力和存储能力远远小于服务器,因此,视频的数据存储在服务器上,当用户需要看视频时,从服务器获取视频数据。数据对象指的是包括顶点/颜色等数据的编程对象,可以被图形处理器执行从而显示出来。比如看到屏幕里有个正方形、三角形、轨迹连线,都可以认为是个数据对象。
具体的,获取服务器返回的基于视频播放请求筛选,并按照数据对象的创建时间排序后得到的目标数据对象集合。利用服务器相对终端较大的算力进行是筛选排序工作,可以减少终端的计算负载。
可以理解的是,对数据对象的排序也可以在终端执行。即,视频播放控制及方法还包括:
按照数据对象的创建时间对目标数据对象集合包含的多个目标数据对象进行排序,获得排序后的目标数据对象集合。
进一步的,基于多个目标数据对象进行视频播放。
具体的,基于时间帧时刻从目标数据对象集合中获取与时间帧时刻匹配的多个数据对象;基于与时间帧时刻匹配的多个数据对象显示目标时间帧,即可实现视频自动播放。当然,也可以直接按数据帧组织视频播放。
在一个具体的实施例中,在视频播放时,检测用户界面是否被触摸,当检测到用户界面被触摸时,显示视频播放时间轴,判断在预设时间内是否检测到视频播放时间轴被点击,若在预设时间内检测到视频播放时间轴被点击,则获取时间轴点击位置;若在预设时间内未检测到视频播放时间轴被点击,则隐藏视频播放时间轴。预设时间可根据具体情况确定,在此不作赘述。
S202、基于时间点从包含多个目标数据对象的目标数据对象集合中获取与时间点匹配的目标时间帧包含的多个第一数据对象。
其中,目标数据对象集合以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻;其中,第一数据对象的创建时刻不晚于时间点,第一数据对象的结束时刻晚于时间点。
本申请实施例中,目标数据对象集合包括多个目标数据对象和各个目标数据对象在视频播放时间轴上的创建时间和结束时间。创建时间指的是目标数据对象在视频画面中首次出现时的时间点,结束时间指的是目标数据对象在视频画面中最后消失的时间点。
具体的,目标数据对象的存储方式为面向数据对象的数据结构。即每个数据对象指定创建时间和结束时间。存储方式如下所示:
o1:{Time1,Time6},
o2:{Time5,Time7},
o3:{Time3,Time7},
其中,o1、o2以及o3为数据对象,Time1、Time6、Time5、Time3、Time7为时间戳。即,数据对象A:{T1,T2}。T1为数据对象A在播放时间轴上的创建时间,T2为数据对象A播放时间轴上的结束时间。可以理解的是,数据对象A的结束时间T2晚于创建时间T1。
由于现有技术中数据是按数据帧来组织,即给每个时间上指定有哪些数据对象要显示。数据帧指的是把一堆数据对象封装在一起成为一个批次的“播放时刻”。可以每1毫秒来推动这个批次,也可以2毫秒来推动这个批次,也可以40毫秒来推动。当数据帧按照预定的时间帧来执行的时候,就是按照预设速度来播放。时间帧指的是自然界意义上的时间单元,比如每秒25的动画,则每40毫秒进行推移。按数据帧来组织方式如下:
Time3:{o1,o2,o3},
Time2:{o1,o3,o6,o7},
Time11:{o1,o2,o8},
Time5:{o1},
显然现有技术中按数据帧来组织会有数据重叠的,比如Time3和Time2都有o3对象,造成存储量较大。而本申请采用面向数据对象的数据结构,即每个数据对象指定创建时间和结束时间,能够避免数据重叠,存储量较小。另外,数据对象的存储空间很大,而存时间戳占用的存储空间是很小的,本申请面向数据对象来组织数据结构更紧凑,存储量更小。
本申请实施例中,基于时间轴点击位置从目标数据对象集合中获取与时间轴点击位置匹配的多个第一数据对象,包括:基于时间轴点击位置确定时间点;基于时间点从目标数据对象集合中获取与时间点匹配的多个第一数据对象,其中,第一数据对象的创建时间不晚于时间点,第一数据对象的结束时间晚于时间点。第一数据对象的存续时间包含时间点t。多个第一数据对象为时间点t时刻期望显示的对象Expectatio。
在一个具体的实施例中,多个目标数据对象是基于创建时间由早到晚进行过排序的。进一步的,若两个目标数据对象的创建时间相同,则根据结束时间由早到晚进行排序。基于时间点从包含多个目标数据对象的目标数据对象集合中获取与时间点匹配的目标时间帧包含的多个第一数据对象,可以包括:
(1)基于时间点在目标数据对象集合进行二分查找,得到与时间点匹配的分割点数据对象。
其中,分割点数据对象的创建时间不晚于时间点,分割点数据对象之后相邻的目标数据对象的创建时间晚于时间点。即,分割点数据对象是时间点之前最后一个创建的数据对象,时间点处期望播放的数据对象Expectation为在分割点数据对象和分割点数据对象之前的数据对象组成的集合。
具体的,基于时间点在目标数据对象集合进行二分查找,得到与时间点匹配的分割点数据对象,包括:获取目标数据对象集合位于中间位置的中间数据对象;将中间数据对象的创建时间与时间点比较,若中间数据对象的创建时间与时间点相等,则将中间数据对象确定为分割点数据对象;若中间数据对象的创建时间晚于时间点,则将中间数据对象和中间数据对象之前的数据对象重新作为目标数据对象集合进行查找;若中间数据对象的创建时间早于时间点,则将中间数据对象和中间数据对象之后的数据对象重新作为目标数据对象集合进行迭代查找,在目标数据对象集合仅剩两个目标数据对象时停止迭代。当中间数据对象的创建时间与时间点相等,则将中间数据对象确定为分割点数据对象,若各轮迭代查找中中间数据对象的创建时间均与时间点不相等,则将最后一轮迭代查找的两个目标数据对象中的前一个确定为分割点数据对象。
(2)将分割点数据对象和分割点数据对象之前的多个目标数据对象的结束时间分别与时间点比较,得到与时间点匹配的多个第一数据对象。
由于时间点处期望播放的数据对象Expectation为在分割点数据对象和分割点数据对象之前的数据对象组成的集合。因此,只需要将分割点数据对象之前的多个目标数据对象的结束时间和时间点比较即可,不需要比较分割点数据对象之后的数据对象。
具体的,将分割点数据对象和分割点数据对象之前的多个目标数据对象的结束时间分别与时间点比较,将结束时间早于时间点t的那些数据对象过滤掉,保留结束时间晚于时间点t的数据对象,作为多个第一数据对象。因为结束时间早于时间点t的对象,已经被销毁,不需要进行显示。本申请只需要在时间1个维度上进行遍历比较,遍历性能较高。
S203、根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示目标时间帧。
本申请实施例中,可以直接对多个目标数据对象渲染,渲染显示目标时间帧。在显示目标时间帧后,将目标时间帧更新为当前时间帧,将目标时间帧的下一时间帧更新为目标时间帧,将更新后的目标时间帧作为时间点,按照时间帧周期重复执行S201-203即可实现视频的自动播放。
进一步的,为了提高显示效率,在一个具体的实施例中,根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示目标时间帧,可以包括:
(1)获取当前时间帧包含的数据对象。
(2)确定目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息。
在一个具体的实施例中,确定目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息,可以包括:对当前时间帧进行哈希查找,得到当前时间帧的数据对象,将当前时间帧的数据对象和多个第一数据对象进行比较,得到差异对象信息。
哈希查找是通过计算数据元素的存储地址进行查找的一种方法。例如使用哈希表的keys()函数可以快速返回当前时间帧Current的数据对象。使用哈希查找能够加速当前时间帧Current的数据对象的获取。例如,差异对象信息Diff=时间点处期望播放的数据对象Expectation–当前时间帧Current的数据对象。
(3)根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示目标时间帧。
在一个具体的实施例中,根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示目标时间帧,可以包括:
(1)将差异对象信息的部分或全部写入图形处理器。
其中,图形处理器(英语:graphics processing unit,缩写:GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器。
具体的,差异对象信息diff包括要新增显示的对象和要删除显示的对象。新增和删除操作,本质上是一样的,比如在图形处理器(GPU)中如果你要把一块区域改成红色,是新增;把一块区域改成透明,是删除。本质上都是修改那一个区域的值。
具体的,将差异对象信息的部分或全部写入图形处理器,可以包括:将差异对象信息划分为多个批次的分批差异信息;将多个批次的分批差异信息分批次写入图形处理器。具体的,获取预设数据容量,其中,预设数据容量根据图形处理器的性能确定,根据差异对象信息和预设数据容量确定批次数量,根据批次数量将差异对象信息划分为多个批次的分批差异信息。例如,差异对象信息Diff包括500个数据对象,批次数量为n。将差异对象信息Diff分批,分为diff1,diff2,diff3,……diff_n等等。当n=5时,差异对象信息Diff中有500个数据对象,可以分为5批进行。如果挨个将500个数据对象传到图形处理器可能要耗费1毫秒,100个数据对象需要100毫秒。但是将100个对象做成一批,可能3需要5毫秒。将差异对象信息Diff分批写入图形处理器,能够加速差异对象信息在内存和图形处理器上的传输。
(2)当目标时间帧的触发时刻触发时,将目标时间帧的触发时刻之前写入图形处理器的差异对象信息在目标时间帧上进行渲染显示。
具体的,视频播放时间轴按时间帧周期触发时间帧时刻。当位于时间点之后的第一个时间帧时刻触发,表明此时需要显示画面,此时利用图形处理器将将目标时间帧的触发时刻之前写入图形处理器的差异对象信息在目标时间帧上进行渲染显示。
本申请实施例通过比较当前时间帧和多个第一数据对象的差异对象信息,差异对象信息为目标时间帧和当前时间帧的差异,使用差异对象信息渲染当前时间帧得到目标时间帧,不需要对当前时间帧上已经有的数据帧再渲染,能够降低渲染时间,提高画面跳转速度。
进一步的,当位于时间点之后的第一个时间帧时刻触发时,判断多个批次的分批差异信息是否存在未写入图形处理器的分批差异信息;若存在,则将目标时间帧的触发时刻之前未写入图形处理器的差异对象信息,在目标时间帧之后的有限个相邻的时间帧周期内写入图形处理器。在时间点之后的第一个时间帧时刻触发时,如果有某些批次的分批差异信息来不及写入图形处理器,直接放弃,由下个时间帧执行。能够避免因未完全写入导致目标时间帧无法显示。因为一些比如商业智能等场景对帧内数据的完整性要求不高,不必强制要求所有分批差异信息都做完。
其中,目标时间帧包含的数据对象与当前时间帧包含的数据对象之间的差异对象信息在有限个相邻的时间帧周期内趋于零。当位于时间点之后的第一个时间帧时刻触发时,如果有某些批次的分批差异信息来不及写入图形处理器,直接放弃,在下一个时间帧周期执行。将目标时间帧更新为当前时间帧,将目标时间帧的下一时间帧更新为目标时间帧,将更新后的目标时间帧作为时间点,进行视频自动播放。其中,在视频自动播放时,时间点与目标时间帧位于同一时刻。在下一个时间帧周期中,计算新的时间点对应的差异对象信息diff。在写入新的时间点对应的差异对象信息diff时,同时写入上个时间点未写入图形处理器的差异对象信息diff。随着时间的推移,每个时间点对应的差异对象信息diff都会随着不断写入而逐渐减少,即每个时间点对应的差异对象信息diff都会收敛至零。即在有限个时间帧周期中,各个时间点对应的差异对象信息Diff趋于零,也即各个目标时间帧对应的差异对象信息Diff趋于零。使各个目标时间帧在有限个相邻的时间帧周期内显示完成。
本申请视频播放控制方法将视频以多个数据对象的方式存储,以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻,在获取到用户在视频播放时间轴上触发的时间点时,根据时间点从多个数据对象中找到与时间点匹配的多个第一数据对象,然后再根据多个第一数据对象显示目标时间帧,可以在用户点击视频播放时间轴时根据时间点快速确定对应的多个第一数据对象,进而根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息进而渲染显示,能够快速显示出用户点击视频播放时间轴时期望看到的画面,实现用户点击视频播放时间轴时画面快速跳转。
进一步,本申请实施例中提供一种视频播放控制方法,该视频播放控制方法应用于服务器,该视频播放控制方法包括:获取终端发送的视频播放请求;基于所述视频播放请求对预存数据对象集合进行筛选,得到多个与所述视频播放请求匹配的多个第二数据对象,所述预存数据对象集合包括多个预存数据对象和预存数据对象在视频播放时间轴上的创建时间和结束时间;基于创建时间对所述多个第二数据对象进行排序,得到目标数据对象集合;将所述目标数据对象集合返回至终端,以使所述终端基于所述目标数据对象集合进行时间帧显示。
参阅图4,图4是本申请实施例提供的一种视频播放控制方法另一实施例的流程示意图。本申请提供一种视频播放控制方法,应用于服务器,该视频播放控制方法包括S401-S404:
S401、获取终端发送的视频播放请求。
本申请实施例中,终端发送的视频播放请求包括播放预设视频。
S402、基于视频播放请求对预存数据对象集合进行筛选,得到多个与视频播放请求匹配的多个第二数据对象。
其中,预存数据对象集合包括多个预存数据对象和预存数据对象在视频播放时间轴上的创建时间和结束时间。
具体的,可预先将预设视频中的每个数据帧的数据对象提取出来,并确定各个数据对象的创建时间和结束时间,放入预存数据对象集合中。预存数据对象集合可能包含其他视频的对象,因此,根据视频播放请求对预存数据对象集合进行筛选,得到多个与视频播放请求匹配的多个第二数据对象。多个第二数据对象均为视频播放请求中预设视频所包含的数据对象。
S403、基于创建时间对多个第二数据对象进行排序,得到目标数据对象集合。
具体的,对多个第二数据对象按由早到晚进行排序,得到目标数据对象集合。进一步的,判断两个第二数据对象的创建时间是否相同,若两个第二数据对象的创建时间相同,则根据两个第二数据对象的结束时间由早到晚进行排序。当然,也可以对多个第二数据对象按由晚到早进行排序,根据具体情况设定即可。
S404、将目标数据对象集合返回至终端,以使终端基于目标数据对象集合进行时间帧显示。
具体的,通过网络将目标数据对象集合返回至终端,以使终端基于目标数据对象集合进行时间帧显示。
由于服务器的算力远远大于终端,所以使用服务器执行排序然后发送给终端,能够减小终端的计算压力。
进一步的,参阅图5,图5是本申请实施例提供的一种视频播放控制方法一具体实施方式的流程示意图。如图5所示,本申请实施例提供的一种视频播放控制方法,该视频播放控制方法包括S501-S515:
S501、终端获取用户的视频播放请求。
S502、终端将视频播放请求发送至服务器。
S503、服务器获取终端发送的视频播放请求。
S504、服务器基于视频播放请求对预存数据对象集合进行筛选,得到多个与视频播放请求匹配的多个第二数据对象。
S505、服务器基于创建时间对多个第二数据对象进行排序,得到目标数据对象集合。
S506、服务器将目标数据对象集合返回至终端。
S507、终端基于多个目标数据对象进行视频播放。
S508、终端获取用户在视频播放时间轴上触发的时间轴点击位置。
S509、终端基于时间轴点击位置确定时间点。
S510、终端基于时间点在目标数据对象集合进行二分查找,得到与时间点匹配的分割点数据对象。
S511、终端将分割点数据对象和分割点数据对象之前的多个目标数据对象的结束时间分别与时间点比较,得到与时间点匹配的多个第一数据对象。
S512、终端获取当前时间帧包含的数据对象。
S513、终端确定目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息。
S514、终端将差异对象信息的部分或全部写入图形处理器。
S515、终端当目标时间帧的触发时刻触发时,将目标时间帧的触发时刻之前写入图形处理器的差异对象信息在目标时间帧上进行渲染显示。
为了更好地实施以上方法,相应的,本申请实施例还提供一种视频播放控制装置,该视频播放控制装置具体可以集成在终端中,例如以终端的形式集成在终端中。
参考图6,该视频播放控制装置包括:
第一获取单元701,用于获取视频播放时间轴上触发的时间点;
第二获取单元702,用于基于时间点从包含多个目标数据对象的目标数据对象集合中获取与时间点匹配的目标时间帧包含的多个第一数据对象;目标数据对象集合以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻;其中,第一数据对象的创建时刻不晚于时间点,第一数据对象的结束时刻晚于时间点;
显示单元703,用于根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示目标时间帧。
在一个可选的实施例中,显示单元用于:
将目标时间帧更新为当前时间帧,将目标时间帧的下一时间帧更新为目标时间帧,将更新后的目标时间帧作为时间点,按照时间帧周期重复执行视频播放控制方法的步骤。
在一个可选的实施例中,第一获取单元,包括:
播放请求获取单元,获取用户的视频播放请求;
发送单元,用于将视频播放请求发送至服务器,并获取服务器返回的基于视频播放请求筛选得到的目标数据对象集合。
在一个可选的实施例中,发送单元,用于:获取服务器返回的基于视频播放请求筛选,并按照数据对象的创建时间排序后得到的目标数据对象集合。
在一个可选的实施例中,第二获取单元,包括:
二分查找单元,用于基于时间点在目标数据对象集合进行二分查找,得到与时间点匹配的分割点数据对象,其中,分割点数据对象的创建时间不晚于时间点,分割点数据对象之后相邻的目标数据对象的创建时间晚于时间点;
时间比较单元,用于将分割点数据对象和分割点数据对象之前的多个目标数据对象的结束时间分别与时间点比较,将结束时刻晚于时间点的目标数据对象作为与时间点匹配的多个第一数据对象。
在一个可选的实施例中,显示单元还包括:
哈希查找单元,用于对当前时间帧进行哈希查找,得到当前时间帧的数据对象。
在一个可选的实施例中,显示单元还包括:
写入单元,用于将差异对象信息的部分或全部写入图形处理器;
渲染单元,用于当目标时间帧的触发时刻触发时,将目标时间帧的触发时刻之前写入图形处理器的差异对象信息在目标时间帧上进行渲染显示。
在一个可选的实施例中,写入单元包括:
分批单元,用于将差异对象信息划分为多个批次的分批差异信息;
子写入单元,用于将多个批次的分批差异信息分批次写入图形处理器。
在一个可选的实施例中,视频播放控制方法还用于:用于当目标时间帧的触发时刻触发时,判断多个批次的分批差异信息是否存在未写入图形处理器的分批差异信息;若存在,则将目标时间帧的触发时刻之前未写入图形处理器的差异对象信息,在目标时间帧之后的有限个相邻的时间帧周期内写入图形处理器。
在一个可选的实施例中,目标时间帧包含的数据对象与当前时间帧包含的数据对象之间的差异对象信息在有限个相邻的时间帧周期内趋于零。
本申请视频播放控制方法将视频以多个数据对象的方式存储,以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻,在获取到用户在视频播放时间轴上触发的时间点时,根据时间点从多个数据对象中找到与时间点匹配的多个第一数据对象,然后再根据多个第一数据对象显示目标时间帧,可以在用户点击视频播放时间轴时根据时间点快速确定对应的多个第一数据对象,进而根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息进而渲染显示,能够快速显示出用户点击视频播放时间轴时期望看到的画面,实现用户点击视频播放时间轴时画面快速跳转。
为了更好地实施以上方法,相应的,本申请实施例还提供一种视频播放控制装置,该视频播放控制装置具体可以集成在服务器中。
参考图7,该视频播放控制装置包括:
本申请实施例还提供了一种视频播放控制装置,包括:
获取单元801,用于获取终端发送的视频播放请求;
筛选单元802,用于基于所述视频播放请求对预存数据对象集合进行筛选,得到多个与所述视频播放请求匹配的多个第二数据对象,所述预存数据对象集合包括多个预存数据对象和预存数据对象在视频播放时间轴上的创建时间和结束时间;
排序单元803,用于基于创建时间对所述多个第二数据对象进行排序,得到目标数据对象集合;
返回单元804,用于将所述目标数据对象集合返回至终端,以使所述终端基于所述目标数据对象集合进行时间帧显示。
此外,本申请实施例还提供一种电子设备,该电子设备可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机(PC,Personal Computer)、个人数字助理(Personal Digital Assistant,PDA)等终端设备。如图8所示,图8为本申请实施例提供的电子设备的结构示意图。其中,电子设备为终端1000。该终端1000包括有一个或者一个以上处理核心的处理器901、有一个或一个以上计算机可读存储介质的存储器902及存储在存储器902上并可在处理器上运行的计算机程序。其中,处理器901与存储器902电性连接。本领域技术人员可以理解,图中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器901是终端1000的控制中心,利用各种接口和线路连接整个终端1000的各个部分,通过运行或加载存储在存储器902内的软件程序和/或模块,以及调用存储在存储器902内的数据,执行终端1000的各种功能和处理数据,从而对终端1000进行整体监控。
在本申请实施例中,终端1000中的处理器901会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器902中,并由处理器901来运行存储在存储器902中的应用程序,从而实现各种功能:
获取视频播放时间轴上触发的时间点;基于时间点从包含多个目标数据对象的目标数据对象集合中获取与时间点匹配的目标时间帧包含的多个第一数据对象;数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻;根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示目标时间帧。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
可选的,如图8所示,终端1000还包括:触控显示屏903、射频电路904、音频电路905、输入单元906以及电源907。其中,处理器901分别与触控显示屏903、射频电路904、音频电路905、输入单元906以及电源907电性连接。本领域技术人员可以理解,图8中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
触控显示屏903可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏903可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器901,并能接收处理器901发来的命令并加以执行。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器901以确定触摸事件的类型,随后处理器901根据触摸事件的类型在显示面板上提供相应的视觉输出。在本申请实施例中,可以将触控面板与显示面板集成到触控显示屏903而实现输入和输出功能。但是在某些实施例中,触控面板与触控面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏903也可以作为输入单元906的一部分实现输入功能。
射频电路904可用于收发射频信号,以通过无线通信与网络设备或其他终端建立无线通讯,与网络设备或其他终端之间收发信号。
音频电路905可以用于通过扬声器、传声器提供用户与终端之间的音频接口。音频电路905可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路905接收后转换为音频数据,再将音频数据输出处理器901处理后,经射频电路904以发送给比如另一终端,或者将音频数据输出至存储器902以便进一步处理。音频电路905还可能包括耳塞插孔,以提供外设耳机与终端的通信。
输入单元906可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
电源907用于给终端1000的各个部件供电。可选的,电源907可以通过电源管理系统与处理器901逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源907还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管图8中未示出,终端1000还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种视频播放控制方法中的步骤。例如,该计算机程序可以执行如下步骤:
获取视频播放时间轴上触发的时间点;基于时间点从包含多个目标数据对象的目标数据对象集合中获取与时间点匹配的目标时间帧包含的多个第一数据对象;目标数据对象集合以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻;其中,第一数据对象的创建时刻不晚于时间点,第一数据对象的结束时刻晚于时间点;根据目标时间帧包含的多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示目标时间帧。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种视频播放控制方法中的步骤,因此,可以实现本申请实施例所提供的任一种视频播放控制方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种视频播放控制方法、装置、电子设备及存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。

Claims (13)

1.一种视频播放控制方法,其特征在于,所述视频播放控制方法包括:
获取视频播放时间轴上触发的时间点;
基于所述时间点从包含多个目标数据对象的目标数据对象集合中获取与所述时间点匹配的目标时间帧包含的多个第一数据对象;所述目标数据对象集合以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻;其中,所述第一数据对象的创建时刻不晚于所述时间点,所述第一数据对象的结束时刻晚于所述时间点;
根据所述目标时间帧包含的所述多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示所述目标时间帧。
2.根据权利要求1所述的视频播放控制方法,其特征在于,所述视频播放控制方法还包括:
将所述目标时间帧更新为当前时间帧,将所述目标时间帧的下一时间帧更新为目标时间帧,将更新后的目标时间帧作为所述时间点,按照时间帧周期重复执行如权利要求1所述视频播放控制方法的步骤。
3.根据权利要求1所述的视频播放控制方法,其特征在于,在所述获取视频播放时间轴上触发的时间点之前,还包括:
获取用户的视频播放请求;
将所述视频播放请求发送至服务器,并获取所述服务器返回的基于所述视频播放请求筛选得到的目标数据对象集合。
4.根据权利要求3所述的视频播放控制方法,其特征在于,所述获取所述服务器返回的基于所述视频播放请求筛选得到的目标数据对象集合,包括:
获取所述服务器返回的基于所述视频播放请求筛选,并按照数据对象的创建时间排序后得到的目标数据对象集合。
5.根据权利要求4所述的视频播放控制方法,其特征在于,所述基于所述时间点从包含多个目标数据对象的目标数据对象集合中获取与所述时间点匹配的目标时间帧包含的多个第一数据对象,包括:
基于所述时间点在所述目标数据对象集合进行二分查找,得到与所述时间点匹配的分割点数据对象,其中,所述分割点数据对象的创建时间不晚于所述时间点,所述分割点数据对象之后相邻的目标数据对象的创建时间晚于所述时间点;
将所述分割点数据对象和所述分割点数据对象之前的多个目标数据对象的结束时间分别与所述时间点比较,将结束时刻晚于所述时间点的目标数据对象作为与所述时间点匹配的多个第一数据对象。
6.根据权利要求1所述的视频播放控制方法,其特征在于,所述视频播放控制方法还包括:
对所述当前时间帧进行哈希查找,得到所述当前时间帧的数据对象。
7.根据权利要求1所述的视频播放控制方法,其特征在于,所述视频播放控制方法还包括:
将所述差异对象信息的部分或全部写入图形处理器;
当所述目标时间帧的触发时刻触发时,将所述目标时间帧的触发时刻之前写入所述图形处理器的差异对象信息在所述目标时间帧上进行渲染显示。
8.根据权利要求7所述的视频播放控制方法,其特征在于,所述将所述差异对象信息的部分或全部写入图形处理器,包括:
将所述差异对象信息划分为多个批次的分批差异信息;
将所述多个批次的分批差异信息分批次写入所述图形处理器。
9.根据权利要求8所述的视频播放控制方法,其特征在于,所述视频播放控制方法还包括:
当所述目标时间帧的触发时刻触发时,判断所述多个批次的分批差异信息是否存在未写入所述图形处理器的分批差异信息;
若存在,则将所述目标时间帧的触发时刻之前未写入所述图形处理器的差异对象信息,在所述目标时间帧之后的有限个相邻的时间帧周期内写入所述图形处理器。
10.根据权利要求9所述的视频播放控制方法,其特征在于,所述目标时间帧包含的数据对象与当前时间帧包含的数据对象之间的所述差异对象信息在有限个相邻的时间帧周期内趋于零。
11.一种视频播放控制装置,其特征在于,包括:
第一获取单元,用于获取视频播放时间轴上触发的时间点;
第二获取单元,用于基于所述时间点从包含多个目标数据对象的目标数据对象集合中获取与所述时间点匹配的目标时间帧包含的多个第一数据对象;所述目标数据对象集合以面向数据对象的数据结构组织数据对象,数据对象具有表征数据对象在视频画面中首次出现的创建时刻,以及表征数据对象在视频画面中最后出现的结束时刻;其中,所述第一数据对象的创建时刻不晚于所述时间点,所述第一数据对象的结束时刻晚于所述时间点;
显示单元,用于根据所述目标时间帧包含的所述多个第一数据对象与当前时间帧包含的数据对象的差异对象信息的部分或全部,更新当前时间帧中的数据对象,以在目标时间帧的触发时刻渲染显示所述目标时间帧。
12.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如权利要求1-10任一项所述方法的步骤。
13.一种存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1-10任一项所述方法的步骤。
CN202210430084.7A 2022-04-22 2022-04-22 一种视频播放控制方法、装置、电子设备及存储介质 Active CN114915850B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210430084.7A CN114915850B (zh) 2022-04-22 2022-04-22 一种视频播放控制方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210430084.7A CN114915850B (zh) 2022-04-22 2022-04-22 一种视频播放控制方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN114915850A true CN114915850A (zh) 2022-08-16
CN114915850B CN114915850B (zh) 2023-09-12

Family

ID=82764621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210430084.7A Active CN114915850B (zh) 2022-04-22 2022-04-22 一种视频播放控制方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114915850B (zh)

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008033743A (ja) * 2006-07-31 2008-02-14 Fuji Xerox Co Ltd 時系列データ再生制御のためのプログラム及び装置
KR20150131539A (ko) * 2014-05-15 2015-11-25 조은형 콘텐츠 재생 방법 및 이를 수행하는 전자 기기
CN105681874A (zh) * 2015-06-02 2016-06-15 深圳Tcl数字技术有限公司 网络视频在线播放的方法和装置
CN105898625A (zh) * 2016-04-29 2016-08-24 腾讯科技(深圳)有限公司 一种播放处理方法及终端设备
JP2017011498A (ja) * 2015-06-22 2017-01-12 株式会社ブロードリーフ 動画再生装置及び動画再生方法
CN106412691A (zh) * 2015-07-27 2017-02-15 腾讯科技(深圳)有限公司 一种视频图像的截取方法和装置
US20170264973A1 (en) * 2016-03-14 2017-09-14 Le Holdings (Beijing) Co., Ltd. Video playing method and electronic device
EP3232313A1 (fr) * 2016-04-15 2017-10-18 Wiztivi Procédé de navigation dans une interface graphique de guide des programmes
CN107820115A (zh) * 2017-09-30 2018-03-20 中兴通讯股份有限公司 实现视频信息预览的方法、装置及客户端和存储介质
CN108337471A (zh) * 2017-02-24 2018-07-27 腾讯科技(深圳)有限公司 视频画面的处理方法及装置
CN112291620A (zh) * 2020-09-22 2021-01-29 北京邮电大学 视频播放方法、装置、电子设备及存储介质
CN112822522A (zh) * 2020-12-31 2021-05-18 北京梧桐车联科技有限责任公司 视频播放方法、装置、设备及存储介质
CN113099287A (zh) * 2021-03-31 2021-07-09 上海哔哩哔哩科技有限公司 视频制作方法及装置
CN113099288A (zh) * 2021-03-31 2021-07-09 上海哔哩哔哩科技有限公司 视频制作方法及装置
CN113315996A (zh) * 2021-05-17 2021-08-27 游艺星际(北京)科技有限公司 控制视频播放的方法、装置及电子设备
CN113423009A (zh) * 2021-08-23 2021-09-21 北京拓课网络科技有限公司 一种视频进度调整方法、装置及电子设备
CN113630649A (zh) * 2021-08-05 2021-11-09 海信电子科技(武汉)有限公司 一种显示设备及视频播放进度的调整方法
WO2022063022A1 (zh) * 2020-09-22 2022-03-31 维沃移动通信有限公司 视频预览方法、装置及电子设备

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008033743A (ja) * 2006-07-31 2008-02-14 Fuji Xerox Co Ltd 時系列データ再生制御のためのプログラム及び装置
KR20150131539A (ko) * 2014-05-15 2015-11-25 조은형 콘텐츠 재생 방법 및 이를 수행하는 전자 기기
CN105681874A (zh) * 2015-06-02 2016-06-15 深圳Tcl数字技术有限公司 网络视频在线播放的方法和装置
JP2017011498A (ja) * 2015-06-22 2017-01-12 株式会社ブロードリーフ 動画再生装置及び動画再生方法
CN106412691A (zh) * 2015-07-27 2017-02-15 腾讯科技(深圳)有限公司 一种视频图像的截取方法和装置
US20170264973A1 (en) * 2016-03-14 2017-09-14 Le Holdings (Beijing) Co., Ltd. Video playing method and electronic device
EP3232313A1 (fr) * 2016-04-15 2017-10-18 Wiztivi Procédé de navigation dans une interface graphique de guide des programmes
CN105898625A (zh) * 2016-04-29 2016-08-24 腾讯科技(深圳)有限公司 一种播放处理方法及终端设备
CN108337471A (zh) * 2017-02-24 2018-07-27 腾讯科技(深圳)有限公司 视频画面的处理方法及装置
CN107820115A (zh) * 2017-09-30 2018-03-20 中兴通讯股份有限公司 实现视频信息预览的方法、装置及客户端和存储介质
CN112291620A (zh) * 2020-09-22 2021-01-29 北京邮电大学 视频播放方法、装置、电子设备及存储介质
WO2022063022A1 (zh) * 2020-09-22 2022-03-31 维沃移动通信有限公司 视频预览方法、装置及电子设备
CN112822522A (zh) * 2020-12-31 2021-05-18 北京梧桐车联科技有限责任公司 视频播放方法、装置、设备及存储介质
CN113099287A (zh) * 2021-03-31 2021-07-09 上海哔哩哔哩科技有限公司 视频制作方法及装置
CN113099288A (zh) * 2021-03-31 2021-07-09 上海哔哩哔哩科技有限公司 视频制作方法及装置
CN113315996A (zh) * 2021-05-17 2021-08-27 游艺星际(北京)科技有限公司 控制视频播放的方法、装置及电子设备
CN113630649A (zh) * 2021-08-05 2021-11-09 海信电子科技(武汉)有限公司 一种显示设备及视频播放进度的调整方法
CN113423009A (zh) * 2021-08-23 2021-09-21 北京拓课网络科技有限公司 一种视频进度调整方法、装置及电子设备

Also Published As

Publication number Publication date
CN114915850B (zh) 2023-09-12

Similar Documents

Publication Publication Date Title
CN110827378B (zh) 虚拟形象的生成方法、装置、终端及存储介质
CN113360238A (zh) 消息处理方法、装置、电子设备和存储介质
JP2022520094A (ja) インタフェース表示方法及びその装置、端末並びにコンピュータプログラム
WO2020220773A1 (zh) 图片预览信息的显示方法、装置、电子设备及计算机可读存储介质
CN113094135B (zh) 页面显示控制方法、装置、设备及存储介质
CN108984142B (zh) 分屏显示方法、装置、存储介质和电子设备
CN111464430A (zh) 一种动态表情展示方法、动态表情创建方法及装置
CN113546419A (zh) 游戏地图显示方法、装置、终端及存储介质
CN110045958B (zh) 纹理数据生成方法、装置、存储介质及设备
CN114721761A (zh) 一种终端设备、应用图标管理方法和存储介质
CN114095793A (zh) 一种视频播放方法、装置、计算机设备及存储介质
CN111638828A (zh) 界面显示方法及装置
CN114546219B (zh) 图片列表的处理方法及相关装置
CN114915850B (zh) 一种视频播放控制方法、装置、电子设备及存储介质
CN115828845A (zh) 多媒体数据查看方法、装置、介质及设备
CN112783386A (zh) 页面跳转方法、装置、存储介质及计算机设备
CN115017340A (zh) 多媒体资源生成方法、装置、电子设备及存储介质
CN112312058B (zh) 交互方法、装置和电子设备
CN114816597A (zh) 一种内容展示方法、装置和计算机可读存储介质
CN113126867A (zh) 浏览器控制方法、装置、浏览器、终端及存储介质
CN113220954A (zh) 一种信息展示方法、装置及投影设备
CN114416234B (zh) 一种页面切换方法、装置、计算机设备及存储介质
CN112114735A (zh) 用于管理任务的方法和装置
WO2022252872A1 (zh) 设备控制方法、装置、电子设备及存储介质
CN115174504B (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