CN114666666A - 视频跳转播放方法、装置、终端设备及存储介质 - Google Patents
视频跳转播放方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN114666666A CN114666666A CN202011540293.4A CN202011540293A CN114666666A CN 114666666 A CN114666666 A CN 114666666A CN 202011540293 A CN202011540293 A CN 202011540293A CN 114666666 A CN114666666 A CN 114666666A
- Authority
- CN
- China
- Prior art keywords
- node
- playing
- information
- jumping
- video frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/23805—Controlling the feeding rate to the network, e.g. by controlling the video pump
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4331—Caching operations, e.g. of an advertisement for later insertion during playback
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本公开实施例提供一种视频跳转播放方法、装置、终端设备及存储介质,该方法包括:获取用户输入的第一跳转信息;确定第一跳转信息所指示的第一播放节点;根据第一跳转信息,预测第二播放节点,并将第二播放节点对应的目标视频帧缓存至缓存池中,其中,第二播放节点在第一播放节点之后;获取用户输入的第二跳转信息,若第二跳转信息指示的播放节点为第二播放节点,播放缓存池中的目标视频帧。由于目标视频帧被预先缓存在缓存池中,因此,在根据第二跳转信息进行视频跳转播放时,无需进行实时的解码过程,可以直接调用已被缓存的目标视频帧进行视频播放,避免了跳转操作时的视频卡顿问题,提高视频跳转播放时的视频播放流畅度。
Description
技术领域
本公开实施例涉及计算机技术领域,尤其涉及一种视频跳转播放方法、装置、终端设备及存储介质。
背景技术
随着移动互联网的发展,在移动端进行视频播放等需要视频解码的需求正日益扩大。然而由于移动端设备性能有限,在解码器的设计方案中并不能缓存大量的视频帧裸数据用于提供给上层使用。
现有技术中,一种通常的情形是,在解码器启动后,设备会缓存一定量的视频帧数据并暂停解码,当缓存的数据被上层应用消耗至有空余缓存位的时候,再启动解码器进行解码并缓存至缓存池满,该过程循环往复,保证了上层始终有视频帧数据可用。
然而,除正常播放以外,用户还经常会有跳转播放的需求,即手动改变视频播放的节点,在需要对视频进行快速跳转时,由于跳转操作速度快,设备无法及时解码跳转至目标播放位置的视频,因此,造成跳转操作时出现视频卡顿,影响视频正常播放的问题,降低用户体验。
发明内容
本公开实施例提供一种视频跳转播放方法、装置、终端设备及存储介质,以克服跳转操作时出现的视频卡顿,影响视频正常播放的问题。
第一方面,本公开实施例提供一种视频跳转播放方法,包括:
获取用户输入的第一跳转信息;确定所述第一跳转信息所指示的第一播放节点;根据所述第一跳转信息,预测第二播放节点,并将所述第二播放节点对应的目标视频帧缓存至缓存池中,其中,所述第二播放节点在所述第一播放节点之后;获取用户输入的第二跳转信息,若所述第二跳转信息指示的播放节点为所述第二播放节点,播放所述缓存池中的目标视频帧。
第二方面,本公开实施例提供一种视频跳转播放装置,包括:
获取单元,用于获取用户输入的第一跳转信息,并确定所述第一跳转信息所指示的第一播放节点;
预测单元,用于根据所述第一跳转信息,预测第二播放节点,并将所述第二播放节点对应的目标视频帧缓存至缓存池中,其中,所述第二播放节点在所述第一播放节点之后;
播放单元,用于获取用户输入的第二跳转信息,若所述第二跳转信息指示的播放节点为所述第二播放节点,播放所述缓存池中的目标视频帧。
第三方面,本公开实施例提供一种终端设备,包括触摸屏、控制器和存储器,其中:
所述触摸屏用于,获取用户输入的第一跳转信息;
所述控制器用于,确定所述第一跳转信息所指示的第一播放节点;根据所述第一跳转信息,预测第二播放节点,并将所述第二播放节点对应的目标视频帧缓存至所述存储器中,其中,所述第二播放节点在所述第一播放节点之后;
所述触摸屏还用于,获取用户输入的第二跳转信息,若所述第二跳转信息指示的播放节点为所述第二播放节点,播放所述存储器中的目标视频帧。
第四方面,本公开实施例提供一种电子设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的视频跳转播放方法。
第五方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的视频跳转播放方法。
第六方面,本公开实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能的设计所述的视频跳转播放方法。
本实施例提供的视频跳转播放方法、装置、终端设备及存储介质,该方法通过获取用户输入的第一跳转信息;确定所述第一跳转信息所指示的第一播放节点;根据所述第一跳转信息,预测第二播放节点,并将所述第二播放节点对应的目标视频帧缓存至缓存池中,其中,所述第二播放节点在所述第一播放节点之后;获取用户输入的第二跳转信息,若所述第二跳转信息指示的播放节点为所述第二播放节点,播放所述缓存池中的目标视频帧。由于目标视频帧被预先缓存在缓存池中,因此,在根据第二跳转信息进行视频跳转播放时,无需进行实时的解码过程,可以直接调用已被缓存的目标视频帧进行视频播放,避免了跳转操作时的视频卡顿问题,提高视频跳转播放时的视频播放流畅度,优化用户体验。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中一种视频正常播放过程的示例图;
图2为现有技术中一种视频跳转播放过程的示例图;
图3为本公开实施例提供的视频跳转播放方法流程示意图一;
图4为本公开实施例提供的一种应用程序的UI示意图;
图5为本公开实施例提供的另一种应用程序的UI示意图;
图6为本公开实施例提供的视频跳转播放方法流程示意图二;
图7为本实施例提供的步骤S203的一种可能的实现方式;
图8为本公开实施例提供的一种跳转节点的节点时间信息的示意图;
图9为本实施例提供的一种根据跳转节点确定第二播放节点的示意图;
图10为本实施例提供的步骤S2032的一种可能的实现方式;
图11为本公开实施例提供的确定第二播放节点的示意图;
图12为本公开实施例提供的一种包含预览窗口的应用程序UI示意图;
图13为本公开实施例提供的视频跳转播放装置的结构框图;
图14为本公开实施例提供的终端设备的结构框图;
图15为本公开实施例提供的电子设备的结构框图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
图1为现有技术中一种视频正常播放过程的示例图。参考图1,现有技术中,在原始视频数据进行播放前,需要进行解码。在应用程序调用解码器进行视频播放的过程中,通常是边解码,边播放。即在解码器启动后,设备会缓存一定量的视频帧数据并暂停解码,当缓存的数据被上层应用程序消耗至有空余缓存位的时候,再启动解码器进行解码并缓存至缓存池满,该过程循环往复,保证了上层应用始终有视频帧数据可用。
然而,除正常播放以外,用户还经常会有跳转播放的需求,即手动改变视频播放的节点。图2为现有技术中一种视频跳转播放过程的示例图,参考图2,在需要对视频进行快速跳转时,由于跳转操作速度快,而解码器进行视频数据解码需要一定的时间,导致设备无法及时完成对跳转至目标播放位置的视频的解码。因此,造成视频跳转后出现视频卡顿,影响视频正常播放或预览,降低视频播放的流畅度,降低用户体验。
本公开实施例提供一种视频跳转播放方法以解决上述问题。
图3为本公开实施例提供的视频跳转播放方法流程示意图一,本实施例的方法可以应用在终端设备中,参考图3,该视频跳转播放方法包括:
S101:获取用户输入的第一跳转信息。
在本实施例中,第一跳转信息是指在视频播放过程中,用户向终端设备输入的用于调整视频播放进度的指令信息,例如,向前调整视频播放进度至50%,再例如,退回视频播放进度至3分05秒等。对于第一跳转信息的具体实现内容,此处不进行限定,也不再一一赘述。
获取用户输入的第一跳转信息的方式有多种,终端设备包括触摸屏,终端设备上运行有用于播放视频的应用程序,用户根据该应用程序的用户交互界面(User Interface,UI),在触摸屏的指定位置上进行触摸操作,以控制应用程序对视频播放进度进行跳转,进而,终端设备通过触摸屏获得用户输入的触摸操作对应的控制指令,即为第一跳转信息。
具体地,在一种可能的实现方式中,进行触摸操作包括拖动或滑动播放进度条,图4为本公开实施例提供的一种应用程序的UI示意图,参考图4,应用程序的UI上设置有进度条,用户在触摸屏上通过向前或向后拖动进度条,可以实现视频的跳转。终端设备通过触摸屏,获取对应的第一跳转信息。
在另一种可能的实现方式中,进行触摸操作包括点击“快进”或“快退”等跳转按钮,图5为本公开实施例提供的另一种应用程序的UI示意图,参考图5,应用程序的UI上设置有“快进”和“快退”按钮,用户在触摸屏上通过点击“快进”或“快退”按钮,可以实现视频的跳转。具体地,用户每点击一次“快进”或“快退”按钮,则视频固定向后或向前跳转预设时间。用户点击“快进”或“快退”按钮的速度越快,则视频向后或向前跳转的距离越远。例如,以用户点击“快进”为例,用户点击“快进”的频率为1次/秒时,视频每次快进5s;用户点击“快进”的频率为3次/秒时,视频每次快进10s。终端设备通过触摸屏,获取对应的跳转信息。
S102:确定第一跳转信息所指示的第一播放节点。
示例性地,第一跳转信息是指在视频播放过程中,用户向终端设备输入的用于调整视频播放进度的指令信息,终端设备根据第一跳转信息对视频进行跳转的目标位置,即为第一播放节点。更具体地,例如,用户在触摸屏上通过向前或向后拖动进度条,实现视频的跳转,在用户进行拖拽操作的过程中,拖拽的进度条已到达或经过的视频位置,即为第一播放节点。
S103:根据第一跳转信息,预测第二播放节点,并将第二播放节点对应的目标视频帧缓存至缓存池中,其中,第二播放节点在第一播放节点之后。
在本实施例中,目标视频帧是指需要在终端设备上进行播放或预览的视频帧,播放目标视频帧,可以是只对目标视频帧进行播放,也可以是对目标视频帧以及其之后的视频帧进行连续播放,此处不进行具体限定。
具体地,第一跳转信息可以是通过用户对终端设备进行触摸操作等方式获得的,由于用户的操作行为具有一定的目的性,因此用户进行的跳转操作,例如滑动进度条,也具有规律性。因此,可以根据第一跳转信息对应的跳转操作的变化规律,例如速度变化规律、节凑变化规律等,对将要跳转的位置进行预测,该将要跳转的位置即为第二播放节点,并将预测的第二播放节点处的视频数据,即目标视频帧进行提前解码和缓存,在之后需要对该目标视频帧进行播放时,即可直接播放,无需再进行实时解码,避免由于解码而导致的卡顿。
其中,预测的第二播放节点处的视频数据进行解码后,缓存在预设的缓存池中。该缓存池可以是终端设备内的硬盘、内存等存储介质,并通过总线等有线传输方式进行缓存;该缓存池也可以是云端服务器、网络设备内的硬盘、内存等存储介质,并通过无线通信的方式进行缓存,此处,不对此进行具体限定,可以根据具体需要进行设置。
S104:获取用户输入的第二跳转信息,若第二跳转信息指示的播放节点为第二播放节点,播放缓存池中的目标视频帧。
示例性地,第二跳转信息与第一跳转信息类似,也是指在视频播放过程中,用户向终端设备输入的用于调整视频播放进度的指令信息。上述预测的第二播放节点所指示的视频位置,即为终端设备根据第二跳转信息对视频进行跳转的目标位置。其中,第二跳转信息是在第一跳转信息之后接收到的信息,在一种可能的实现方式中,第一跳转信息和第二跳转信息是连续发生的,例如,用户在触摸屏上通过向前或向后拖动进度条,实现视频的跳转,在用户进行拖拽操作的过程中,根据进度条的拖拽轨迹,先后生成第一跳转信息和第二跳转信息,分别用于向终端设备指示跳转至第一播放节点和目标播放节点,其中,若该目标播放节点为预测的第二播放节点,则对缓存池中缓存的,与第二播放节点对应的目标视频帧进行播放。由于该目标视频帧已被解压和缓存,所以无需在进行额外的实时解压处理,因此耗时更短。
本公开实施例中,通过获取用户输入的第一跳转信息;确定第一跳转信息所指示的第一播放节点;根据第一跳转信息,预测第二播放节点,并将第二播放节点对应的目标视频帧缓存至缓存池中,其中,第二播放节点在第一播放节点之后;获取用户输入的第二跳转信息,若第二跳转信息指示的播放节点为第二播放节点,播放缓存池中的目标视频帧。由于目标视频帧被预先缓存在缓存池中,因此,在根据第二跳转信息进行视频跳转播放时,无需进行实时的解码过程,可以直接调用已被缓存的目标视频帧进行视频播放,避免了跳转操作时的视频卡顿问题,提高视频跳转播放时的视频播放流畅度,优化用户体验。
参考图6,图6为本公开实施例提供的视频跳转播放方法流程示意图二。本实施例在图3所示实施例提供的视频跳转播放方法的基础上,对步骤S103进一步细化,该视频跳转播放方法包括:
步骤S201:获取用户输入的第一跳转信息。
步骤S202:确定第一跳转信息所指示的第一播放节点。
步骤S203:根据第一跳转信息,预测第二播放节点。
具体地,第一跳转信息包括多个跳转节点,跳转节点与视频数据的播放节点具有一一映射关系。播放节点为用于表征视频数据的播放位置的信息,根据播放节点,可以确定对应的视频数据播放位置,也即视频帧。
参考图7,图7为本实施例提供的步骤S203的一种可能的实现方式,其中,步骤S203包括:
步骤S2031:获取各跳转节点的节点时间信息。
本公开实施例中,跳转节点的节点时间信息即跳转节点关于时间的描述信息。例如,跳转节点A对应视频第12分03秒,则跳转节点A的节点时间信息包括12分03秒这个时刻。
具体地,跳转节点在进度条上的位置,与跳转节点的节点时间信息具有预设的映射关系。图8为本公开实施例提供的一种跳转节点的节点时间信息的示意图,参考图8,跳转节点分别对应一个节点时间信息,该节点时间信息可以用于表征视频的播放位置,如图8所示,跳转节点A1对应12分15秒,跳转节点A2对应1小时13分22秒。
步骤S2032:根据各节点时间信息之间的变化量,确定第二播放节点。
本公开实施例中,跳转节点至少包括第一跳转节点和第二跳转节点,其中,第一跳转信息对应的滑动轨迹依次经过第一跳转节点和第二跳转节点。具体地,图9为本实施例提供的一种根据跳转节点确定第二播放节点的示意图,参考图9,用户输入的第一跳转信息对应一个滑动轨迹,随着滑动轨迹的延伸,滑动轨迹依次经过第一跳转节点和第二跳转节点,在滑动轨迹到达第二跳转节点位置后,通过在第一跳转节点和第二跳转节点位置处获得节点时间信息,根据至少两个跳转节点之间的节点时间信息的变化情况,可以预测在滑动轨迹上的下一个跳转节点,例如第三跳转节点的节点时间信息,进而将第三跳转节点作为预测的第二播放节点。
参考图10,图10为本实施例提供的步骤S2032的一种可能的实现方式,其中,步骤S2032包括:
步骤S2032A:获取第一跳转节点和第二跳转节点的节点时间信息。
本公开实施例中,第一跳转节点和第二跳转节点为滑动轨迹开始后先后经过的两个跳转节点,例如,第一跳转节点在滑动轨迹经过的第1个预设像素单位,第二跳转节点在滑动轨迹经过的的第20个预设像素单位。第一跳转节点和第二跳转节点分别对应一个节点时间信息,例如第一跳转节点对应视频的第1分03秒,第二跳转节点对应视频的第1分06秒。
步骤S2032B:根据第一跳转节点和第二跳转节点的节点时间信息,确定节点加速度信息。
本公开实施例中,节点时间信息包括系统时间、显示时间戳。其中,系统时间为执行本公开实施例提供的视频跳转播放方法的终端设备的操作系统时间,例如2020年7月15日16点21分12秒。显示时间戳为显示的视频播放的时间,例如30分03秒。其中,第一跳转节点与第二跳转节点的显示时间戳的差值,相当于在滑动轨迹经过第一跳转节点和第二跳转节点后,视频播放的长度;第一跳转节点与第二跳转节点的系统时间的差值,相当于在滑动轨迹经过第一跳转节点和第二跳转节点后,经过的客观时长。因此,视频播放的长度与客观时长的比值,即为滑动轨迹在第二跳转节点处的速度,也即,第二跳转节点处的视频跳转速度。
具体地,根据第二跳转节点的显示时间戳与第一跳转节点的显示时间戳的差,与第二跳转节点的系统时间与第一跳转节点的系统时间的差的比值,确定第二跳转节点的瞬时速度信息。
由于用户在进行滑动轨迹以跳转视频播放进度时,并不是匀速进行的,在一定时间范围内,会进行加速或减速移动,因此,在确定第二跳转节点的瞬时速度信息后,再根据第二跳转节点的瞬时速度信息,确定第二跳转节点的加速度信息,以实现对滑动轨迹更准确的预测,进而实现对第二播放节点更准确的预测。
步骤S2032C:根据第二跳转节点的节点时间信息和节点加速度信息,确定第二播放节点。
具体地,根据第二跳转节点的加速度信息和瞬时速度信息,确定第二播放节点的瞬时速度信息;根据目标节点的瞬时速度信息与第一跳转节点、第二跳转节点之间的系统时间,确定目标移动量;根据第二跳转节点的显示时间戳和目标移动量,确定第二播放节点。
为了更好地公开确定第二播放节点的过程,下面以一个更加具体地实施例进行说明。
图11为本公开实施例提供的确定第二播放节点的示意图,参考图11所示,用户通过在终端设备的触摸屏上进行滑动轨迹,调节视频播放进度,终端设备根据接收到该滑动轨迹对应的第一跳转信息,并根据该第一跳转信息,对第二播放节点进行预测,确定第二播放节点,并将第二播放节点前后预设范围内的视频数据,确定为目标视频帧。
例如,用户进行滑动轨迹过程前,视频可以处于播放、停止或快进的状态,用户通过滑动视频播放进度条,进行跳转操作,对应的滑动轨迹首先经过跳转节点A,此时,终端设备记录跳转节点A的系统时间sys_time_t0和显示时间戳video_time_x0。之后,沿着滑动轨迹经过跳转节点B,终端设备再记录跳转节点A的系统时间sys_time_t1和显示时间戳video_time_x1。此时,根据式(1)确定跳转节点B的瞬时速度信息spd_v1为:
spd_v1=(video_time_x1-video_time_x0)/(sys_time_t1-sys_time_t0) (1)
由此可知,在滑动轨迹上,根据前一跳转节点的节点时间信息和后一跳转节点的节点时间信息,可以递推得到后一跳转节点的瞬时速度信息。可选地,首个跳转节点的瞬时速度信息可以为0或者预设的速度值。
因此,跳转节点A的瞬时速度信息spd_v0可以根据跳转节点A上一个跳转节点的节点时间信息确定,或者,跳转节点A的瞬时速度信息可以为0或者预设的速度值。
进一步地,根据跳转节点A的瞬时速度信息,和跳转节点B的瞬时速度信息,可以确定跳转节点B的加速度信息,具体地,如式(2)所示,跳转节点B的加速度信息acc_a1为:
acc_a1=(spd_v1-spd_v0)/(sys_time_t1-sys_time_t0) (2)
进一步地,根据跳转节点B的加速度信息,可以预测在跳转节点之后的跳转节点C的瞬时速度信息predict_spd_v2,具体地,如式(3)所示,跳转节点C的瞬时速度信息predict_spd_v2为:
predict_spd_v2=acc_a1*(sys_time_t1-sys_time_t0)+spd_v1 (3)
之后,对跳转节点C与跳转节点B之间的时间间隔进行预测,得到预测时间间隔predict_delta_x,具体地,如式(4)所示,对跳转节点C与跳转节点B之间的预测时间间隔predict_delta_x为:
predict_delta_x=(spd_v1+predict_spd_v2)/2*(sys_time_t1-sys_time_t0) (4)
最后,跳转节点B的显示时间戳video_time_x1,以及预测时间间隔predict_delta_x,可以得到跳转节点C的显示时间戳位置predict_Pts,具体地,如式(5)所示,跳转节点C的显示时间戳位置predict_Pts为:
predict_Pts=video_time_x1+predict_delta_x (5)
其中,跳转节点C即为预测的第二播放节点,跳转节点C与跳转节点B之间的距离,可以和跳转节点B与跳转节点A之间的距离相同或不同。本公开实施例中,通过第一跳转信息,在第一跳转信息对应的滑动轨迹移动到的跳转节点B处时,即可预测得到跳转节点C处的位置,进而,将跳转节点C作为第二播放节点进行解码和缓存,在接收到第二跳转信息,且第二跳转信息所指示的播放节点为第二播放节点时,可以直接进行播放,无需实时进行解码,避免出现卡顿,提高视频播放流畅度。
其中,跳转节点A与跳转节点B之间的距离,可以视为最小跳转距离,最小跳转距离越小,视频跳转越精确,相应的,系统需要的预测量、计算量和解码量越大,系统负担越大;相反的,最小跳转距离越大,视频跳转越粗糙,相应的,系统需要的预测量、计算量和解码量越小,系统负担越小。可选地,终端设备根据预设的设备负载信息,确定跳转节点A与跳转节点B之间的距离。根据设备的负载情况,确定匹配的跳转节点A与跳转节点B之间的距离,可以使视频跳转时的计算和预测时的资源消耗,不会超出设备的负载能力,导致视频出现卡顿的情况。
步骤S204:将第二播放节点对应的目标视频帧缓存至预设的缓存池中。
在一种可能的实现方式中,第二播放节点包括播放时间信息,播放时间信息用于表征目标视频帧在全部视频数据中的时间位置。
在本公开实施例中,将目标视频帧缓存至预设的缓存池中包括:根据预设的播放时间映射表,从全部视频数据中,确定与播放时间信息对应的标识信息;根据标识信息,确定目标视频帧;对目标视频帧进行解码,并将解码后的待播放视频数据缓存至缓存池中。
在另一种可能的实现方式中,第二播放节点包括播放比例信息,播放比例信息用于表征目标视频帧在全部视频数据中的比例位置。将目标视频帧缓存至预设的缓存池中包括:根据预设的播放比例映射表,从全部视频数据中,确定与播放比例信息对应的标识信息;根据标识信息,确定目标视频帧;对目标视频帧进行解码,并将解码后的待播放视频数据缓存至缓存池中。
步骤S205:对目标视频帧进行降采样,得到降采样视频。
在本公开实施例中,在确定目标视频帧后,首先对目标视频帧进行降采样处理,降低数据量,得到较低质量的视频帧数据,即降采样视频,之后对降采样视频进行解码和缓存,可以降低系统负载,提高数据处理效率。
步骤S206:若第二跳转信息指示的播放节点为第二播放节点,则,将降采样视频在预设的预览窗口内播放。
示例性地,在判断第二跳转信息指示的播放节点为第二播放节点时,在预览窗口内播放经过压缩的降采样视频,由于预览窗口并不是用户观看视频的主要途径,不需要高显示精度的视频,因此,对用户预览视频造成影响,同时由于压缩了视频体积,降低了系统负载,提高数据处理效率。
图12为本公开实施例提供的一种包含预览窗口的应用程序UI示意图。参考图12,将降采样后的目标视频帧缓冲后,在视频跳转至目标视频帧对应的第二播放节点时,在应用程序的预览窗口内对降采样后的缓存目标视频帧进行播放。通常情况下,用户进行视频跳转的操作目的,是为了定位感兴趣的视频片段,而不是为了观看跳转过程中的具体内容,而在预览窗口内,一般是为用户提供视频预览功能的小窗口,因此更加匹配用户进行跳转操作的目的。在预览窗口内,即使视频的质量较高,在预览窗口内也无法充分体现,反而由于需要对高质量视频进行处理,而造成了系统的较大负载,导致系统资源的浪费。因此,在视频跳转播放的过程中,通过将目标视频帧进行降采样或压缩,并在预览窗口内播放,可以降低视频跳转播放过程中,系统的处理压力和综合负载,提高视频跳转过程中的跳转流畅性,进而能够更好的实现用户进行视频跳转时定位、寻找感兴趣视频片段的目的。
在本实施例中,步骤S201与上述实施例中步骤S101的一致,详细论述请参考步骤S101的论述,这里不再赘述。
对应于上文实施例的视频跳转播放方法,图13为本公开实施例提供的视频跳转播放装置的结构框图。为了便于说明,仅示出了与本公开实施例相关的部分。参照图13,视频跳转播放装置300包括:
获取单元301,用于获取用户输入的第一跳转信息,并确定第一跳转信息所指示的第一播放节点。
预测单元302,用于根据第一跳转信息,预测第二播放节点,并将第二播放节点对应的目标视频帧缓存至缓存池中,其中,第二播放节点在第一播放节点之后。
播放单元303,用于获取用户输入的第二跳转信息,若第二跳转信息指示的播放节点为第二播放节点,播放缓存池中的目标视频帧。
在本公开的一个实施例中,第一跳转信息包括多个跳转节点,预测单元302,具体用于:获取各跳转节点的节点时间信息;根据各节点时间信息之间的变化量,确定第二播放节点。
在本公开的一个实施例中,多个跳转节点中包括第一跳转节点和第二跳转节点,第二跳转节点在第一跳转节点之后;预测单元302在根据各节点时间信息之间的变化量,确定第二播放节点时,具体用于:获取第一跳转节点的节点时间信息和第二跳转节点的节点时间信息;根据第一跳转节点的节点时间信息和第二跳转节点的节点时间信息,确定第二跳转节点的节点加速度信息;根据第二跳转节点的节点时间信息和第二跳转节点的节点加速度信息,确定第二播放节点。
在本公开的一个实施例中,节点时间信息包括系统时间和显示时间戳,预测单元302在根据第一跳转节点的节点时间信息和第二跳转节点的节点时间信息,确定第二跳转节点的节点加速度信息时,具体用于:根据第二跳转节点的显示时间戳与第一跳转节点的显示时间戳的差,与第二跳转节点的系统时间与第一跳转节点的系统时间的差的比值,确定第二跳转节点的瞬时速度信息;根据第二跳转节点的瞬时速度信息,确定第二跳转节点的加速度信息。
在本公开的一个实施例中,预测单元302在根据第二跳转节点的节点时间信息和节点加速度信息,确定第二播放节点时,具体用于:根据第二跳转节点的加速度信息和瞬时速度信息,确定第二播放节点的瞬时速度信息;根据第一跳转节点的系统时间与第二跳转节点的系统时间之间的差值,与第二播放节点的瞬时速度信息的乘积,确定目标移动量;根据第二跳转节点的显示时间戳和目标移动量,确定第二播放节点。
在本公开的一个实施例中,第二播放节点包括播放时间信息,播放时间信息用于表征目标视频帧在全部视频数据中的时间位置,预测单元302在将第二播放节点对应的目标视频帧缓存至缓存池中时,具体用于:根据预设的播放时间映射表,从全部视频数据中,确定与播放时间信息对应的标识信息;根据标识信息,确定目标视频帧;对目标视频帧进行解码,并缓存至缓存池中。
在本公开的一个实施例中,第二播放节点包括播放比例信息,播放比例信息用于表征目标视频帧在全部视频数据中的比例位置,预测单元302在将第二播放节点对应的目标视频帧缓存至预设的缓存池中时,具体用于:根据预设的播放比例映射表,从全部视频数据中,确定与播放比例信息对应的标识信息;根据标识信息,确定目标视频帧;对目标视频帧进行解码,并缓存至缓存池中。
在本公开的一个实施例中,播放单元303还用于:对目标视频帧进行降采样,得到降采样视频;播放单元303在播放缓存池中的目标视频帧时,具体用于:将降采样视频在预设的预览窗口内播放。
本实施例提供的视频跳转播放装置300,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
图14为本公开实施例提供的终端设备的结构框图。为了便于说明,仅示出了与本公开实施例相关的部分。参照图14,终端设备400包括:包括触摸屏401、控制器402和存储器403。
其中,触摸屏401用于,获取用户输入的第一跳转信息。
控制器402用于,确定第一跳转信息所指示的第一播放节点;根据第一跳转信息,预测第二播放节点,并将第二播放节点对应的目标视频帧缓存至存储器403中,其中,第二播放节点在第一播放节点之后。
触摸屏401还用于,获取用户输入的第二跳转信息,若第二跳转信息指示的播放节点为第二播放节点,播放存储器中的目标视频帧。
在本公开的一个实施例中,第一跳转信息包括多个跳转节点,控制器402,具体用于:获取各跳转节点的节点时间信息;根据各节点时间信息之间的变化量,确定第二播放节点。
在本公开的一个实施例中,多个跳转节点中包括第一跳转节点和第二跳转节点,第二跳转节点在第一跳转节点之后;控制器402在根据各节点时间信息之间的变化量,确定第二播放节点时,具体用于:获取第一跳转节点的节点时间信息和第二跳转节点的节点时间信息;根据第一跳转节点的节点时间信息和第二跳转节点的节点时间信息,确定第二跳转节点的节点加速度信息;根据第二跳转节点的节点时间信息和第二跳转节点的节点加速度信息,确定第二播放节点。
在本公开的一个实施例中,节点时间信息包括系统时间和显示时间戳,控制器402在根据第一跳转节点的节点时间信息和第二跳转节点的节点时间信息,确定第二跳转节点的节点加速度信息时,具体用于:根据第二跳转节点的显示时间戳与第一跳转节点的显示时间戳的差,与第二跳转节点的系统时间与第一跳转节点的系统时间的差的比值,确定第二跳转节点的瞬时速度信息;根据第二跳转节点的瞬时速度信息,确定第二跳转节点的加速度信息。
在本公开的一个实施例中,控制器402在根据第二跳转节点的节点时间信息和节点加速度信息,确定第二播放节点时,具体用于:根据第二跳转节点的加速度信息和瞬时速度信息,确定第二播放节点的瞬时速度信息;根据第一跳转节点的系统时间与第二跳转节点的系统时间之间的差值,与第二播放节点的瞬时速度信息的乘积,确定目标移动量;根据第二跳转节点的显示时间戳和目标移动量,确定第二播放节点。
在本公开的一个实施例中,第二播放节点包括播放时间信息,播放时间信息用于表征目标视频帧在全部视频数据中的时间位置,控制器402在将第二播放节点对应的目标视频帧缓存至存储器403中时,具体用于:根据预设的播放时间映射表,从全部视频数据中,确定与播放时间信息对应的标识信息;根据标识信息,确定目标视频帧;对目标视频帧进行解码,并缓存至存储器403中。
在本公开的一个实施例中,第二播放节点包括播放比例信息,播放比例信息用于表征目标视频帧在全部视频数据中的比例位置,控制器402在将第二播放节点对应的目标视频帧缓存至存储器403中时,具体用于:根据预设的播放比例映射表,从全部视频数据中,确定与播放比例信息对应的标识信息;根据标识信息,确定目标视频帧;对目标视频帧进行解码,并缓存至存储器403中。
在本公开的一个实施例中,控制器402还用于:对目标视频帧进行降采样,得到降采样视频;触摸屏401在播放缓存池中的目标视频帧时,具体用于:将降采样视频在预设的预览窗口内播放。
本实施例提供的终端设备400,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
参考图15,其示出了适于用来实现本公开实施例的电子设备500的结构示意图,该电子设备500可以为终端设备或服务器。其中,终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、个人数字助理(Personal Digital Assistant,简称PDA)、平板电脑(Portable Android Device,简称PAD)、便携式多媒体播放器(Portable MediaPlayer,简称PMP)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图15示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图15所示,电子设备500可以包括处理装置(例如中央处理器、图形处理器等)501,其可以根据存储在只读存储器(Read Only Memory,简称ROM)502中的程序或者从存储装置508加载到随机访问存储器(Random Access Memory,简称RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有电子设备500操作所需的各种程序和数据。处理装置501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
通常,以下装置可以连接至I/O接口505:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置506;包括例如液晶显示器(Liquid CrystalDisplay,简称LCD)、扬声器、振动器等的输出装置507;包括例如磁带、硬盘等的存储装置508;以及通信装置509。通信装置509可以允许电子设备500与其他设备进行无线或有线通信以交换数据。虽然图14示出了具有各种装置的电子设备500,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置509从网络上被下载和安装,或者从存储装置508被安装,或者从ROM502被安装。在该计算机程序被处理装置501执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network,简称LAN)或广域网(Wide Area Network,简称WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
第一方面,根据本公开的一个或多个实施例,提供了一种视频跳转播放方法,包括:
获取用户输入的第一跳转信息;确定所述第一跳转信息所指示的第一播放节点;根据所述第一跳转信息,预测第二播放节点,并将所述第二播放节点对应的目标视频帧缓存至缓存池中,其中,所述第二播放节点在所述第一播放节点之后;获取用户输入的第二跳转信息,若所述第二跳转信息指示的播放节点为所述第二播放节点,播放所述缓存池中的目标视频帧。
根据本公开的一个或多个实施例,所述第一跳转信息包括多个跳转节点,根据所述第一跳转信息,预测第二播放节点,包括:获取各所述跳转节点的节点时间信息;根据各所述节点时间信息之间的变化量,确定第二播放节点。
根据本公开的一个或多个实施例,所述多个跳转节点中包括第一跳转节点和第二跳转节点,所述第二跳转节点在所述第一跳转节点之后;根据各所述节点时间信息之间的变化量,确定第二播放节点,包括:获取所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息;根据所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息,确定所述第二跳转节点的节点加速度信息;根据所述第二跳转节点的节点时间信息和所述第二跳转节点的节点加速度信息,确定所述第二播放节点。
根据本公开的一个或多个实施例,所述节点时间信息包括系统时间和显示时间戳,根据所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息,确定所述第二跳转节点的节点加速度信息,包括:根据所述第二跳转节点的显示时间戳与所述第一跳转节点的显示时间戳的差,与所述第二跳转节点的系统时间与第一跳转节点的系统时间的差的比值,确定所述第二跳转节点的瞬时速度信息;根据所述第二跳转节点的瞬时速度信息,确定所述第二跳转节点的加速度信息。
根据本公开的一个或多个实施例,根据所述第二跳转节点的节点时间信息和所述节点加速度信息,确定第二播放节点,包括:根据所述第二跳转节点的加速度信息和瞬时速度信息,确定第二播放节点的瞬时速度信息;根据所述第一跳转节点的系统时间与所述第二跳转节点的系统时间之间的差值,与所述第二播放节点的瞬时速度信息的乘积,确定目标移动量;根据所述第二跳转节点的显示时间戳和所述目标移动量,确定所述第二播放节点。
根据本公开的一个或多个实施例,所述第二播放节点包括播放时间信息,所述播放时间信息用于表征所述目标视频帧在全部视频数据中的时间位置,将所述第二播放节点对应的目标视频帧缓存至缓存池中,包括:根据预设的播放时间映射表,从所述全部视频数据中,确定与所述播放时间信息对应的标识信息;根据所述标识信息,确定所述目标视频帧;对所述目标视频帧进行解码,并缓存至缓存池中。
根据本公开的一个或多个实施例,所述第二播放节点包括播放比例信息,所述播放比例信息用于表征目标视频帧在全部视频数据中的比例位置,将所述第二播放节点对应的目标视频帧缓存至预设的缓存池中,包括:根据预设的播放比例映射表,从所述全部视频数据中,确定与所述播放比例信息对应的标识信息;根据所述标识信息,确定所述目标视频帧;对所述目标视频帧进行解码,并缓存至缓存池中。
根据本公开的一个或多个实施例,所述方法还包括:对所述目标视频帧进行降采样,得到降采样视频;播放所述缓存池中的目标视频帧,包括:将所述降采样视频在预设的预览窗口内播放。
第二方面,根据本公开的一个或多个实施例,提供了一种视频跳转播放装置,包括:
获取单元,用于获取用户输入的第一跳转信息,并确定所述第一跳转信息所指示的第一播放节点。
预测单元,用于根据所述第一跳转信息,预测第二播放节点,并将所述第二播放节点对应的目标视频帧缓存至缓存池中,其中,所述第二播放节点在所述第一播放节点之后。
播放单元,用于获取用户输入的第二跳转信息,若所述第二跳转信息指示的播放节点为所述第二播放节点,播放所述缓存池中的目标视频帧。
在本公开的一个实施例中,所述第一跳转信息包括多个跳转节点,预测单元,具体用于:获取各所述跳转节点的节点时间信息;根据各所述节点时间信息之间的变化量,确定第二播放节点。
在本公开的一个实施例中,所述多个跳转节点中包括第一跳转节点和第二跳转节点,所述第二跳转节点在所述第一跳转节点之后;预测单元在根据各所述节点时间信息之间的变化量,确定第二播放节点时,具体用于:获取所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息;根据所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息,确定所述第二跳转节点的节点加速度信息;根据所述第二跳转节点的节点时间信息和所述第二跳转节点的节点加速度信息,确定所述第二播放节点。
在本公开的一个实施例中,所述节点时间信息包括系统时间和显示时间戳,预测单元在根据所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息,确定所述第二跳转节点的节点加速度信息时,具体用于:根据所述第二跳转节点的显示时间戳与所述第一跳转节点的显示时间戳的差,与所述第二跳转节点的系统时间与第一跳转节点的系统时间的差的比值,确定所述第二跳转节点的瞬时速度信息;根据所述第二跳转节点的瞬时速度信息,确定所述第二跳转节点的加速度信息。
在本公开的一个实施例中,预测单元在根据所述第二跳转节点的节点时间信息和所述节点加速度信息,确定第二播放节点时,具体用于:根据所述第二跳转节点的加速度信息和瞬时速度信息,确定第二播放节点的瞬时速度信息;根据所述第一跳转节点的系统时间与所述第二跳转节点的系统时间之间的差值,与所述第二播放节点的瞬时速度信息的乘积,确定目标移动量;根据所述第二跳转节点的显示时间戳和所述目标移动量,确定所述第二播放节点。
在本公开的一个实施例中,所述第二播放节点包括播放时间信息,所述播放时间信息用于表征所述目标视频帧在全部视频数据中的时间位置,预测单元在将所述第二播放节点对应的目标视频帧缓存至缓存池中时,具体用于:根据预设的播放时间映射表,从所述全部视频数据中,确定与所述播放时间信息对应的标识信息;根据所述标识信息,确定所述目标视频帧;对所述目标视频帧进行解码,并缓存至缓存池中。
在本公开的一个实施例中,所述第二播放节点包括播放比例信息,所述播放比例信息用于表征目标视频帧在全部视频数据中的比例位置,预测单元在将所述第二播放节点对应的目标视频帧缓存至预设的缓存池中时,具体用于:根据预设的播放比例映射表,从所述全部视频数据中,确定与所述播放比例信息对应的标识信息;根据所述标识信息,确定所述目标视频帧;对所述目标视频帧进行解码,并缓存至缓存池中。
在本公开的一个实施例中,所述播放单元还用于:对所述目标视频帧进行降采样,得到降采样视频;所述播放单元在播放所述缓存池中的目标视频帧时,具体用于:将所述降采样视频在预设的预览窗口内播放。
第三方面,根据本公开的一个或多个实施例,提供了一种终端设备,包括触摸屏、控制器和存储器。
其中,所述触摸屏用于,获取用户输入的第一跳转信息。
所述控制器用于,确定所述第一跳转信息所指示的第一播放节点;根据所述第一跳转信息,预测第二播放节点,并将所述第二播放节点对应的目标视频帧缓存至所述存储器中,其中,所述第二播放节点在所述第一播放节点之后。
所述触摸屏还用于,获取用户输入的第二跳转信息,若所述第二跳转信息指示的播放节点为所述第二播放节点,播放所述存储器中的目标视频帧。
在本公开的一个实施例中,所述第一跳转信息包括多个跳转节点,控制器,具体用于:获取各所述跳转节点的节点时间信息;根据各所述节点时间信息之间的变化量,确定第二播放节点。
在本公开的一个实施例中,所述多个跳转节点中包括第一跳转节点和第二跳转节点,所述第二跳转节点在所述第一跳转节点之后;控制器在根据各所述节点时间信息之间的变化量,确定第二播放节点时,具体用于:获取所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息;根据所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息,确定所述第二跳转节点的节点加速度信息;根据所述第二跳转节点的节点时间信息和所述第二跳转节点的节点加速度信息,确定所述第二播放节点。
在本公开的一个实施例中,所述节点时间信息包括系统时间和显示时间戳,控制器在根据所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息,确定所述第二跳转节点的节点加速度信息时,具体用于:根据所述第二跳转节点的显示时间戳与所述第一跳转节点的显示时间戳的差,与所述第二跳转节点的系统时间与第一跳转节点的系统时间的差的比值,确定所述第二跳转节点的瞬时速度信息;根据所述第二跳转节点的瞬时速度信息,确定所述第二跳转节点的加速度信息。
在本公开的一个实施例中,控制器在根据所述第二跳转节点的节点时间信息和所述节点加速度信息,确定第二播放节点时,具体用于:根据所述第二跳转节点的加速度信息和瞬时速度信息,确定第二播放节点的瞬时速度信息;根据所述第一跳转节点的系统时间与所述第二跳转节点的系统时间之间的差值,与所述第二播放节点的瞬时速度信息的乘积,确定目标移动量;根据所述第二跳转节点的显示时间戳和所述目标移动量,确定所述第二播放节点。
在本公开的一个实施例中,所述第二播放节点包括播放时间信息,所述播放时间信息用于表征所述目标视频帧在全部视频数据中的时间位置,控制器在将所述第二播放节点对应的目标视频帧缓存至存储器中时,具体用于:根据预设的播放时间映射表,从所述全部视频数据中,确定与所述播放时间信息对应的标识信息;根据所述标识信息,确定所述目标视频帧;对所述目标视频帧进行解码,并缓存至存储器中。
在本公开的一个实施例中,所述第二播放节点包括播放比例信息,所述播放比例信息用于表征目标视频帧在全部视频数据中的比例位置,控制器在将所述第二播放节点对应的目标视频帧缓存至存储器中时,具体用于:根据预设的播放比例映射表,从所述全部视频数据中,确定与所述播放比例信息对应的标识信息;根据所述标识信息,确定所述目标视频帧;对所述目标视频帧进行解码,并缓存至存储器中。
在本公开的一个实施例中,所述控制器还用于:对所述目标视频帧进行降采样,得到降采样视频;所述触摸屏在播放所述缓存池中的目标视频帧时,具体用于:将所述降采样视频在预设的预览窗口内播放。
第四方面,根据本公开的一个或多个实施例,提供了一种电子设备,包括:至少一个处理器和存储器;存储器存储计算机执行指令;至少一个处理器执行存储器存储的计算机执行指令,使得至少一个处理器执行如上第一方面以及第一方面各种可能的设计的视频跳转播放方法。
第五方面,根据本公开的一个或多个实施例,提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计的视频跳转播放方法。
第六方面,本公开实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能的设计所述的视频跳转播放方法。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (12)
1.一种视频跳转播放方法,其特征在于,包括:
获取用户输入的第一跳转信息;
确定所述第一跳转信息所指示的第一播放节点;
根据所述第一跳转信息,预测第二播放节点,并将所述第二播放节点对应的目标视频帧缓存至缓存池中,其中,所述第二播放节点在所述第一播放节点之后;
获取用户输入的第二跳转信息,若所述第二跳转信息指示的播放节点为所述第二播放节点,播放所述缓存池中的目标视频帧。
2.根据权利要求1所述的方法,其特征在于,所述第一跳转信息包括多个跳转节点,根据所述第一跳转信息,预测第二播放节点,包括:
获取各所述跳转节点的节点时间信息;
根据各所述节点时间信息之间的变化量,确定第二播放节点。
3.根据权利要求2所述的方法,其特征在于,所述多个跳转节点中包括第一跳转节点和第二跳转节点,所述第二跳转节点在所述第一跳转节点之后;根据各所述节点时间信息之间的变化量,确定第二播放节点,包括:
获取所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息;
根据所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息,确定所述第二跳转节点的节点加速度信息;
根据所述第二跳转节点的节点时间信息和所述第二跳转节点的节点加速度信息,确定所述第二播放节点。
4.根据权利要求3所述的方法,其特征在于,所述节点时间信息包括系统时间和显示时间戳,根据所述第一跳转节点的节点时间信息和所述第二跳转节点的节点时间信息,确定所述第二跳转节点的节点加速度信息,包括:
根据所述第二跳转节点的显示时间戳与所述第一跳转节点的显示时间戳的差,与所述第二跳转节点的系统时间与第一跳转节点的系统时间的差的比值,确定所述第二跳转节点的瞬时速度信息;
根据所述第二跳转节点的瞬时速度信息,确定所述第二跳转节点的加速度信息。
5.根据权利要求3所述的方法,其特征在于,根据所述第二跳转节点的节点时间信息和所述节点加速度信息,确定第二播放节点,包括:
根据所述第二跳转节点的加速度信息和瞬时速度信息,确定第二播放节点的瞬时速度信息;
根据所述第一跳转节点的系统时间与所述第二跳转节点的系统时间之间的差值,与所述第二播放节点的瞬时速度信息的乘积,确定目标移动量;
根据所述第二跳转节点的显示时间戳和所述目标移动量,确定所述第二播放节点。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述第二播放节点包括播放时间信息,所述播放时间信息用于表征所述目标视频帧在全部视频数据中的时间位置,将所述第二播放节点对应的目标视频帧缓存至缓存池中,包括:
根据预设的播放时间映射表,从所述全部视频数据中,确定与所述播放时间信息对应的标识信息;
根据所述标识信息,确定所述目标视频帧;
对所述目标视频帧进行解码,并缓存至缓存池中。
7.根据权利要求1-5任一项所述的方法,其特征在于,所述第二播放节点包括播放比例信息,所述播放比例信息用于表征目标视频帧在全部视频数据中的比例位置,将所述第二播放节点对应的目标视频帧缓存至预设的缓存池中,包括:
根据预设的播放比例映射表,从所述全部视频数据中,确定与所述播放比例信息对应的标识信息;
根据所述标识信息,确定所述目标视频帧;
对所述目标视频帧进行解码,并缓存至缓存池中。
8.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
对所述目标视频帧进行降采样,得到降采样视频;
播放所述缓存池中的目标视频帧,包括:
将所述降采样视频在预设的预览窗口内播放。
9.一种视频跳转播放装置,其特征在于,包括:
获取单元,用于获取用户输入的第一跳转信息,并确定所述第一跳转信息所指示的第一播放节点;
预测单元,用于根据所述第一跳转信息,预测第二播放节点,并将所述第二播放节点对应的目标视频帧缓存至缓存池中,其中,所述第二播放节点在所述第一播放节点之后;
播放单元,用于获取用户输入的第二跳转信息,若所述第二跳转信息指示的播放节点为所述第二播放节点,播放所述缓存池中的目标视频帧。
10.一种终端设备,其特征在于,包括触摸屏、控制器和存储器,其中,
所述触摸屏用于,获取用户输入的第一跳转信息;
所述控制器用于,确定所述第一跳转信息所指示的第一播放节点;根据所述第一跳转信息,预测第二播放节点,并将所述第二播放节点对应的目标视频帧缓存至所述存储器中,其中,所述第二播放节点在所述第一播放节点之后;
所述触摸屏还用于,获取用户输入的第二跳转信息,若所述第二跳转信息指示的播放节点为所述第二播放节点,播放所述存储器中的目标视频帧。
11.一种电子设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至8任一项所述的视频跳转播放方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至8任一项所述的视频跳转播放方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011540293.4A CN114666666B (zh) | 2020-12-23 | 2020-12-23 | 视频跳转播放方法、装置、终端设备及存储介质 |
PCT/CN2021/132557 WO2022134997A1 (zh) | 2020-12-23 | 2021-11-23 | 视频跳转播放方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011540293.4A CN114666666B (zh) | 2020-12-23 | 2020-12-23 | 视频跳转播放方法、装置、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114666666A true CN114666666A (zh) | 2022-06-24 |
CN114666666B CN114666666B (zh) | 2023-05-30 |
Family
ID=82025473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011540293.4A Active CN114666666B (zh) | 2020-12-23 | 2020-12-23 | 视频跳转播放方法、装置、终端设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114666666B (zh) |
WO (1) | WO2022134997A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115278349A (zh) * | 2022-07-21 | 2022-11-01 | 北京邮电大学 | 一种在无线通信环境下的处理拖拽观看视频的方法 |
CN116996631A (zh) * | 2023-09-26 | 2023-11-03 | 牡丹江师范学院 | 一种制作实时显示演唱视频的系统及方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120134646A1 (en) * | 2010-11-30 | 2012-05-31 | Echostar Technologies L.L.C. | Systems and methods for digital video high accuracy fast forward, rewind and skip |
CN104469519A (zh) * | 2014-12-18 | 2015-03-25 | 北京元心科技有限公司 | 一种视频播放方法及装置 |
US20150350700A1 (en) * | 2014-05-30 | 2015-12-03 | Apple Inc. | Media requests for trickplay |
CN110166817A (zh) * | 2019-06-24 | 2019-08-23 | 北京奇艺世纪科技有限公司 | 一种数据缓存方法及相关设备 |
CN110740373A (zh) * | 2018-07-20 | 2020-01-31 | 北京搜狗科技发展有限公司 | 一种音/视频文件的缓冲方法及相关装置 |
US20200145701A1 (en) * | 2016-12-30 | 2020-05-07 | Tivo Solutions Inc. | Advanced trick-play modes for streaming video |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9804668B2 (en) * | 2012-07-18 | 2017-10-31 | Verimatrix, Inc. | Systems and methods for rapid content switching to provide a linear TV experience using streaming content distribution |
CN109743617B (zh) * | 2018-12-03 | 2020-11-24 | 清华大学 | 一种视频播放的跳转导航方法和设备 |
CN110719524B (zh) * | 2019-10-16 | 2022-02-01 | 腾讯科技(深圳)有限公司 | 一种视频播放方法、装置、智能播放设备和存储介质 |
-
2020
- 2020-12-23 CN CN202011540293.4A patent/CN114666666B/zh active Active
-
2021
- 2021-11-23 WO PCT/CN2021/132557 patent/WO2022134997A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120134646A1 (en) * | 2010-11-30 | 2012-05-31 | Echostar Technologies L.L.C. | Systems and methods for digital video high accuracy fast forward, rewind and skip |
US20150350700A1 (en) * | 2014-05-30 | 2015-12-03 | Apple Inc. | Media requests for trickplay |
CN104469519A (zh) * | 2014-12-18 | 2015-03-25 | 北京元心科技有限公司 | 一种视频播放方法及装置 |
US20200145701A1 (en) * | 2016-12-30 | 2020-05-07 | Tivo Solutions Inc. | Advanced trick-play modes for streaming video |
CN110740373A (zh) * | 2018-07-20 | 2020-01-31 | 北京搜狗科技发展有限公司 | 一种音/视频文件的缓冲方法及相关装置 |
CN110166817A (zh) * | 2019-06-24 | 2019-08-23 | 北京奇艺世纪科技有限公司 | 一种数据缓存方法及相关设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115278349A (zh) * | 2022-07-21 | 2022-11-01 | 北京邮电大学 | 一种在无线通信环境下的处理拖拽观看视频的方法 |
CN115278349B (zh) * | 2022-07-21 | 2023-05-23 | 北京邮电大学 | 一种在无线通信环境下的处理拖拽观看视频的方法 |
CN116996631A (zh) * | 2023-09-26 | 2023-11-03 | 牡丹江师范学院 | 一种制作实时显示演唱视频的系统及方法 |
CN116996631B (zh) * | 2023-09-26 | 2023-12-08 | 牡丹江师范学院 | 一种制作实时显示演唱视频的系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114666666B (zh) | 2023-05-30 |
WO2022134997A1 (zh) | 2022-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109640188B (zh) | 视频预览方法、装置、电子设备及计算机可读存储介质 | |
CN111510760B (zh) | 视频信息展示方法和装置、存储介质和电子设备 | |
CN113395572B (zh) | 一种视频处理方法、装置、存储介质及电子设备 | |
CN114666666B (zh) | 视频跳转播放方法、装置、终端设备及存储介质 | |
WO2023284437A1 (zh) | 媒体文件处理方法、装置、设备、可读存储介质及产品 | |
CN109462779B (zh) | 视频预览信息的播放控制方法、应用客户端及电子设备 | |
KR20230070316A (ko) | 핫스팟 리스트의 디스플레이 방법, 장치, 전자 설비 및 저장매체 | |
CN113727169A (zh) | 视频播放方法、装置、设备及存储介质 | |
CN113727170A (zh) | 视频交互方法、装置、设备及介质 | |
CN110837333A (zh) | 调整多媒体文件的播放进度方法、装置、终端及存储介质 | |
CN110611847B (zh) | 视频预览的方法、装置、存储介质及电子设备 | |
CN114760515A (zh) | 媒体内容的显示方法、装置、设备、存储介质和程序产品 | |
CN115134670A (zh) | 多媒体播放方法、设备、存储介质及程序产品 | |
CN109714626B (zh) | 信息交互方法、装置、电子设备、和计算机可读存储介质 | |
CN113301424A (zh) | 播放控制方法、设备、存储介质及程序产品 | |
CN110650376B (zh) | 视频播放时的转场动画的实现方法、装置、移动终端、存储介质 | |
CN113727172B (zh) | 视频缓存播放方法、装置、电子设备及存储介质 | |
WO2023035884A1 (zh) | 动态画质视频播放方法、装置、电子设备及存储介质 | |
CN114584709B (zh) | 变焦特效的生成方法、装置、设备及存储介质 | |
CN115270181A (zh) | 信息显示方法、装置、设备、计算机可读存储介质及产品 | |
CN113553451B (zh) | 媒体播放方法、装置、电子设备及程序产品 | |
CN115834918A (zh) | 视频直播方法、装置、电子设备及可读存储介质 | |
CN115269084A (zh) | 目标功能显示方法、装置、设备、可读存储介质及产品 | |
CN114554292A (zh) | 视角的切换方法、装置、电子设备、存储介质和程序产品 | |
CN114925274A (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 |