CN116456152A - 视频播放控制的方法和系统 - Google Patents

视频播放控制的方法和系统 Download PDF

Info

Publication number
CN116456152A
CN116456152A CN202310491462.7A CN202310491462A CN116456152A CN 116456152 A CN116456152 A CN 116456152A CN 202310491462 A CN202310491462 A CN 202310491462A CN 116456152 A CN116456152 A CN 116456152A
Authority
CN
China
Prior art keywords
video
speed change
playing
curve
control
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.)
Pending
Application number
CN202310491462.7A
Other languages
English (en)
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.)
Shanghai Bilibili Technology Co Ltd
Original Assignee
Shanghai Bilibili 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 Shanghai Bilibili Technology Co Ltd filed Critical Shanghai Bilibili Technology Co Ltd
Priority to CN202310491462.7A priority Critical patent/CN116456152A/zh
Publication of CN116456152A publication Critical patent/CN116456152A/zh
Pending legal-status Critical Current

Links

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/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
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • 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
    • H04N21/440281Processing 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 by altering the temporal resolution, e.g. by frame skipping
    • 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

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

视频播放控制的方法和系统
技术领域
本申请实施例涉及多媒体播放技术领域,尤其涉及一种视频播放控制的方法、系统、计算机设备及计算机可读存储介质。
背景技术
随着互联网技术的发展,音视频作为重要的信息载体可以通过网络进行快速、方便的传播,而为了迎合用户的观看习惯,视频的编辑功能也越来越多样化,其中,视频的编辑还支持视频变速,针对视频素材进行变速设置,使得视频按照调整之后的速度进行播放。
现有技术中,视频变速方案通常包含传统的均匀变速方案和视频曲线变速方案,其中,传统的视频预览或编辑时,使用均匀变速方案提供2倍速、4倍速等均匀变速预览方案。而曲线变速方案指通过插值函数,计算每个预览画面帧所播放的实际视频帧,从而实现画面预览上的曲线变速,用曲线函数来表征播放速度,曲线向上表示视频播放速度越快,向下表示视频播放速度越慢,曲线坡度越陡峭表面播放速度的变化速度越快,曲线坡度越平缓表明播放速度的变化速度越慢,现有的视频曲线变速方案一般基于贝塞尔曲线实现曲线变速预览方案。
然而,传统的均匀变速方案,无法实现视频预览的曲线变化,也无法基于用户自定义的曲线进行变速,在视频编辑领域限制较多。而基于贝塞尔曲线实现的曲线变速方案,存在曲线越复杂,贝塞尔阶数越高,计算越复杂,计算速度越慢等问题,而且基于贝塞尔拼接实现的曲线变速方案,存在拼接点不够光滑等问题。
发明内容
本申请实施例的目的是提供一种视频播放控制的方法、系统、计算机设备及计算机可读存储介质,用于解决以下问题:现有的视频曲线变速方案计算复杂,拼接点不够光滑。
本申请实施例的一个方面提供了一种视频播放控制的方法,所述的方法包括:
获取待播放视频对应的多个控制点;其中,每一个所述控制点具有一一对应的时间点和播放速度;
根据所述多个控制点对应的时间点和播放速度确定多个变速时间段,以及每一个所述变速时间段对应的变速曲线;
根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面;
对所述每一个时间点对应的视频帧画面进行渲染,以控制在客户端上曲线变速播放所述待播放视频。
可选地,所述获取待播放视频对应的多个控制点,包括:
展示所述待播放视频对应的曲线设置界面;
接收作用于所述曲线设置界面上的设置操作,并根据所述设置操作确定所述待播放视频对应的多个控制点。
可选地,所述曲线设置界面包含二维坐标系;所述二维坐标系的X轴用于设置变速播放的时间点,所述二维坐标系的Y轴用于设置所述变速播放的时间点对应的播放速度。
可选地,所述二维坐标系的X轴的长度为预设数值;所述展示所述待播放视频对应的曲线设置界面,包括:
根据所述预设数值对所述待播放视频的播放时间进行归一化处理;
根据归一化处理后所述待播放视频的播放时间,展示所述待播放视频对应的曲线设置界面。
可选地,所述根据所述多个控制点对应的时间点和播放速度确定多个变速时间段,以及每一个所述变速时间段对应的变速曲线,包括:
根据所述多个控制点对应的时间点和播放速度,针对每两个时间点相邻的控制点确定一个变速时间段;
基于Hermite插值函数,确定每一个所述变速时间段对应的变速曲线。
可选地,所述客户端具备计算引擎和渲染引擎;所述根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面,包括:
通过所述计算引擎根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面,并将所述每一个时间点对应的视频帧画面传递至所述渲染引擎。
可选地,所述客户端还具备表面视图管理器,所述对所述每一个时间点对应的视频帧画面进行渲染,包括:
通过所述渲染引擎对所述每一个时间点对应的视频帧画面进行解码;
按照时间顺序对所述每一个时间点对应的视频帧画面进行渲染,并输出到所述客户端的表面视图管理器中。
本申请实施例的一个方面又提供了一种视频播放控制的系统,所述的系统包括:
控制点获取模块,用于获取待播放视频对应的多个控制点;其中,每一个所述控制点具有一一对应的时间点和播放速度;
变速曲线确定模块,用于根据所述多个控制点对应的时间点和播放速度确定多个变速时间段,以及每一个所述变速时间段对应的变速曲线;
视频帧画面确定模块,用于根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面;
视频播放控制模块,用于对所述每一个时间点对应的视频帧画面进行渲染,以控制在客户端上曲线变速播放所述待播放视频。
本申请实施例的一个方面又提供了一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述的视频播放控制的方法的步骤。
本申请实施例的一个方面又提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行所述计算机程序时实现如上述的视频播放控制的方法的步骤。
本申请实施例提供的视频播放控制的方法、系统、设备及计算机可读存储介质,通过获取待播放视频对应的多个控制点;其中,每一个控制点具有一一对应的时间点和播放速度,然后根据控制点对应的时间点和播放速度确定多个变速时间段,以及每一个变速时间段对应的变速曲线;根据每一个变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面,并对每一个时间点对应的视频帧画面进行渲染,以控制在客户端上曲线变速播放所述待播放视频。从而通过利用控制点的时间点和播放速度拟合生成变速曲线的方式,实现视频的曲线变速播放,解决基于贝塞尔曲线计算复杂,拼接点不够光滑等问题,实现在视频编辑中给用户提供更自然、更高效的曲线变速播放功能。
附图说明
图1示意性示出了根据本申请实施例的视频播放控制的方法的应用环境图;
图2示意性示出了根据本申请实施例一的视频播放控制的方法的流程图;
图3示意性示出了根据本申请实施例一的一种曲线设置界面的示意图;
图4示意性示出了根据本申请实施例一的一种用于执行视频播放控制的方法的模块框图;
图5示意性示出了根据本申请实施例二的视频播放控制的装置的框图;及
图6示意性示出了根据本申请实施例三的适于实现视频播放控制的方法的计算机设备的硬件架构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本申请实施例中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
现有技术中,视频变速方案通常包含传统的均匀变速方案和视频曲线变速方案,其中,传统的视频预览或编辑时,使用均匀变速方案提供2倍速、4倍速等均匀变速预览方案。而曲线变速方案指通过插值函数,计算每个预览画面帧所播放的实际视频帧,从而实现画面预览上的曲线变速,用曲线函数来表征播放速度,曲线向上表示视频播放速度越快,向下表示视频播放速度越慢,曲线坡度越陡峭表面播放速度的变化速度越快,曲线坡度越平缓表明播放速度的变化速度越慢,现有的视频曲线变速方案一般基于贝塞尔曲线实现曲线变速预览方案。
然而,传统的均匀变速方案,无法实现视频预览的曲线变化,也无法基于用户自定义的曲线进行变速,在视频编辑领域限制较多。而基于贝塞尔曲线实现的曲线变速方案,存在曲线越复杂,贝塞尔阶数越高,计算越复杂,计算速度越慢等问题,而且基于贝塞尔拼接实现的曲线变速方案,存在拼接点不够光滑等问题。
有鉴于此,本申请旨在提出一种基于三阶Hermite插值函数实现的视频播放控制的方法,包括:获取待播放视频对应的多个控制点;其中,每一个所述控制点具有一一对应的时间点和播放速度;根据所述多个控制点对应的时间点和播放速度确定多个变速时间段,以及每一个所述变速时间段对应的变速曲线;根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面;对所述每一个时间点对应的视频帧画面进行渲染,以控制在客户端上曲线变速播放所述待播放视频。从而通过利用控制点的时间点和播放速度拟合生成变速曲线的方式,实现视频的曲线变速播放,解决基于贝塞尔曲线计算复杂,拼接点不够光滑等问题,实现在视频编辑中给用户提供更自然、更高效的曲线变速播放功能。
本申请提供了多个实施例进一步介绍视频播放控制的方案,具体参照下文。
在本申请的描述中,需要理解的是,步骤前的数字标号并不标识执行步骤的前后顺序,仅用于方便描述本申请及区别每一步骤,因此不能理解为对本申请的限制。
以下为本申请的术语解释:
曲线变速:通过一系列控制点,基于分段三阶Hermite插值函数,实现对视频的曲线变速预览和播放。
Hermite插值函数:区域上解析函数对拉格朗日插值多项式对积分表达式,在给定的节点处,不但插值多项式对函数值与原函数值相同,同时在节点处,插值多项式对一阶直至指定阶的导数值,也与被被插函数的相应阶导数值相等。
图1示意性示出了根据本申请实施例的环境应用示意图。如图1所示:
计算机设备10000可以通过网络20000连接客户端30000。
计算机设备10000可以提供服务,如进行网络调试,或返回视频播放控制的结果数据给客户端30000等。
计算机设备10000可以位于诸如单个场所之类的数据中心,或者分布在不同的地理位置(例如,在多个场所)中。计算机设备10000可以经由一个或多个网络20000提供服务。网络20000包括各种网络设备,例如路由器,交换机,多路复用器,集线器,调制解调器,网桥,中继器,防火墙,代理设备和/或类似。网络20000可以包括物理链路,例如同轴电缆链路,双绞线电缆链路,光纤链路,其组合等。网络20000可以包括无线链路,诸如蜂窝链路,卫星链路,Wi-Fi链路等。
计算机设备10000可以由一个或多个计算节点实现。一个或多个计算节点可以包括虚拟化的计算实例。虚拟化的计算实例可以包括虚拟机,例如计算机系统,操作系统,服务器等的仿真。计算节点可以基于虚拟映像和/或定义用于仿真的特定软件(例如,操作系统,专用应用程序,服务器)的其他数据,由计算节点加载虚拟机。随着对不同类型的处理服务的需求改变,可以在一个或多个计算节点上加载和/或终止不同的虚拟机。可以实现管理程序来管理同一计算节点上不同虚拟机的使用。
客户端30000可以被配置为访问计算机设备10000的内容和服务。客户端30000可以包括任何类型的电子设备,诸如移动设备、平板设备、膝上型计算机、工作站、虚拟现实设备,游戏设备、机顶盒、数字流媒体设备、车辆终端、智能电视、机顶盒等。
客户端30000可以将视频播放控制的结果数据等输出(例如,显示、渲染、呈现)给用户。
以下将通过多个实施例介绍网络调试方案。该方案可以通过计算机设备10000实施。
实施例一
图2示意性示出了根据本申请实施例一的视频播放控制的方法的流程图。所述视频播放控制的方法应用于客户端,包括步骤S202-S208,其中,
步骤S202,获取待播放视频对应的多个控制点;其中,每一个所述控制点具有一一对应的时间点和播放速度;
在本实施例中,控制点用于指示需要变速播放视频的时间点以及该时间点的播放速度,用户可以通过客户端自主设置待播放视频对应的多个控制点,客户端具备用户数据采集模块,在用户通过客户端提供的图形用户界面进行视频曲线变速的设置之后,通过客户端用户数据采集模块采集到用户所设置的数据,以确定用户设置的控制点。具体的,控制点可以以坐标点的形式表示,其中,横轴坐标可以表示变速播放的时间点,纵轴坐标可以表示该时间点对应的播放速度。
步骤S204,根据所述多个控制点对应的时间点和播放速度确定多个变速时间段,以及每一个所述变速时间段对应的变速曲线;
在本实施例中,可以针对每两个相邻的控制点确定一个变速时间段,并生成每一个所述变速时间段对应的变速曲线,即每一个变速时间段具有一一对应的变速曲线。具体的,可以基于Hermite插值函数进行变速曲线的拟合生成每一个所述变速时间段对应的变速曲线。
步骤S206,根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面;
在本实施例中,在拟合生成每一个所述变速时间段对应的变速曲线之后,还可以进一步根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面,用于在客户端上渲染显示。
步骤S208,对所述每一个时间点对应的视频帧画面进行渲染,以控制在客户端上曲线变速播放所述待播放视频。
具体的,客户端可以具备SurafceView表面视图管理器,通过对每一个时间点对应的视频帧画面进行渲染,并输出至客户端的SurafceView中,利用SurafceView进行变速后的视频实时播放,实现在视频编辑中给用户提供更自然、更高效的曲线变速播放功能。
以下提供几个可选地实施例,以进行优化所述视频播放控制的方法,具体如下:
在本申请的一种优选实施例中,所述步骤S202可以包括如下步骤:
展示所述待播放视频对应的曲线设置界面;接收作用于所述曲线设置界面上的设置操作,并根据所述设置操作确定所述待播放视频对应的多个控制点。
在本实施例中,通过在客户端提供的图形用户界面中展示待播放视频对应的曲线设置界面,用户可以在曲线设置界面上进行视频的变速曲线的设置,例如,分别设置5个变速播放的时间点,以及这5个时间点分别对应的播放速度。客户端采集到用户作用于曲线设置界面上的设置操作之后,可以根据作用于曲线设置界面上的设置操作确定待播放视频对应的多个控制点。其中,设置操作可以为点击操作,双击操作等,本申请实施例对此不作具体限制。
在本申请的一种优选实施例中,所述曲线设置界面包含二维坐标系;所述二维坐标系的X轴用于设置变速播放的时间点,所述二维坐标系的Y轴用于设置所述变速播放的时间点对应的播放速度。
在本申请的一种优选实施例中,所述二维坐标系的X轴的长度为预设数值;所述展示所述待播放视频对应的曲线设置界面,包括:
根据所述预设数值对所述待播放视频的播放时间进行归一化处理;根据归一化处理后所述待播放视频的播放时间,展示所述待播放视频对应的曲线设置界面。
在本实施例中,二维坐标系的X轴的长度为预设数值,即二维坐标系中时间的长度固定,例如,预设数值为5,则可以设置的视频的时间长度为5,为了适配不同长度的视频,可以将播放视频的播放时间归一化到区间[0,5]中。具体的,在控制客户端显示曲线设置界面时,通过根据预设数值对待播放视频的播放时间进行归一化处理,然后根据归一化处理后待播放视频的播放时间,控制在客户端上展示待播放视频对应的曲线设置界面。
作为一种示例,如图3示出了一种曲线设置界面的示意图,其中,X轴:表征时间方向,取值范围为[0,5],即变速播放的最小时间点为0,最大时间点为5;Y轴:表征播放速度,取值范围为[0.1,4],即最小0.1倍速,最大4倍速。此外,图3中,P0~P4为用户设置的控制点,用户通过设置控制点来实现控制变速曲线的形状。
在本申请的一种优选实施例中,所述步骤S204可以包括如下步骤:
根据所述多个控制点对应的时间点和播放速度,针对每两个时间点相邻的控制点确定一个变速时间段;基于Hermite插值函数,确定每一个所述变速时间段对应的变速曲线。
具体的,以点P0(x0,y0)和P1(x1,y1)为例,则Hermite插值函数可以表示如下:
其中,x0和x1为待插值的相邻的两个点的位置,y0和y1是对应于自变量x0和x1的因变量。x0,x1,y0和y1是已知信息,y′0和y′1分别是y0和y1对应的导数,y′0和y′1需要根据已知点进行估算。
将P0(x0,y0)和P1(x1,y1)代入上述公式进行计算,即可以算出P0和P1间的插值函数H3(x),即可根据H3(x)计算P0与P1点之间其余时间点分别对应的播放速度。
在本申请的一种优选实施例中,所述客户端具备计算引擎和渲染引擎;所述步骤S206可以包括如下步骤:
通过所述计算引擎根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面,并将所述每一个时间点对应的视频帧画面传递至所述渲染引擎。
在本实施例中,客户端可以具备计算引擎和渲染引擎,在计算时,通过计算引擎根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面,并将每一个时间点对应的视频帧画面传递至渲染引擎。
在本申请的一种优选实施例中,所述客户端还具备表面视图管理器,所述步骤S208可以包括如下步骤:
通过所述渲染引擎对所述每一个时间点对应的视频帧画面进行解码;按照时间顺序对所述每一个时间点对应的视频帧画面进行渲染,并输出到所述客户端的表面视图管理器中。
在本实施例中,客户端可以具备SurafceView表面视图管理器,通过渲染引擎对每一个时间点对应的视频帧画面进行解码,然后按照时间顺序对每一个时间点对应的视频帧画面进行渲染,并输出到客户端的SurafceView中,以控制在客户端上曲线变速播放待播放视频。
作为一种示例,如图4示出了一种用于执行视频播放控制的方法的模块框图,包括应用层、计算引擎和渲染引擎三个模块。其中,
应用层:负责视频预览以及和与用户的交互。应用层位于客户端,用户通过客户端上显示的曲线设置界面设置想要使用的变速曲线,应用层将用户设置的控制点信息传递给计算引擎。此外,应用层还包括SurafceView,通过SurafceView进行变速后的视频实时播放。
计算引擎:负责曲线的计算。计算引擎用于基于分段三阶Hermite插值函数,计算变速时间段上每一个时间点对应的视频帧画面,并将计算结果传递给渲染引擎。
渲染引擎:负责视频帧的解码以及画面渲染。渲染引擎用于基于计算引擎所计算的结果,解码得到对应的视频帧画面,然后按照时间顺序进行画面渲染,并输出到应用层的SurfaceView上。
实施例二
图5示意性示出了根据本申请实施例二的视频播放控制的系统的框图,该视频播放控制的系统可以被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本申请实施例。本申请实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,以下描述将具体介绍本申请实施例中各程序模块的功能。
如图5所示,该视频播放控制的系统500可以包括如下模块:
控制点获取模块510,用于获取待播放视频对应的多个控制点;其中,每一个所述控制点具有一一对应的时间点和播放速度;
变速曲线确定模块520,用于根据所述多个控制点对应的时间点和播放速度确定多个变速时间段,以及每一个所述变速时间段对应的变速曲线;
视频帧画面确定模块530,用于根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面;
视频播放控制模块540,用于对所述每一个时间点对应的视频帧画面进行渲染,以控制在客户端上曲线变速播放所述待播放视频。
在本申请的一种优选实施例中,所述控制点获取模块510,包括:
曲线设置界面展示子模块,用于展示所述待播放视频对应的曲线设置界面;
控制点确定子模块,用于接收作用于所述曲线设置界面上的设置操作,并根据所述设置操作确定所述待播放视频对应的多个控制点。
在本申请的一种优选实施例中,所述曲线设置界面包含二维坐标系;所述二维坐标系的X轴用于设置变速播放的时间点,所述二维坐标系的Y轴用于设置所述变速播放的时间点对应的播放速度。
在本申请的一种优选实施例中,所述二维坐标系的X轴的长度为预设数值;所述曲线设置界面展示子模块,包括:
归一化处理单元,用于根据所述预设数值对所述待播放视频的播放时间进行归一化处理;
曲线设置界面展示单元,用于根据归一化处理后所述待播放视频的播放时间,展示所述待播放视频对应的曲线设置界面。
在本申请的一种优选实施例中,所述变速曲线确定模块520,包括:
变速时间段确定子模块,用于根据所述多个控制点对应的时间点和播放速度,针对每两个时间点相邻的控制点确定一个变速时间段;
变速曲线确定子模块,用于基于Hermite插值函数,确定每一个所述变速时间段对应的变速曲线。
在本申请的一种优选实施例中,所述客户端具备计算引擎和渲染引擎;所述视频帧画面确定模块530,包括:
视频帧画面确定子模块,用于通过所述计算引擎根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面,并将所述每一个时间点对应的视频帧画面传递至所述渲染引擎。
在本申请的一种优选实施例中,所述客户端还具备表面视图管理器,所述视频播放控制模块540,包括:
视频帧画面解码子模块,用于通过所述渲染引擎对所述每一个时间点对应的视频帧画面进行解码;
视频播放控制子模块,用于按照时间顺序对所述每一个时间点对应的视频帧画面进行渲染,并输出到所述客户端的表面视图管理器中。
实施例三
图6示意性示出了根据本申请实施例三的适于实现视频播放控制的方法的计算机设备10000的硬件架构示意图。本实施例中,计算机设备10000是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括FEN独立的服务器,或者多个服务器所组成的服务器集群)等。如图6所示,计算机设备10000至少包括但不限于:可通过系统总线相互通信链接存储器10010、处理器10020、网络接口10030。其中:
存储器10010至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器10010可以是计算机设备10000的内部存储模块,例如该计算机设备10000的硬盘或内存。在另一些实施例中,存储器10010也可以是计算机设备10000的外部存储设备,例如该计算机设备10000上配备的插接式硬盘,智能存储卡(Smart Media Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,存储器10010还可以既包括计算机设备10000的内部存储模块也包括其外部存储设备。本实施例中,存储器10010通常用于存储安装于计算机设备10000的操作系统和各类应用软件,例如视频播放控制的方法的程序代码等。此外,存储器10010还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器10020在一些实施例中可以是中央处理器(Central Processing Unit,简称为CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器10020通常用于控制计算机设备10000的总体操作,例如执行与计算机设备10000进行数据交互或者通信相关的控制和处理等。本实施例中,处理器10020用于运行存储器10010中存储的程序代码或者处理数据。
网络接口10030可包括无线网络接口或有线网络接口,该网络接口10030通常用于在计算机设备10000与其他计算机设备之间建立通信链接。例如,网络接口10030用于通过网络将计算机设备10000与外部终端相连,在计算机设备10000与外部终端之间的建立数据传输通道和通信链接等。网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,简称为GSM)、宽带码分多址(Wideband Code Division Multiple Access,简称为WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图6仅示出了具有部件10010-10030的计算机设备,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器10010中的视频播放控制的方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器10020)所执行,以完成本申请实施例。
实施例四
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行时实现实施例中的视频播放控制的方法的步骤。
本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中视频播放控制的方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
显然,本领域的技术人员应该明白,上述的本申请实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请实施例不限制于任何特定的硬件和软件结合。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (10)

1.一种视频播放控制的方法,其特征在于,所述的方法包括:
获取待播放视频对应的多个控制点;其中,每一个所述控制点具有一一对应的时间点和播放速度;
根据所述多个控制点对应的时间点和播放速度确定多个变速时间段,以及每一个所述变速时间段对应的变速曲线;
根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面;
对所述每一个时间点对应的视频帧画面进行渲染,以控制在客户端上曲线变速播放所述待播放视频。
2.根据权利要求1所述的视频播放控制的方法,其特征在于,所述获取待播放视频对应的多个控制点,包括:
展示所述待播放视频对应的曲线设置界面;
接收作用于所述曲线设置界面上的设置操作,并根据所述设置操作确定所述待播放视频对应的多个控制点。
3.根据权利要求1所述的视频播放控制的方法,其特征在于,所述曲线设置界面包含二维坐标系;所述二维坐标系的X轴用于设置变速播放的时间点,所述二维坐标系的Y轴用于设置所述变速播放的时间点对应的播放速度。
4.根据权利要求3所述的视频播放控制的方法,其特征在于,所述二维坐标系的X轴的长度为预设数值;所述展示所述待播放视频对应的曲线设置界面,包括:
根据所述预设数值对所述待播放视频的播放时间进行归一化处理;
根据归一化处理后所述待播放视频的播放时间,展示所述待播放视频对应的曲线设置界面。
5.根据权利要求1所述的视频播放控制的方法,其特征在于,所述根据所述多个控制点对应的时间点和播放速度确定多个变速时间段,以及每一个所述变速时间段对应的变速曲线,包括:
根据所述多个控制点对应的时间点和播放速度,针对每两个时间点相邻的控制点确定一个变速时间段;
基于Hermite插值函数,确定每一个所述变速时间段对应的变速曲线。
6.根据权利要求1所述的视频播放控制的方法,其特征在于,所述客户端具备计算引擎和渲染引擎;所述根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面,包括:
通过所述计算引擎根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面,并将所述每一个时间点对应的视频帧画面传递至所述渲染引擎。
7.根据权利要求6所述的视频播放控制的方法,其特征在于,所述客户端还具备表面视图管理器,所述对所述每一个时间点对应的视频帧画面进行渲染,包括:
通过所述渲染引擎对所述每一个时间点对应的视频帧画面进行解码;
按照时间顺序对所述每一个时间点对应的视频帧画面进行渲染,并输出到所述客户端的表面视图管理器中。
8.一种视频播放控制的系统,其特征在于,所述的系统包括:
控制点获取模块,用于获取待播放视频对应的多个控制点;其中,每一个所述控制点具有一一对应的时间点和播放速度;
变速曲线确定模块,用于根据所述多个控制点对应的时间点和播放速度确定多个变速时间段,以及每一个所述变速时间段对应的变速曲线;
视频帧画面确定模块,用于根据每一个所述变速时间段对应的变速曲线确定每一个时间点对应的视频帧画面;
视频播放控制模块,用于对所述每一个时间点对应的视频帧画面进行渲染,以控制在客户端上曲线变速播放所述待播放视频。
9.一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时用于实现权利要求1至7中任意一项所述的视频播放控制的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行权利要求1至7中任意一项所述的视频播放控制的方法的步骤。
CN202310491462.7A 2023-05-04 2023-05-04 视频播放控制的方法和系统 Pending CN116456152A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310491462.7A CN116456152A (zh) 2023-05-04 2023-05-04 视频播放控制的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310491462.7A CN116456152A (zh) 2023-05-04 2023-05-04 视频播放控制的方法和系统

Publications (1)

Publication Number Publication Date
CN116456152A true CN116456152A (zh) 2023-07-18

Family

ID=87132073

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310491462.7A Pending CN116456152A (zh) 2023-05-04 2023-05-04 视频播放控制的方法和系统

Country Status (1)

Country Link
CN (1) CN116456152A (zh)

Similar Documents

Publication Publication Date Title
US11924503B2 (en) Bullet comment presentation method and system
US11722555B2 (en) Application control method and apparatus, electronic device, and storage medium
US12022150B2 (en) Bullet comment processing method and system based on WeChat mini-program
CN111510789B (zh) 视频播放方法、系统、计算机设备及计算机可读存储介质
US11991420B2 (en) Live commenting processing method and system
CN112528203A (zh) 基于网页的在线文档制作方法及系统
CN116091672A (zh) 图像渲染方法、计算机设备及其介质
CN107864384A (zh) 重定向云桌面上互联网视频播放的方法及装置
CN112714365B (zh) 视频播放方法和系统
JP2023519372A (ja) 三次元ビデオの処理方法、装置、可読記憶媒体及び電子機器
EP4080507A1 (en) Method and apparatus for editing object, electronic device and storage medium
CN112819927A (zh) 基于图片的视频生成方法、装置
CN116456152A (zh) 视频播放控制的方法和系统
CN111242688A (zh) 动画资源的制作方法、装置、移动终端和存储介质
CN115830212A (zh) 三维模型展示方法及相关设备
WO2021088973A1 (zh) 直播流显示方法、装置、电子设备及可读存储介质
CN112788349B (zh) 数据流推送方法、系统、计算机设备及可读存储介质
CN113596351A (zh) 视频的显示方法及装置
CN113542846B (zh) Ar弹幕显示方法及装置
CN113766255B (zh) 视频流合并方法、装置、电子设备及计算机介质
CN114157917B (zh) 视频剪辑方法、装置及终端设备
CN115065866B (zh) 一种视频生成方法、装置、设备及存储介质
CN114942812B (zh) 多媒体信息共享方法、装置和电子设备
US11711333B2 (en) Bullet comment processing method and system based on WeChat applet
CN115278330A (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