CN112104915B - 一种视频数据处理方法、装置及存储介质 - Google Patents
一种视频数据处理方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112104915B CN112104915B CN202010961575.5A CN202010961575A CN112104915B CN 112104915 B CN112104915 B CN 112104915B CN 202010961575 A CN202010961575 A CN 202010961575A CN 112104915 B CN112104915 B CN 112104915B
- Authority
- CN
- China
- Prior art keywords
- progress
- video
- gesture
- sliding
- video data
- 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
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
- H04N21/47217—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 for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0486—Drag-and-drop
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- 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/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/42204—User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
-
- 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/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/42204—User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
- H04N21/42206—User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor characterized by hardware details
- H04N21/42224—Touch pad or touch panel provided on the remote control
-
- 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/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
-
- 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
-
- 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/485—End-user interface for client configuration
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
Abstract
本申请公开一种视频数据处理方法、装置及存储介质,其中,方法包括:获取视频数据对应的视频播放界面,响应针对视频播放界面执行的滑动操作,识别滑动操作对应的操作手势;在识别到操作手势属于第一类型手势时,从第一类型手势对应的滑动轨迹中获取滑动操作的起始触发位置和结束触发位置;基于起始触发位置和结束触发位置,确定滑动轨迹所指示的滑动方向,基于滑动方向和视频播放界面中属于进度条的进度控制方向,对视频数据的进度时长进行播放控制,在视频播放界面上显示播放控制后的视频数据。采用本申请,可在视频数据的播放过程中,准确地控制视频数据的播放精度。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种视频数据处理方法、装置及存储介质。
背景技术
目前,当用户在应用客户端(例如,视频客户端)中播放某个视频节目(例如,视频节目A)时,可以在该视频节目A对应的视频播放界面上,通过触发该视频播放界面所对应的触摸屏幕的指定位置区域,来实现倍速播放。比如,应用客户端可以在获取到该用户针对该触摸屏幕的左侧位置区域的触发操作(例如,单击操作)时,通过该应用客户端的播放器将该视频界面A的视频数据进行2倍数快退处理。又比如,应用客户端还可以在获取到该用户针对该触摸屏幕的右侧位置区域的触发操作(例如,点击操作)时,将该视频界面A的视频数据进行2倍数快进处理。现在,现有技术在对视频数据进行倍数播放的过程中,无论是进行2倍数快进处理还是2倍数快进处理,难以控制视频数据的播放精度。
发明内容
本申请实施例提供一种视频数据处理方法、装置及存储介质,可以准确地控制视频数据的播放精度。
本申请实施例一方面提供了一种视频数据处理方法,方法包括:
获取视频数据对应的视频播放界面,响应针对视频播放界面执行的滑动操作,识别滑动操作对应的操作手势;
在识别到操作手势属于第一类型手势时,从第一类型手势对应的滑动轨迹中获取滑动操作的起始触发位置和结束触发位置;
基于起始触发位置和结束触发位置,确定滑动轨迹所指示的滑动方向,基于滑动方向和视频播放界面中属于进度条的进度控制方向,对视频数据的进度时长进行播放控制,在视频播放界面上显示播放控制后的视频数据。
本申请实施例一方面提供了一种视频数据处理装置,装置包括:
响应识别模块,用于获取视频数据对应的视频播放界面,响应针对视频播放界面执行的滑动操作,识别滑动操作对应的操作手势;
位置获取模块,用于在识别到操作手势属于第一类型手势时,从第一类型手势对应的滑动轨迹中获取滑动操作的起始触发位置和结束触发位置;
进度控制模块,用于基于起始触发位置和结束触发位置,确定滑动轨迹所指示的滑动方向,基于滑动方向和视频播放界面中属于进度条的进度控制方向,对视频数据的进度时长进行播放控制,在视频播放界面上显示播放控制后的视频数据。
其中,响应识别模块包括:
启动显示单元,用于响应针对应用客户端的启动操作,显示应用客户端对应的应用显示界面;
播放显示单元,用于响应针对应用显示界面中的视频数据的播放操作,显示视频数据对应的视频播放界面;
关联参数记录单元,用于响应针对视频播放界面执行的滑动操作,记录与滑动操作相关联的滑动关联参数;
手势识别单元,用于基于滑动关联参数识别滑动操作对应的操作手势。
其中,滑动关联参数包括N个屏幕触摸点的位置信息;N个屏幕触摸点是在用户对视频播放界面所对应的触摸屏幕进行持续性按压时所捕获到的;N为正整数;
手势识别单元包括:
轨迹确定子单元,用于从滑动关键参数中获取N个屏幕触摸点的位置信息,基于N个触摸点的位置信息,确定N个屏幕触摸点所构成的滑动轨迹;
调用查找子单元,用于调用应用客户端对应的系统手势库,若在系统手势库中查找到与滑动轨迹相匹配的轨迹,则确定滑动操作的操作手势属于第一类型手势。
其中,手势识别单元还包括:
手势确定子单元,用于若在系统手势库中未查找到与滑动轨迹相匹配的轨迹,则确定滑动操作对应的操作手势属于第二类型手势;第二类型手势用于指示应用客户端启动视频数据对应的进度条的进度拖动功能;
进度条显示子单元,用于基于进度拖动功能确定时间进度调整规则,基于时间进度调整规则在视频播放界面上显示视频数据的进度条,且将第二类型手势对应的滑动操作确定为拖动操作;
拖动长度确定子单元,用于在进度条上确定拖动操作对应的第一进度位置,基于拖动操作所对应的拖动轨迹,确定拖动轨迹的拖动方向和拖动长度;
进度条控制子单元,用于基于第一进度位置、拖动方向和拖动长度,控制视频数据的进度条。
其中,进度条控制子单元包括:
第一位置调整子单元,用于若拖动方向与进度条的进度控制方向相同,则基于拖动长度所映射的第一拖动进度值,将视频数据的进度条由第一进度位置调整为第二进度位置;第二进度位置大于第一进度位置,且所第二进度位置与第一进度位置之间的进度差值为第一拖动进度值;
第二位置调整子单元,用于若拖动方向与进度条的进度控制方向相反,则基于拖动长度所映射的第二拖动进度值,将视频数据的进度条由第一进度位置调整为第三进度位置;第三进度位置小于第一进度位置,且所第一进度位置与第二进度位置之间的进度差值为第二拖动进度值。
其中,滑动关联参数包括N个屏幕触摸点所对应的按压时长;按压时长是在用户对视频播放界面所对应的触摸屏幕进行持续性按压时所统计到的;
手势识别单元包括:
时长阈值确定子单元,用于基于滑动关联参数中的按压时长,确定按压时长对应的时长阈值;
比较结果确定子单元,用于将按压时长与时长阈值进行比较,得到比较结果;
第一确定子单元,用于若比较结果指示按压时长小于时长阈值,则确定滑动操作的操作手势属于第一类型手势。
其中,手势识别单元包括还包括:
第二确定子单元,用于若比较结果指示按压时长大于或者等于时长阈值,则确定滑动操作的操作手势属于第二类型手势。
其中,起始触发位置和结束触发位置均属于触摸屏幕对应的屏幕坐标系下的屏幕触摸点的位置信息;触摸屏幕用于显示视频数据对应的视频播放界面;
进度控制模块包括:
进度控制方向确定单元,当视频播放界面对应的触摸屏幕处于横屏状态时,将屏幕坐标系下的第一轴坐标方向确定为辅助参考方向,且基于辅助参考方向确定视频播放界面中属于进度条的进度控制方向;
滑动方向确定单元,用于确定从起始触发位置到结束触发位置之间的位置信息差值,确定位置信息差值在辅助参考方向上的差值属性,基于差值属性确定滑动轨迹所指示的滑动方向;
进度时长获取单元,用于将第一类型手势所对应的视频帧作为过渡视频帧,将过渡视频帧的播放时间戳作为初始时间戳,获取滑动方向上的进度时长;
播放控制单元,用于基于初始时间戳、进度时长、滑动方向以及进度控制方向,对视频数据的进度时长进行播放控制,在视频播放界面上显示播放控制后的视频数据。
其中,播放控制单元包括:
快进时长确定子单元,用于若滑动方向与进度控制方向相同,则将进度时长确定为滑动方向上的快进时长;
第一目标确定子单元,用于基于初始时间戳以及快进时长,确定视频数据对应的第一目标时间戳;
快进显示子单元,用于若在视频数据对应的缓存数据库中查找到第一目标时间戳对应的缓存数据帧以及缓存数据帧对应的缓存视频序列,则将视频数据的视频帧由过渡视频帧快进至缓存数据帧,将缓存数据帧对应的缓存视频序列作为播放控制后的视频数据,在视频播放界面上显示播放控制后的视频数据;缓存数据帧为缓存视频序列的首个视频帧。
其中,播放控制单元还包括:
时间戳发送子单元,用于若在视频数据对应的缓存数据库中未查找到第一目标时间戳对应的缓存数据帧,则将初始时间戳和快进时长发送给业务服务器,以使业务服务器基于初始时间戳获取与快进时长相关联的第一视频序列;第一视频序列中包含第一目标时间戳对应的目标数据帧,且目标数据帧为第一视频序列的首个视频帧;
第一序列接收子单元,用于接收业务服务器返回的第一视频序列,将视频数据的视频帧由过渡视频帧快进至目标数据帧;
第一显示子单元,用于基于目标数据帧对应的第一目标时间戳,将第一视频序列作为播放控制后的视频数据,在视频播放界面上显示播放控制后的视频数据。
可选的,其中,播放控制单元包括:
快退时长确定子单元,用于若滑动方向与进度控制方向相反,则将进度时长确定为滑动方向上的快退时长,基于初始时间戳以及快退时长,生成视频数据加载请求;
加载请求发送子单元,用于将视频数据加载请求发送给业务服务器,以使业务服务器基于初始时间戳获取与快退时长相关联的第二视频序列;第二视频序列中包含第二目标时间戳对应的关键数据帧以及初始时间戳对应的过渡视频帧;关键数据帧为第二视频序列的首个视频帧,且第二目标时间戳是由初始时间戳与快退时长所确定的;
第二序列获取子单元,用于获取第二视频序列,将视频数据的视频帧由过渡视频帧快退至关键数据帧;
第二显示子单元,用于基于关键数据帧对应的第二目标时间戳,将第二视频序列作为播放控制后的视频数据,在视频播放界面上显示播放控制后的视频数据。
其中,播放控制单元还包括:
码流接收子单元,用于接收业务服务器返回的视频编码码流;视频编码码流是由业务服务器按照第一编码码率对第二视频序列进行编码处理后所得到的;第一编码码率为业务服务器按照编码规则对第二编码码率进行码率控制后所得到的;第一编码码率小于第二编码码率;
码流解码子单元,用于基于编码规则对应的解码规则,确定第一编码码率对应的第二编码码率,基于第二编码码率对视频编码码流进行解码处理,得到第二视频序列。
其中,进度控制模块还包括:
次数累计单元,用于在单位统计时长内,累计执行滑动操作的次数;
时长调整单元,用于在次数达到单位统计时长对应的次数阈值时,启动自适应调整任务,基于自适应调整任务更新滑动方向上的进度时长;更新后的进度时长大于更新前的进度时长。
本申请实施例一方面提供了一种计算机设备,计算机设备包括:处理器和存储器;
处理器与存储器相连,其中,存储器用于存储程序代码,处理器用于调用程序代码,以执行本申请实施例一方面中的方法。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序包括程序指令,当处理器执行程序指令时,执行本申请实施例一方面中的方法。
本申请实施例一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例一方面中的方法。
本申请实施例中的计算机设备可以在获取到视频数据对应的视频播放界面时,响应针对视频播放界面执行的滑动操作,以识别滑动操作对应的操作手势。可以理解的是,本申请实施例可以接收用户针对该视频播放界面中的任意位置区域执行滑动操作,并可以进一步对接收到的滑动操作所对应的手势进行识别,其中,应当理解,这里的操作手势可以是由该滑动操作所对应的轨迹所确定的。该操作手势可以大致归类为第一类型手势和第二类型手势。例如,这里的第一类型手势可以为轻滑手势,该轻滑手势可以用于触发对进度时长进行精确控制的功能。又例如,这里的第二类型手势可以为拖动手势,该拖动手势可以用于触发对进度条的播放控制功能。所以,进一步的,计算机设备可以在识别到操作手势属于第一类型手势(即前述轻滑手势)时,从第一类型手势对应的滑动轨迹中获取滑动操作的起始触发位置和结束触发位置,以基于起始触发位置和结束触发位置,确定出滑动轨迹所指示的滑动方向。进一步的,计算机设备可以基于滑动方向和视频播放界面中属于进度条的进度控制方向,对视频数据的进度时长进行播放控制,比如,可以对视频数据进行精确到秒的快进处理或者快退处理,以在视频播放界面上显示播放控制后的视频数据。由此可见,本申请实施例可以在视频数据的播放过程中,在触摸屏幕的任意一个位置区域进行滑动操作,以在识别该滑动操作对应的操作手势属于第一类型手势(例如,轻滑手势)时,启动对进度时长进行精确控制的功能,以便于后续可以在从该第一类型手势对应的滑动轨迹中获取到起始触发位置和结束触发位置时,基于起始触发位置和结束触发位置,确定出滑动轨迹所指示的滑动方向,进而可以基于滑动方向和前述进度控制方向,进行准确地播放控制,以确保能够准确地控制视频数据的播放精度。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种网络架构的结构示意图;
图2是本申请实施例提供的一种进行数据交互的场景交互图;
图3是本申请实施例提供的一种视频数据处理方法的流程示意图;
图4是本申请实施例提供的一种应用显示界面的场景示意图;
图5是本申请实施例提供的一种旋转触摸屏幕的场景示意图;
图6是本申请实施例提供的一种滑动轨迹的场景示意图;
图7是本申请实施例提供的一种对进度条的进度位置进行控制的场景示意图;
图8是本申请实施例提供的一种对视频数据的进度时长进行播放控制的场景示意图;
图9是本申请实施例提供的一种视频数据处理方法的示意图;
图10是本申请实施例提供的一种获取第二视频序列的场景示意图;
图11是本申请实施例提供的一种自定义进度时长的场景示意图;
图12是本申请实施例提供的一种对视频数据的进度时长进行播放控制的流程示意图;
图13是本申请实施例提供的一种视频数据处理装置的结构示意图;
图14是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1,图1是本申请实施例提供的一种网络架构的结构示意图。如图1所示,网络架构可以包括业务服务器2000和用户终端集群。该网络架构所适用的网络媒体数据系统可以包含网络社交系统、视频播放系统等具备音视频处理功能的系统。
其中,可以理解的是,用户终端集群可以包括一个或者多个用户终端,这里将不对用户终端集群中的用户终端的数量进行限定。如图1所示,用户终端集群中的多个用户终端具体可以包括用户终端3000a、用户终端3000b、用户终端3000c...、用户终端3000n。如图1所示,用户终端3000a、...、用户终端3000b可以分别与业务服务器2000进行网络连接,以便于该第一用户终端集群中的每个第一用户终端可以通过该网络连接与业务服务器2000之间进行数据交互。
其中,如图1所示的业务服务器2000可以是独立的物理服务器,也可以是多个物理服务器所构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
其中,为便于理解,本申请实施例可以在图1所示的用户终端集群中选择一个用户终端作为目标用户终端,例如,本申请实施例可以将图1所示的用户终端3000a作为目标用户终端,该目标用户终端中可以集成有具备视频数据处理功能(例如,视频数据加载和播放功能)的应用客户端。其中,应用客户端具体可以包括社交客户端、多媒体客户端(例如,视频客户端)、娱乐客户端(例如,点歌客户端)、教育客户端等具有帧序列(例如,帧动画序列)加载和播放功能的客户端。其中,目标用户终端(例如,用户终端3000a)具体可以包括:智能手机、平板电脑、笔记本电脑、桌上型电脑、可穿戴设备、智能家居(例如,智能电视)等携带视频数据处理功能(例如,视频数据播放功能)的智能终端。为便于理解,本申请实施例可以将某个用户(例如,用户B)在应用客户端(例如,视频客户端A)中所选择的贴合自己兴趣的视频数据(比如,视频节目或者影片等)统称为目标视频数据。
其中,可以理解的是,上述网络媒体数据系统所适用的业务场景具体可以包含:娱乐节目点播场景,线下影院观影场景、线下教室听课场景等,这里将不对该网络媒体数据系统所适用的业务场景进行一一列举。
比如,在娱乐节目点播场景下,这里的目标视频数据可以为上述用户B在视频推荐界面(比如,视频节目推荐列表)中所选取的贴合自己兴趣的娱乐节目,例如,这里的娱乐节目可以为该用户B在视频推荐列表上所选取的自己感兴趣的公众人物参与录制的电视节目、综艺节目等,例如,这里的公众人物可以为影视明星、娱乐明星等。又比如,在线下影院观影场景下,这里的目标视频数据可以为该用户B在视频推荐界面(比如,影片推荐列表)中所选取的贴合自己兴趣的影片,例如,这里的影片可以为该用户B在影片推荐列表上所选取的自己感兴趣的公众人物参与录制的影视节目等。比如,在线下教室听课场景下,这里的目标视频数据可以为上述用户B在视频推荐界面(比如,课程推荐列表)中所选取的贴合自己兴趣的课程,例如,这里的课程可以为该用户B在课程推荐列表上所选取的自己感兴趣的老师所录制的教学课程等。
为便于理解,本申请实施例以娱乐节目点播场景为例,以阐述在该娱乐节目点播场景下,如何在识别到触摸屏幕上的第一类型手势(即轻滑手势)的方向时,实现精准到秒的快退功能或者快进功能。为便于理解,进一步的,请参见图2,图2是本申请实施例提供的一种进行数据交互的场景交互图。其中,如图2所示的服务器20a可以为上述图1所对应实施例中的业务服务器2000,如图2所示的用户终端10a可以为图2所示的用户B所使用的用户终端,当该用户B需要在娱乐节目点播场景下对视频数据(例如,图2的目标视频数据)进行准确的播放控制时,可以用手指在图2所示的用户终端10a的触摸屏幕上的任意位置进行滑动操作,如果该滑动操作为沿着特定方向上的轻滑操作,则可以将该滑动操作对应的操作手势统称为第一类型手势,进而可以触发上述精准到秒的快进功能或者快退功能。其中,目标视频数据可以为图2所示的节目名称为“BBCC”的娱乐节目对应的视频数据。
其中,如图2所示的视频播放界面100a,以及如图2所示的视频播放界面200a分别对应于同一对象(例如,图2所示的对象A,该对象A可以为熊猫)在不同时刻时的视频帧。比如,如图2所示的视频播放界面100a可以为该用户B在T1时刻(例如,第20分25秒)执行滑动操作时,显示在该用户终端10a上的视频帧(例如,包含该对象A的视频帧A1)所对应的显示界面。又比如,如图2所示的视频播放界面200a可以为该用户B在执行完滑动操作后的T2时刻(例如,第20分30秒),显示在该用户终端10a上的视频帧(例如,包含该对象A的视频帧A2)所对应的显示界面。
其中,T1时刻与T2时刻之间的时间差值可以为图2所示的用于调整视频数据的进度时长(例如,5秒)。如图2所示,该用户终端10a所捕捉到的该用户B在触摸屏幕上的滑动轨迹可以为图2所示的滑动轨迹C,其中,该滑动轨迹C中的触发位置E可以为该用户B在触摸屏幕上持续滑动(这里指的是持续性轻滑)时所产生的第一个屏幕触摸点的位置信息,本申请实施例可以将该第一个屏幕点的位置信息统称为滑动操作的起始触发位置。同理,该滑动轨迹C中的触发位置F可以为该用户B在触摸屏幕上持续滑动(这里指的是持续性轻滑)时所产生的第N个(即最后一个)屏幕触摸点的位置信息,其中,N可以为正整数。此外,本申请实施例可以将该第N个屏幕点的位置信息统称为滑动操作的结束触发位置。
应当理解,本申请实施例可以基于从该滑动轨迹C中所确定的该起始触发位置和结束触发位置,确定该滑动轨迹C所指示的滑动方向,进而可以判断该滑动方向和该视频播放界面100a中属于进度条的进度控制方向是否一致,如果判断为一致,则可以确定出该用户B希望执行快进5秒的快进意图,此时,该用户终端10a可以确定出该用户B在触摸屏幕上的滑动方向与进度控制方向(例如,图2的X轴的方向)相同的情况下,进一步向图2所示的业务服务器20a发送包含进度时长的视频数据加载请求,以使该业务服务器20a可以基于该视频数据加载请求从该目标视频数据所对应的业务数据库中获取到图2所示的视频序列300a。可以理解的是,本申请实施例可以将图2的视频序列300a统称为与该快进时长相关联的第一视频序列。这里的快进时长即为上述时长为5秒的进度时长。
其中,可以理解的是,本申请实施例可以将上述T1时刻统称为该滑动操作的初始时间戳。可以理解的是,该用户终端10a在将上述快进时长(例如,5秒)发送给业务服务器20a时,还可以将该初始时间戳发送给该业务服务器20a,以使该业务服务器可以基于该初始时间戳和快进时长,确定出与上述快进功能对应的目标时间戳。可以理解的是,本申请实施例可以将上述第一视频序列的首个视频帧所对应的目标时间戳统称为第一目标时间戳。进一步的,可以理解的是,此时,业务服务器20a可以将与该第一目标时间戳对应的视频帧(即上述T2时刻所对应的视频帧A2)作为首个视频帧,以将以上述视频帧A2为首个视频帧的视频序列(即图2所示的视频序列300a)返回给用户终端10a。进一步的,如图2所示,该用户终端10a在获取到该视频序列300a时,可以从该视频序列300a中提取出上述视频帧A2,以便于该用户终端10a可以将该目标视频数据的视频帧由上述视频帧A1快进至视频帧A2,以在该用户终端10a中对视频数据的进度时长进行准确的播放控制,从而可以在图2所示的视频播放界面200a中显示该视频帧A2。可以理解的是,本申请实施例可以在该用户终端10a中显示视频序列300a,并将在该用户终端10a中所显示的视频序列300a统称为在视频播放界面上所显示的播放控制后的视频数据。
其中,用户终端10a对滑动操作的操作手势进行识别以及对视频数据的进度时长进行播放控制的具体实现方式,可以参见下述图3-图12所对应实施例。
进一步地,请参见图3,图3是本申请实施例提供的一种视频数据处理方法的流程示意图。如图3所示,该方法可以由上述用户B对应的用户终端(即上述目标用户终端,例如,该目标用户终端可以为上述图2所示的用户终端10a)执行,也可以由业务服务器(例如,上述图2所示的服务器20a)执行,还可以由用户终端和业务服务器共同执行。为便于理解,本实施例以该方法由上述用户B对应的目标用户终端(即用户终端)执行为例进行说明,以阐述在用户终端中识别滑动操作的操作手势,以及对视频数据的进度时长进行播放控制的具体过程。其中,该方法至少可以包括以下步骤S101-步骤S103:
步骤S101,获取视频数据对应的视频播放界面,响应针对视频播放界面执行的滑动操作,识别滑动操作对应的操作手势;
具体的,用户终端可以响应针对应用客户端的启动操作,以显示应用客户端对应的应用显示界面;进一步的,用户终端可以响应针对应用显示界面中的视频数据的播放操作,显示视频数据对应的视频播放界面;其中,视频数据可以是由应用客户端对应的用户从应用显示界面上所展示的推荐视频数据中所选取的;可选的,这里的视频数据还可以是由该用户通过应用显示界面中的搜索区域进行视频搜索后所得到的,这里将不对其进行限定。进一步的,用户终端可以响应针对视频播放界面执行的滑动操作,记录与滑动操作相关联的滑动关联参数;进一步的,用户终端可以基于滑动关联参数识别滑动操作对应的操作手势。
其中,可以理解的是,这里的应用客户端可以为具有音视频播放功能的视频客户端,例如,上述图2所对应实施例中的视频客户端。当用户(例如,用户B)针对该视频客户端执行启动操作时,可以向该视频客户端对应的业务服务器(例如,上述图2所对应实施例中的业务服务器20a)发送业务数据推荐请求,以使该业务服务器在获取到该业务数据推荐请求时,可以从该业务服务器对应的业务数据库中拉取贴合该用户(例如,用户B)兴趣的多个视频数据,进而可以将这些视频数据返回给运行有该视频客户端的用户终端,以在该用户终端对应的应用显示界面中显示这些视频数据。可以理解的是,本申请实施例可以将用于展示这些视频数据的视频推荐界面统称为该应用客户端(即视频客户端)对应的应用显示界面,即该应用显示界面中所展示的这些视频数据可以为上述推荐视频数据。可以理解的是,该应用显示界面可以用于展示贴合该用户B兴趣的一个或者多个推荐视频数据,还可以用于展示上述搜索区域,这样,用户B还可以在该搜索区域中录入自己感兴趣的其它视频数据的文本信息(例如,视频名称、影视明星等)。
为便于理解,进一步的,请参见图4,图4是本申请实施例提供的一种应用显示界面的场景示意图。如图4所示的应用显示界面300a中可以包含多个视频数据,这里的多个视频数据具体可以包含图4所示的视频数据30a、视频数据30b、视频数据30c和视频数据30d。可以理解的是,本申请实施例可以将展示在应用显示界面300a中的视频数据30a、视频数据30b、视频数据30c和视频数据30d统称为推荐视频数据。
其中,如图4所示,当用户B需要播放某个推荐视频数据(例如,视频数据30b)时,可以将该用户B从该应用显示界面300a中所选取的视频数据30b统称为应用显示界面中的视频数据。此时,用户终端可以响应针对应用显示界面中的视频数据的播放操作,显示视频数据对应的视频播放界面,例如,如图4所示,可以在用户终端中显示视频数据30b对应的视频播放界面,该视频数据30b对应的视频播放界面可以为图4所示的视频播放界面400a,此时,该用户终端的视频播放界面400a所对应的触摸屏幕是处于第一状态(例如,竖屏状态)。
其中,应当理解,该视频数据30b可以为上述图2所对应实施例中的目标视频数据,即该视频数据30b所对应的视频节目可以为上述图2所示的节目名称为“BBCC”的视频节目。可以理解的是,如图4所示,当用户B需要将该用户终端的触摸屏幕的屏幕状态由第一状态切换为第二状态(例如,横屏状态),以得到图4所示的视频播放界面400b时,该用户B可以针对图4所示的视频播放界面400a的任意一个位置执行点击操作(例如,单击操作),以在该视频播放界面400a中显示图4所示的屏幕旋转控件。此时,如图4所示,用户终端可以响应该用户B针对该屏幕旋转控件的触发操作,以对当前处于第一状态的视频播放界面(例如,图4所示的视频播放界面400a)进行旋转处理,以将该视频客户端的视频播放界面由图4所示的视频播放界面400a切换为图4所示的视频播放界面400b,以在播放上述视频数据30b的过程中,增强用户的视觉显示效果。
其中,可以理解的是,图4所示的视频播放界面400a和视频播放界面400b可以为该用户终端的触摸屏幕在不同屏幕状态下的视频播放界面。可选的,该用户B还可以在无需单手点击屏幕旋转控件的情况下,直接通过旋转触摸屏幕的方式将该用户终端的触摸屏幕的屏幕状态由第一状态(例如,竖屏状态)切换为第二状态(例如,横屏状态)。
为便于理解,进一步的,请参见图5,图5是本申请实施例提供的一种旋转触摸屏幕的场景示意图。如图5所示,用户(例如,上述用户B)可以针对图5所示的处于第一状态(比如,竖屏状态)下的触摸屏幕40a进行旋转操作,此时,用户终端可以在检测到针对该触摸屏幕的旋转操作时,对该触摸屏幕进行旋转处理(这里的旋转方向可以为如图5所示的旋转箭头所指示的方向),且旋转处理后所得到的处于第二状态的触摸屏幕可以为图5所示的触摸屏幕40b。可以理解的是,在本申请实施例中,可以在触摸屏幕对应的屏幕坐标系(例如,图5所示的屏幕坐标系400c)下,在图5所示的触摸屏幕40b上显示图5所示的视频播放界面400d,进而可以根据实际需求灵活选择用于切换视频播放界面的方式。比如,在触摸屏幕较大,且不利于直接旋转触摸屏幕的情况下,则可以通过触发屏幕旋转控件的方式进行视频播放界面的切换,以实现屏幕状态的切换。反之,则可以通过旋转触摸屏幕的方式进行视频播放界面的切换,以实现屏幕状态的切换。
其中,可以理解的是,图5所示的屏幕坐标系400c可以为全局坐标系。此时,相对于操作用户终端的任意一个用户(例如,用户B)而言,位于该全局坐标系下的第一轴坐标方向(例如,X轴)和第二轴坐标方向(例如,Y轴)是相对固定且不变的。所以,当用户B将用户终端的触摸屏幕的屏幕状态由第一状态切换为第二状态时,可以使得后续显示在触摸屏幕40a上的视频播放界面中属于进度条的进度控制方向和显示在触摸屏幕40b上的视频播放界面中属于进度条的进度控制方向均为图5所示的第一轴坐标方向(例如,X轴)。这意味着本申请实施例中的进度控制方向是由前述屏幕坐标系400c下的第一轴坐标方向所确定的,即这里的第一轴坐标方向可以用做本申请实施例中的辅助参考方向,这样,该用户终端可以基于该辅助参考方向确定出视频播放界面中属于进度条的进度控制方向。
为便于理解,本申请实施例以触摸屏幕(比如,用户终端的终端屏幕)的屏幕状态为横屏状态(即前述第二状态)为例,以阐述该用户终端基于上述滑动关联参数识别滑动操作对应的操作手势的具体过程。其中,可以理解的是,这里的滑动关联参数具体可以包括由N个屏幕触摸点所构成的触摸点集;N个屏幕触摸点是在用户对视频播放界面所对应的触摸屏幕进行持续性按压时所捕获到的;其中,N为正整数。此时,该用户终端可以从滑动关键参数对应的触摸点集中获取N个屏幕触摸点,并可以基于N个屏幕触摸点和N个触摸点在触摸屏幕上的位置信息,确定N个屏幕触摸点所构成的滑动轨迹;进一步的,用户终端可以调用应用客户端对应的系统手势库,若在系统手势库中查找到与滑动轨迹相匹配的轨迹,则确定滑动操作的操作手势属于第一类型手势。
为便于理解,进一步的,请参见图6,图6是本申请实施例提供的一种滑动轨迹的场景示意图。在如图6所示的屏幕坐标系500a下,当用户在图6所示的用户终端的触摸屏幕上进行持续性按压时,该用户终端可以通过屏幕捕捉技术,捕获到用户(例如,上述图5所对应实施例中的用户B)针对上述视频播放界面所对应的触摸屏幕进行持续性按压时所得到的所有屏幕触摸点,例如,如图6所示,该用户终端可以获取到N个屏幕触摸点。为便于理解,本申请实施例以N=8为例,这8个屏幕触摸点具体可以包含图6所示的屏幕触摸点D1、屏幕触摸点D2,屏幕触摸点D3,屏幕触摸点D4,屏幕触摸点D5、屏幕触摸点D6,屏幕触摸点D7,屏幕触摸点D8。
其中,可以理解的是,在该屏幕坐标系500a下,屏幕触摸点D1、屏幕触摸点D2,屏幕触摸点D3,屏幕触摸点D4,屏幕触摸点D5、屏幕触摸点D6,屏幕触摸点D7,屏幕触摸点D8为按照时间先后顺序所依次捕捉到的屏幕触摸点。所以,该用户终端可以按照时间先后顺序分别将屏幕触摸点D1、屏幕触摸点D2,屏幕触摸点D3,屏幕触摸点D4,屏幕触摸点D5、屏幕触摸点D6,屏幕触摸点D7,屏幕触摸点D8添加到触摸点集中,进而可以将该触摸点集中的这8个屏幕触摸点分别在触摸屏幕上的位置信息称为滑动关联参数。
如图6所示,进一步的,该用户终端可以从该滑动关键参数所对应的触摸点集中获取这8(即N=8)个屏幕触摸点,进而可以基于这8个屏幕触摸点和这8个屏幕触摸点在该触摸屏幕上的位置信息(即8个屏幕触摸点的位置信息),构建得到图6所示的滑动轨迹。
其中,可以理解的是,在该屏幕坐标系500a下,屏幕触摸点D1对应的位置信息可以为位置信息E1,屏幕触摸点D2对应的位置信息可以为位置信息E2,屏幕触摸点D3对应的位置信息可以为位置信息E3。以此类推,屏幕触摸点D8对应的位置信息可以为位置信息E8。具体的,请参见下述表1,是本申请实施例提供的一种触摸点的位置信息的映射关系表。
表1
上述表1所示的屏幕触摸点D1,屏幕触摸点D2,屏幕触摸点D3,屏幕触摸点D4,屏幕触摸点D5、屏幕触摸点D6,屏幕触摸点D7,屏幕触摸点D8可以为上述图6所对应实施例中的8个屏幕触摸点。可以理解的是,如上述图6所示,用户终端在获取到这8个屏幕触摸点和这8个屏幕触摸点在触摸屏幕上的位置信息(例如,上述表1所示的位置信息E1、位置信息E2、位置信息E3、位置信息E4、位置信息E5、位置信息E6、位置信息E7、位置信息E8)时,可以构建得到上述图6所示的滑动轨迹。如上述图6所示,此时,用户终端可以通过该应用客户端对应的接口调用该应用客户端(例如,上述视频客户端)对应的系统手势库,以在图6所示的系统手势库中判断是否存在与图6所示的滑动轨迹相匹配的轨迹。
可以理解的是,当该用户终端在系统手势库中查找到与图6所示的滑动轨迹相匹配的轨迹时,可以判断出该系统手势库中存在与图6所示的滑动轨迹相匹配的轨迹,进而可以确定上述滑动操作的操作手势属于第一类型手势(例如,上述轻滑手势),从而可以继续执行下述步骤S102。应当理解,在本申请实施例中,用户可以在用户终端的触摸屏幕的任意位置执行滑动操作时,可以基于上述屏幕捕捉技术,对该滑动操作的操作手势进行识别,进而可以在识别到该操作手势属于轻滑手势时,启动上述精准到秒的播放控制功能,以便于后续可以提高对视频数据进行播放控制的精准性。
可选的,如上述图6所示,当该用户终端在系统手势库中未查找到与图6所示的滑动轨迹相匹配的轨迹时,可以判断出该系统手势库中不存在与图6所示的滑动轨迹相匹配的轨迹,进而可以确定上述滑动操作的操作手势属于第二类型手势(例如,上述拖动手势),从而可以在该用户终端中启动视频数据(例如,上述视频数据30b)对应的进度条的进度拖动功能,以便于可以根据该进度拖动功能确定出用于对进度条进行调整的时间进度调整规则,进而可以基于该时间进度调整规则在视频播放界面上显示视频数据的进度条,以便于后续可以对该进度条进行时间进度处理,从而可以使得调整后的进度条能够准确地贴合用户的拖动意图。
为便于理解,进一步的,请参见图7,图7是本申请实施例提供的一种对进度条的进度位置进行控制的场景示意图。如图7所示,当用户终端基于上述图6所对应实施例中的屏幕捕捉技术,识别到滑动操作的操作手势属于第二类型手势时,可以指示运行在该用户终端的应用客户端(例如,上述视频客户端)启动上述进度拖动功能。应当理解,此时,该用户终端可以基于进度拖动功能确定当前所使用的播放器的时间进度调整规则,进而基于该时间进度调整规则在图7所示的视频播放界面600a上显示视频数据(例如,上述视频数据30b)的进度条。其中,如图7所示,本申请实施例可以将用户在该视频播放界面600a中执行滑动操作时的进度位置(例如,图7所示的处于进度条上的进度位置60a)统称为第一进度位置。可以理解的是,本申请所涉及的进度条可以用于反映视频数据(例如,上述视频数据30b)的播放进度。比如,该进度条上的进度位置60a可以为当前时刻为T1时刻时的播放进度。可以理解的是,本申请实施例可以将执行上述滑动操作(比如,执行图7所示的拖动轨迹70b对应的拖动操作)时的时刻统称为T1时刻。
其中,可以理解的是,当该用户终端识别到用户在该视频播放界面600a中执行的滑动操作的操作手势属于第二类型手势(例如,上述拖动手势)之后,还可以一并将该第二类型手势所对应的滑动操作统称为拖动操作;此时,用户终端可以在图7所示的视频播放界面600a中所显示的进度条上确定拖动操作对应的第一进度位置即为图7所示的进度位置60a。
进一步的,如图7所示,用户终端可以基于该拖动操作所对应的拖动轨迹,例如,图7所示的拖动轨迹70b,确定该拖动轨迹70b的拖动方向(例如,图7所示的拖动方向70c)和拖动长度(例如,图7所示的拖动长度70d)。可以理解的是,进一步的,用户终端可以基于前述第一进度位置(例如,进度位置60a)、拖动方向(例如,拖动方向70c)和拖动长度(例如,拖动长度70d),对图7所示的视频数据的进度条进行时间进度处理,例如,如图7所示,当该拖动方向70c与图7所示的进度控制方向70a相同时,该用户终端可以基于该拖动长度70d所映射的第一拖动进度值(例如,图7所示的拖动进度值60b),将视频数据的进度条由第一进度位置(例如,图7所示的进度位置60a)调整为第二进度位置,该第二进度位置可以为图7所示的进度位置60c,并可以在图7所示的视频播放界面600b上显示进度位置为进度位置60c的进度条,应当理解,该进度位置为进度位置60c的进度条,即为该用户终端按照上述时间进度调整规则对视频播放界面600a中的进度条进行调整后的进度条。
其中,可以理解的是,如图7所示,当用户终端确定出拖动方向70c与进度条的进度控制方向70a相同时,可以确定该第二进度位置大于前述第一进度位置,且这里的第二进度位置与第一进度位置之间的进度差值可以为图7所示的第一拖动进度值。
应当理解,可选的,若用户终端确定上述拖动操作所对应的拖动方向与进度条的进度控制方向相反,则用户终端可以进一步基于拖动长度所映射的第二拖动进度值,将视频数据的进度条由第一进度位置调整为第三进度位置;此时,这这里的第三进度位置可以小于第一进度位置,且所第一进度位置与第二进度位置之间的进度差值可以为第二拖动进度值。
应当理解,本申请实施例在通过上述接口调用系统手势库的方式对滑动操作的操作手势进行识别之外。可选的,为了进一步增强对视频数据进行播放控制时的精准度,本申请实施例还可以通过统计按压时长的方式对滑动操作的操作手势进行识别。所以,在本申请实施例中的滑动关联参数还可以包含上述N个屏幕触摸点对应的按压时长。可以理解的是,在本申请实施例中,该按压时长是用户终端在上述用户对视频播放界面所对应的触摸屏幕进行持续性按压时所统计到的。此时,该用户终端基于滑动关联参数识别滑动操作对应的操作手势的具体过程可以描述为:用户终端可以基于滑动关联参数中的按压时长,确定按压时长对应的时长阈值,进而可以将按压时长与时长阈值进行比较,以得到比较结果。进一步的,用户终端可以在比较结果指示按压时长小于时长阈值时,确定滑动操作的操作手势属于第一类型手势,以便于后续可以继续执行下述步骤S102。可选的,该用户终端还可以在比较结果指示按压时长大于或者等于时长阈值时,确定滑动操作的操作手势属于第二类型手势,以便于后续可以基于该第二类型手势启动上述进度条对应的进度拖动功能。应当理解,此时,用户终端基于第二类型手势启动进度拖动功能的具体过程,可以参见上述图7所对应实施例中对进度条进行进度控制的具体过程的描述,这里将不再继续进行赘述。
步骤S102,在识别到操作手势属于第一类型手势时,从第一类型手势对应的滑动轨迹中获取滑动操作的起始触发位置和结束触发位置;
具体的,用户终端在执行完上述步骤S102之后,可以识别到上述操作手势属于第一类型手势(即轻滑手势),此时,用户终端可以启动上述精准到秒的播放控制功能,进而可以基于该播放控制功能从该第一类型手势对应的滑动轨迹中获取滑动操作的起始触发位置(例如,上述图6所对应实施例中的屏幕触摸点D1)和结束触发位置(例如,上述图6所对应实施例中的屏幕触摸点D8),进而可以继续执行下述步骤S103。可以理解的是,这里的起始触发位置和结束触发位置均属于触摸屏幕所对应的屏幕坐标系下的屏幕触摸点的位置信息;这里的触摸屏幕可以用于显示上述视频数据对应的视频播放界面。
步骤S103,基于起始触发位置和结束触发位置,确定滑动轨迹所指示的滑动方向,基于滑动方向和视频播放界面中属于进度条的进度控制方向,对视频数据的进度时长进行播放控制,在视频播放界面上显示播放控制后的视频数据。
具体的,当视频播放界面对应的触摸屏幕处于横屏状态时,用户终端可以将屏幕坐标系下的第一轴坐标方向确定为辅助参考方向,且可以基于辅助参考方向确定视频播放界面中属于进度条的进度控制方向;进一步的,用户终端可以确定从起始触发位置到结束触发位置之间的位置信息差值,并可以确定位置信息差值在辅助参考方向上的差值属性,进而可以基于差值属性确定滑动轨迹所指示的滑动方向;进一步的,用户终端可以将第一类型手势所对应的视频帧作为过渡视频帧,并可以将过渡视频帧的播放时间戳作为初始时间戳,获取滑动方向上的进度时长;进一步的,用户终端可以基于初始时间戳、进度时长、滑动方向以及进度控制方向,对视频数据的进度时长进行播放控制,以在视频播放界面上显示播放控制后的视频数据。
其中,可以理解的是,若滑动方向与进度控制方向相同,则用户终端可以将进度时长(例如,上述5秒)确定为滑动方向上的快进时长,即用户终端可以控制播放器沿着进度控制方向快进5秒;进一步的,用户终端可以基于初始时间戳以及快进时长,确定视频数据对应的第一目标时间戳;进一步的,若在视频数据对应的缓存数据库中查找到第一目标时间戳对应的缓存数据帧以及缓存数据帧对应的缓存视频序列,则用户终端可以将视频数据的视频帧由过渡视频帧快进至缓存数据帧,并可以将缓存数据帧对应的缓存视频序列作为播放控制后的视频数据,以在视频播放界面上显示播放控制后的视频数据;应当理解,这里的缓存数据帧可以为缓存视频序列的首个视频帧。
为便于理解,进一步的,请参见图8,图8是本申请实施例提供的一种对视频数据的进度时长进行播放控制的场景示意图。如图8所示的滑动轨迹80c可以为用户终端从系统手势库中所查找到的与滑动操作的滑动轨迹相匹配的轨迹。此时,该滑动操作对应的操作手势可以为上述第一类型手势(例如,轻滑手势)。可以理解的是,这里的滑动操作可以为在图8所示的视频帧700a对应的视频播放界面上执行的。
其中,如图8所示的滑动轨迹80c可以是由N个屏幕触摸点所构成的,这里的N可以为正整数。这N个屏幕触摸点中具体可以包含屏幕触发点1和屏幕触发点N。其中,屏幕触发点1对应的位置信息可以为图8所示的触发位置80a,即该触发位置80a可以为用户的手指触摸到图8所示的用户终端的触摸屏幕时,该用户终端所捕捉到的屏幕触发点1(即第一个屏幕触发点)的位置信息。同理,其中,屏幕触发点N对应的位置信息可以为图8所示的触发位置80b,即该触发位置80b可以为用户的手指离开图8所示的用户终端的触摸屏幕时,该用户终端所捕捉到的屏幕触发点N(即最后一个屏幕触发点)的位置信息。可以理解的是,本申请实施例可以在持续性执行该滑动操作的过程中,将第一个屏幕触发点的位置信息统称为起始触发位置,并可以将最后一个屏幕触发点的位置信息统称为结束触发位置。
其中,应当理解,上述屏幕触发点1和屏幕触发点N在该触摸屏幕上的位置信息是由图8所示的屏幕坐标系所确定的。该屏幕坐标系可以为直角坐标系,比如,该直角坐标系下的第一轴坐标方向可以为图8所示的X轴,该直角坐标系下的第二轴坐标方向可以为图8所示的Y轴。如图8所示,本申请实施例可以在视频播放界面(即图8所示的视频帧700a对应的视频播放界面)对应的触摸屏幕的屏幕状态处于横屏状态时,进一步将该屏幕坐标系(即前述直角坐标系)下的第一轴坐标方向(即图8所示的X轴方向)确定为辅助参考方向,进而可以基于该辅助参考方向确定出在视频播放界面中属于进度条的进度控制方向。可以理解的是,此时,该视频播放界面上可以无需展示该进度条以及该进度条的进度控制方向。即本申请实施例可以直接基于识别到的上述第一类型手势(例如,轻滑手势),从该轻滑手势所对应的滑动轨迹(即图8所示的滑动轨迹80c)中获取到图8所示的触发位置80a(即上述起始触发位置)和触发位置80b(即上述结束触发位置)。
如图8所示,用户终端可以基于该触发位置80a和触发位置80b,确定出从起始触发位置到结束触发位置之间的位置信息差值(即图8所示的滑动轨迹80c的滑动长度),在本申请实施例中,该信息位置差值可以为处于屏幕坐标系下的触发位置80a的坐标值(例如,X1)减去触发位置80b的坐标值(例如,X2),进而可以基于X1与X2之间的位置信息差值(例如,X1-X2=X12),确定该位置信息差值在图8所示的辅助参考方向上的差值属性,从而可以进一步基于该差值属性确定出图8所示的滑动轨迹80c所指示的滑动方向。
其中,可以理解的是,这里的差值属性具体可以包含位置信息差值(即X12)为负数或者位置信息差值(即X12)为正数。比如,如图8所示,当将上述屏幕坐标系下的X轴方向作为辅助参考方向,且用户在图8所示的用户终端的触摸屏幕上由左向右进行滑动时,该用户终端可以基于上述屏幕捕捉技术确定该位置信息的差值(即X12)为负数,即此时,用户终端可以在判断出坐标值X1小于坐标值X2时,确定该差值属性为负数,进而可以在差值属性为负数时,确定出该滑动轨迹80c所指示的滑动方向为向右滑动,进而可以确定出本次向右滑动时的进度时长(例如,T=5秒),以使该用户终端可以在无需显示进度条的情况下,也可以基于前述轻滑手势所对应的滑动方向智能触发对当前播放的视频数据的进度时长进行播放控制的功能。此时,该滑动方向与图8的进度控制方向相同,进而可以将前述进度时长确定为滑动方向上的快进时长,以将当前播放的视频帧(例如,图8所示的视频帧700a)跳转至5秒后的视频帧(例如,图8所示的视频帧700b),以在该视频数据的过程中,实现精准到秒的快进播放。
其中,可以理解的是,在视频数据的播放过程中,运行在该用户终端中的应用客户端会在显示播放控制后的视频数据之前,预先在该用户终端的本地查找是否存在与该进度时长(例如,上述5秒)相关联的缓存视频序列(例如,缓存视频序列1,该缓存视频序列可以为一种以图8所示的视频帧700b为首个视频帧的视频序列。如图8所示,当用户终端判断出缓存数据库中存在该缓存视频序列(例如,缓存视频序列1)时,则可以将视频数据的视频帧由图8所示的视频帧700a(本申请实施例可以将当前播放的视频帧700a统称为过渡视频帧)快进至图8所示的视频帧700b(即缓存数据帧),将缓存数据帧对应的缓存视频序列作为播放控制后的视频数据,在视频播放界面上显示播放控制后的视频数据。
其中,可以理解的是,本申请实施例可以将第一类型手势(即上述轻滑手势)对应的视频帧(例如,图8所示的视频帧700a)统称为过渡视频帧,进而可以将在当前时刻(例如,上述T1时刻)所播放的该过渡时间戳的播放时间戳作为初始时间戳。这样,用户终端在基于上述滑动方向确定出进度时长(例如,上述快进时长)之后,可以基于该初始时间戳和快进时长快速确定出下一时刻(例如,上述T2时刻)需要播放的视频帧的播放时间戳统称为第一目标时间戳。为便于理解,本申请实施例可以将在缓冲数据库中所查找到第一目标时间戳对应的视频帧统称为缓存数据帧,比如,该缓存数据帧可以为图8的视频帧700b。该缓存数据帧(比如,图8所示的视频帧700b)可以为前述缓存视频序列1的首个视频帧。所以,当用户终端将视频数据的视频帧由该过渡视频帧快进至缓存数据帧时,可以进一步将该缓存数据帧对应的缓存视频序列作为播放控制后的视频数据,以在该用户终端的视频播放界面上显示该播放控制后的视频数据。
其中,可以理解的是,用户终端在播放视频数据的过程中,还可以同步向该用户终端对应的业务服务器发送视频数据加载请求(例如,加载请求1)。这样,用户终端在接收到业务服务器基于该视频数据加载请求(例如,加载请求1)所返回的视频序列时,可以将该返回的视频序列作为缓存视频序列(比如,上述缓存视频序列1)存储至缓存数据库中,进而可以在视频数据的播放过程中,确保视频播放的流畅度。
可选的,如图8所示,若用户终端在本地的缓存数据库中未查找到上述第一目标时间戳对应的缓存数据帧,则该用户终端可以将图8所示的初始时间戳和快进时长发送给图8所示的业务服务器,以使该业务服务器可以基于该初始时间戳获取与图8所示的快进时长(例如,5秒)相关联的第一视频序列。可以理解的是,本申请实施例可以在用户终端检测到缓存数据库中不存在上述缓存视频序列的情况下,将直接从业务服务器中所获取到的视频序列统称为第一视频序列。此时,该第一视频序列中可以包含上述第一目标时间戳对应的目标数据帧,该目标数据帧可以为图8所示的视频帧700b,且该目标数据帧可以为该第一视频序列的首个视频帧。可以理解的是,该用户终端在接收到服务器返回的第一视频序列时,可以将视频数据的视频帧由上述过渡视频帧(比如,视频帧700a)快进至目标数据帧,进而可以基于该目标数据帧对应的第一目标时间戳,将该第一视频序列作为新的播放控制后的视频数据。
可选的,可以理解的是,用户终端在获取到上述第一视频序列后,还可以将该第一视频序列添加至上述缓存数据库,以便于后续可以将缓存在该缓存数据库中的第一视频序列作为上述缓存视频序列,以在用户终端中确保数据播放的连贯性和流畅性。
在本申请实施例中,计算机设备(即上述用户终端)可以在获取到视频数据对应的视频播放界面时,响应针对视频播放界面执行的滑动操作,以识别滑动操作对应的操作手势。可以理解的是,本申请实施例可以接收用户针对该视频播放界面中的任意位置区域执行滑动操作,并可以进一步对接收到的滑动操作所对应的手势进行识别,其中,应当理解,这里的操作手势可以是由该滑动操作所对应的轨迹所确定的。该操作手势可以大致归类为第一类型手势和第二类型手势。例如,这里的第一类型手势可以为轻滑手势,该轻滑手势可以用于触发对进度时长进行精确控制的功能。又例如,这里的第二类型手势可以为拖动手势,该拖动手势可以用于触发对进度条的播放控制功能。所以,进一步的,计算机设备可以在识别到操作手势属于第一类型手势(即前述轻滑手势)时,从第一类型手势对应的滑动轨迹中获取滑动操作的起始触发位置和结束触发位置,以基于起始触发位置和结束触发位置,确定出滑动轨迹所指示的滑动方向。进一步的,计算机设备(例如,用户终端)可以基于滑动方向和视频播放界面中属于进度条的进度控制方向,对视频数据的进度时长进行播放控制,比如,可以对视频数据进行精确到秒的快进处理或者快退处理,以在视频播放界面上显示播放控制后的视频数据。由此可见,本申请实施例可以在视频数据的播放过程中,在触摸屏幕的任意一个位置区域进行滑动操作,以在识别该滑动操作对应的操作手势属于第一类型手势(例如,轻滑手势)时,启动对进度时长进行精确控制的功能,以便于后续可以在从该第一类型手势对应的滑动轨迹中获取到起始触发位置和结束触发位置时,基于起始触发位置和结束触发位置,确定出滑动轨迹所指示的滑动方向,进而可以基于滑动方向和前述进度控制方向进行准确地播放控制,以确保能够准确地控制视频数据的播放精度。
进一步地,请参见图9,图9是本申请实施例提供的一种视频数据处理方法的示意图。如图9所示,方法可以由用户终端(例如,上述图2所示的用户终端10a)执行,也可以由业务服务器(例如,上述图2所示的业务服务器20a)执行,还可以由用户终端和业务服务器共同执行。为便于理解,本实施例以该方法由用户终端执行为例进行说明,该用户终端可以为上述目标用户终端,该方法具体可以包含以下步骤:
步骤S201,响应针对应用客户端的启动操作,显示应用客户端对应的应用显示界面;
步骤S202,响应针对应用显示界面中的视频数据的播放操作,显示视频数据对应的视频播放界面;
步骤S203,响应针对视频播放界面执行的滑动操作,记录与滑动操作相关联的滑动关联参数;
其中,可以理解的是,这里的滑动关联参数可以包括由N个屏幕触摸点的位置信息;N个屏幕触摸点是在用户对视频播放界面所对应的触摸屏幕进行持续性按压时所捕获到的;这里的N可以为正整数;可选的,滑动关联参数还可以包括:N个屏幕触摸点所对应的按压时长;按压时长是在用户对视频播放界面所对应的触摸屏幕进行持续性按压时所统计到的。可以理解的是,用户终端记录到的与滑动操作相关联的滑动关联参数的具体实现方式,可以参见上述图3所对应实施例中对滑动关联参数的描述,这里将不再继续进行赘述。
步骤S204,基于滑动关联参数识别滑动操作对应的操作手势;
具体的,用户终端可以从滑动关键参数中获取N个屏幕触摸点的位置信息,基于N个触摸点的位置信息,确定N个屏幕触摸点所构成的滑动轨迹;进一步的,用户终端可以调用应用客户端对应的系统手势库,若在系统手势库中查找到与滑动轨迹相匹配的轨迹,则确定滑动操作的操作手势属于第一类型手势,从而可以进一步执行下述步骤S205。可选的,若在系统手势库中未查找到与滑动轨迹相匹配的轨迹,则可以确定滑动操作对应的操作手势属于第二类型手势。应当理解,这里的第二类型手势可以用于指示该应用客户端启动视频数据对应的进度条的进度拖动功能,进而可以基于上述时间进度调整规则,在显示进度条的情况下,对进度条上的进度位置进行自适应的控制。比如,拖动长度越长,则需要调控的进度条上的进度时长就越长,进而可以灵活对进度条的进度位置进行控制。
可选的,用户终端还可以基于滑动关联参数中的按压时长,确定按压时长对应的时长阈值;进一步的,用户终端可以将按压时长与时长阈值(例如,3秒)进行比较,得到比较结果;若比较结果指示按压时长小于时长阈值,则用户终端可以确定滑动操作的操作手势属于第一类型手势(即上述轻滑手势),从而可以进一步执行下述步骤S205。可选的,若比较结果指示按压时长大于或者等于时长阈值,则该用户终端可以确定滑动操作的操作手势属于第二类型手势(即上述拖动手势)。
其中,用户终端在识别到上述操作手势属于第二类型手势时,启动上述进度拖动功能的具体实现方式,可以参见上述图7所对应实施例中对进度条的进度位置进行控制的具体过程的描述,这里将不再继续进行赘述。
步骤S205,在识别到操作手势属于第一类型手势时,从第一类型手势对应的滑动轨迹中获取滑动操作的起始触发位置和结束触发位置;
其中,起始触发位置和结束触发位置均属于触摸屏幕对应的屏幕坐标系下的屏幕触摸点的位置信息;触摸屏幕可以用于显示视频数据对应的视频播放界面。
步骤S206,当视频播放界面对应的触摸屏幕处于横屏状态时,将屏幕坐标系下的第一轴坐标方向确定为辅助参考方向,且基于辅助参考方向确定视频播放界面中属于进度条的进度控制方向;
步骤S207,确定从起始触发位置到结束触发位置之间的位置信息差值,确定位置信息差值在辅助参考方向上的差值属性,基于差值属性确定滑动轨迹所指示的滑动方向;
步骤S208,将第一类型手势所对应的视频帧作为过渡视频帧,将过渡视频帧的播放时间戳作为初始时间戳,获取滑动方向上的进度时长;
步骤S209,基于初始时间戳、进度时长、滑动方向以及进度控制方向,对视频数据的进度时长进行播放控制,在视频播放界面上显示播放控制后的视频数据;
具体的,若滑动方向与进度控制方向相同,则用户终端可以将进度时长确定为滑动方向上的快进时长;进一步的,用户终端可以基于初始时间戳以及快进时长,确定视频数据对应的第一目标时间戳;进一步的,若在视频数据对应的缓存数据库中查找到第一目标时间戳对应的缓存数据帧以及缓存数据帧对应的缓存视频序列,则用户终端可以将视频数据的视频帧由过渡视频帧快进至缓存数据帧,将缓存数据帧对应的缓存视频序列作为播放控制后的视频数据,在视频播放界面上显示播放控制后的视频数据;缓存数据帧为缓存视频序列的首个视频帧。
其中,用户终端在缓冲数据库中查找缓冲视频序列的具体实现方式,可以参见上述图8所对应实施例中对缓存视频序列的描述,这里将不再继续进行赘述。可选的,若在视频数据对应的缓存数据库中未查找到第一目标时间戳对应的缓存数据帧,则用户终端可以将初始时间戳和快进时长发送给业务服务器,以使业务服务器可以基于初始时间戳获取与快进时长相关联的第一视频序列。其中,业务服务器获取第一视频序列的具体实现方式,可以参见上述图8所对应实施例中对第一视频序列的描述,这里将不再继续进行赘述。
可选的,若滑动方向与进度控制方向相反,则用户终端可以将进度时长确定为滑动方向上的快退时长,从而可以基于初始时间戳以及快退时长,生成视频数据加载请求;进一步的,用户终端可以将视频数据加载请求发送给业务服务器,以使业务服务器基于初始时间戳获取与快退时长相关联的第二视频序列;其中,第二视频序列中包含第二目标时间戳对应的关键数据帧以及初始时间戳对应的过渡视频帧;其中,关键数据帧可以为第二视频序列的首个视频帧,且第二目标时间戳可以是由初始时间戳与快退时长所确定的;进一步的,用户终端可以在获取到第二视频序列时,将视频数据的视频帧由过渡视频帧快退至关键数据帧,进而可以基于关键数据帧对应的第二目标时间戳,将第二视频序列作为播放控制后的视频数据,以在视频播放界面上显示播放控制后的视频数据。
为便于理解,进一步的,请参见图10,图10是本申请实施例提供的一种获取第二视频序列的场景示意图。如图10所示的滑动轨迹90c可以为用户终端从系统手势库中所查找到的与滑动操作的滑动轨迹相匹配的轨迹。此时,该滑动操作对应的操作手势可以为上述第一类型手势(例如,轻滑手势)。可以理解的是,这里的滑动操作可以为在图10所示的视频帧800a对应的视频播放界面上执行的。
其中,如图10所示的滑动轨迹90c可以是由N个屏幕触摸点所构成的,这里的N可以为正整数。这N个屏幕触摸点中具体可以包含屏幕触发点1’和屏幕触发点N’。其中,屏幕触发点1’对应的位置信息可以为图8所示的触发位置90b,即该触发位置90b可以为用户的手指触摸到图10所示的用户终端的触摸屏幕时,该用户终端所捕捉到的屏幕触发点1’(即第一个屏幕触发点)的位置信息。同理,其中,屏幕触发点N’对应的位置信息可以为图10所示的触发位置90a,即该触发位置90a可以为用户的手指离开图10所示的用户终端的触摸屏幕时,该用户终端所捕捉到的屏幕触发点N’(即最后一个屏幕触发点)的位置信息。同理,本申请实施例可以在持续性执行该滑动操作的过程中,将第一个屏幕触发点的位置信息统称为起始触发位置,并可以将最后一个屏幕触发点的位置信息统称为结束触发位置。
其中,应当理解,上述屏幕触发点1’和屏幕触发点N’在该触摸屏幕上的位置信息是由图10所示的屏幕坐标系所确定的。该屏幕坐标系可以为直角坐标系,比如,该直角坐标系下的第一轴坐标方向可以为图10所示的X轴,该直角坐标系下的第二轴坐标方向可以为图10所示的Y轴。如图10所示,本申请实施例可以在视频播放界面(即图10所示的视频帧800a对应的视频播放界面)对应的触摸屏幕的屏幕状态处于横屏状态时,进一步将该屏幕坐标系(即前述直角坐标系)下的第一轴坐标方向(即图10所示的X轴方向)确定为辅助参考方向,进而可以基于该辅助参考方向确定出在视频播放界面中属于进度条的进度控制方向。可以理解的是,此时,本申请实施例可以直接基于识别到的上述第一类型手势(例如,轻滑手势),从该轻滑手势所对应的滑动轨迹(即图10所示的滑动轨迹90c)中获取到图10所示的触发位置90b(即上述起始触发位置)和触发位置90a(即上述结束触发位置)。
如图10所示,用户终端可以基于该触发位置90b和触发位置90a,确定出从起始触发位置到结束触发位置之间的位置信息差值(即图10所示的滑动轨迹90c的滑动长度),在本申请实施例中,该信息位置差值可以为处于屏幕坐标系下的触发位置90b的坐标值(例如,X3)减去触发位置90a的坐标值(例如,X4),进而可以基于X3与X4之间的位置信息差值(例如,X3-X4=X34),确定该位置信息差值在图10所示的辅助参考方向上的差值属性,从而可以进一步基于该差值属性确定出图10所示的滑动轨迹80c所指示的滑动方向为向左滑动。
其中,如图10所示,此时,该滑动方向(即向左滑动的方向)是与图10所示的辅助参考方向(或者进度控制方向)是相反的,即这里的差值属性具体是指位置信息差值(即X34)的差值属性为正数。比如,如图10所示,当将上述屏幕坐标系下的X轴方向作为辅助参考方向,且用户在图10所示的用户终端的触摸屏幕上由右向左进行滑动时,该用户终端可以基于上述屏幕捕捉技术确定该位置信息的差值(即X34)为正数,即此时,用户终端可以在判断出坐标值X3大于坐标值X4时,确定该差值属性为正数,进而可以在差值属性为正数时,确定出该滑动轨迹90c所指示的滑动方向为向左滑动,进而可以确定出本次向左滑动时的进度时长(例如,T’=5秒),以使该用户终端可以在无需显示进度条的情况下,也可以基于前述轻滑手势所对应的滑动方向智能触发对当前播放的视频数据的进度时长进行播放控制的功能。此时,该滑动方向与图10的进度控制方向相反,进而可以将前述进度时长确定为滑动方向上的快退时长,以将当前播放的视频帧(例如,图10所示的视频帧800a)跳转至5秒前的视频帧(例如,图10所示的视频帧800b),以在该视频数据的过程中,实现精准到秒的快退播放。
其中,可以理解的是,在视频数据的播放过程中,由于视频数据的进度控制方向为自左向右播放,因为,为确保视对频数据进行播放的流畅性,会不断将从服务器获取到的待播放的第一视频序列存储至上述缓存数据库。可以理解的是,为降低视频数据对终端内存资源的占用所造成的资源浪费的现象,本申请实施例可以将该应用客户端(即上述视频客户端)所播放完的视频数据进行删除处理,这样,用户针对图10所示的视频帧800a进行向左滑动的轻滑手势之后,则需要重新向图10所示的业务服务器请求5秒前的这个时间段内的视频序列,并可以将重新请求到的视频序列统称为第二视频序列。
其中,可以理解的是,如图10所示,用户终端在播放视频数据的过程中,可以向该用户终端对应的业务服务器发送新的视频数据加载请求(例如,加载请求2)。这样,用户终端在接收到业务服务器基于该新的视频数据加载请求(例如,加载请求2)时,可以从图10所示的视频数据库中获取到与该快退时长相关联的第二视频序列。其中,该第二视频序列中可以包含第二目标时间戳(即基于初始时间戳和快退时长所确定出的新的第一目标时间戳)对应的关键数据帧以及初始时间戳对应的过渡视频帧。其中,如图10所示,这里的关键数据帧可以为图10所示的第二视频序列的首个视频帧(例如,图10所示的),且这里的第二目标时间戳可以是由初始时间戳与快退时长所确定的。
可以理解的是,该用户终端在接收到服务器返回的第二视频序列时,可以将视频数据的视频帧由上述过渡视频帧(比如,视频帧800a)快进至关键数据帧,进而可以基于该关键数据帧对应的第二目标时间戳,将该第二视频序列作为新的播放控制后的视频数据。可选的,可以理解的是,用户终端在获取到上述第二视频序列后,还可以将该第二视频序列添加至上述缓存数据库,以便于后续可以将缓存在该缓存数据库中的第二视频序列作为新的缓存视频序列,以在用户终端中确保数据播放的连贯性和流畅性。
其中,可以理解的是,为了提高数据传输的效率,本申请实施例中的服务器还可以对从视频数据库中获取到的第二视频序列进行编码处理,进而可以将编码处理后的视频编码码流返回给图10所示的用户终端。这样,当用户终端接收到业务服务器所返回的视频编码码流时,可以基于该应用客户端中所存储的编码规则对应的解码规则,确定第一编码码率对应的第二编码码率,进而可以基于第二编码码率对视频编码码流进行解码处理,以解码得到第二视频序列。其中,可以理解的是,这里的视频编码码流可以是由业务服务器按照第一编码码率(例如,编码码率1)对第二视频序列进行编码处理后所得到的;这里的第一编码码率(例如,编码码率1)可以为业务服务器按照编码规则对第二编码码率(例如,码率大于编码码率1的编码码率2)进行码率控制后所得到的;即在本申请实施例中,第一编码码率可以小于第二编码码率;这样,在业务服务器与用户终端之间进行数据传输的过程中,通过进行码率控制,可以提高数据传输的效率,还可以在用户终端中缩短加载出第二视频序列的加载时长。
其中,可以理解的是,在本申请实施例中,由滑动轨迹的起始触发位置和结束触发位置,所确定的位置信息差值的差值矢量K还可以与图10所示的辅助参考方向之间存在一定的夹角(例如,145度,即使用户在用户终端的触摸屏幕上进行滑动操作时存在Y轴方向上的分量(例如,分量y),也可以对其予以忽略),这样,这意味着本申请实施例可以在辅助参考方向上存在差值矢量K的分量(即在X轴上存在差值矢量K上的分量(例如,分量x)时,则也可以间接计算出该差值矢量在该X轴上的分量(例如,分量x)的差值属性,进而可以进一步确定出在该滑动轨所指示的滑动方向,进而可以基于该滑动方向上的进度时长(例如,上述快进时长或者快退时长)对该视频数据的进度时长进行播放控制,进而可以丰富用于触发精准到秒的播放控制这一功能的灵活性。
应当理解,这里的快进时长或者快退时长可以为默认的进度时长(例如,5秒),为了可以准确贴合每个用户对视频数据的进度时长进行播放控制的需求,本申请实施例还可以提供相应的时长设置控件,以帮助用户能够在播放视频数据的过程中可以自定义相应的进度时长。比如,对于用户A和用户B而言,用户A在观看该视频数据的过程中,将进度时长可以由默认的5秒更改为3秒,同理,用户B可以在观看该视频数据的过程中,将所需要的进度时长可以由默认的5秒更改为10秒等。
为便于理解,进一步的,请参见图11,图11是本申请实施例提供的一种自定义进度时长的场景示意图。为便于理解,本申请实施例以该应用客户端对应的用户为用户B为例,如图11所示,用户B可以响应针对视频播放界面900a中的业务控件1执行的触发操作,以显示图11所示的调整界面900b。如图11所示,该调整界面900b中可以包含多个设置控件,这里的多个设置控件具体可以包含图11所示的设置控件1a、设置控件1b和设置控件1c。其中,设置控件1a可以为用于对视频数据的进度时长进行自定义的控件。如图11所示,当用户B针对该设置控件1a执行触发操作时,用户终端可以响应该触发操作,以显示图11所示的进度时长设置界面900c。可以理解的是,该进度时长设置界面900c可以用于设置上述精准到秒的快退或者快进设置。比如,用户B可以在该进度时长设置界面900c中启动连续轻滑以加速快进或者加速快退的功能。又比如,该用户B可以在该进度时长设置界面900c中设置相应的默认进度时长,比如,图11设置的默认进度时长为5秒,当用户B在该进度时长设置界面900c中针对进度时长(例如,图11所示的10秒)所在的区域执行触发操作时,可以将该视频数据的进度时长由默认的进度时长(例如,5秒)切换为10秒,以贴合该用户B快速播放上述视频数据的需要。
可选的,当用户B在该进度时长设置界面900c中启动“连续轻滑快进或者快退加速”的功能时,用户终端可以在播放视频数据的过程中,自动统计该用户在单位时间(例如,3s)内执行的同一滑动操作的用户行为(即轻滑行为),进而可以基于累计到的执行同一轻滑行为(例如,上述向右滑动的轻滑手势)的次数,是否达到预设的单位时长所对应的次数阈值,例如,可以通过累计到的次数阈值来自适应的控制该视频数据的进度时长。为便于理解,举个例子,若上述用户B轻滑一次可以默认快进5s,则该用户B在进行第二次轻滑行为的时候也可以默认快进5s,直到用户B在规定的单位时间(例如,3s)内连续滑动了3次,且该连续滑动的次数达到在单位时长内所累计到的次数阈值(例如,该次数阈值可以为3次)时,该用户终端可以智能触发自适应调整条件,自动启动自适应调整任务,该自适应调整任务可以为执行上述“连续轻滑实现快进或者快退加速的功能”,从而可以灵活控制更长的快进时长,例如,该用户B可以在第3次时执行该轻滑行为时,基于自适应调整任务更新滑动方向上的进度时长,进而可以直接快进10s进行播放,而并非是默认的5s,以加快对视频数据的进度时长的播放控制。可以理解的是,更新后的进度时长(例如,10s)大于更新前的进度时长(例如,5秒)。可选的,本申请实施例可以在进行快进10s播放之后,自动关闭上述“连续轻滑实现快进或者快退加速的功能”,这样,当在第4次执行该轻滑行为时,可以将此时的轻滑行为作为新的第一次轻滑行为,进而可以继续按照快进5秒进行播放。
进一步的,为便于理解,请参见图12,图12是本申请实施例提供的一种对视频数据的进度时长进行播放控制的流程示意图。如图12所示,用户可以通过用户终端执行步骤S1:以打开视频进行播放,进一步的,用户可以执行步骤S2,即可以在屏幕上进行轻滑手势。此时,用户终端可以执行步骤S3,以判断起始点O(即上述起始触发位置)与松手点P(即上述结束触发位置)在X轴上的数值OP。其中,用户终端获取这两个点在X轴上的数值OP的具体实现过程,可以参见上述图9所对应实施例中对位置信息差值的描述,这里将不再继续进行赘述。进一步的,如图12所示,用户终端可以进一步执行步骤S4,以判断该数值OP的差值属性为正数,还是为负数。若该数值OP的差值属性为负数,则可以进一步执行图12所示的步骤S5,以判断该用户终端的本地是否存在上述缓存视频序列,如果存在,则可以执行图12所示的步骤S6,反之,则可以将当前时间点发送给图12所示的视频服务器。其中,这里的视频服务器可以为上述图9所对应实施例中的业务服务器,且该业务服务器向用户终端反馈的后5s的视频内容可以为上述第一视频序列,这里将不对获取第一视频序列的具体过程进行赘述。同理,该业务服务器向用户终端反馈的前5s的视频内容可以为上述第二视频序列,这里将不对获取第二视频序列的具体过程进行赘述。可选的,如图12所示,用户终端还可以在判断出数值OP为非负数(例如,整数)时,执行图12所示的加载请求,以便于可以在该用户终端中触发精准到秒的快退功能。
由此可见,在本申请实施例中,计算机设备(即上述用户终端)可以在视频数据的播放过程中,接收用户在触摸屏幕的任意一个位置区域所执行的滑动操作,进而可以在识别该滑动操作对应的操作手势属于第一类型手势(例如,轻滑手势)时,启动对视频数据的进度时长进行精确控制的功能,这样,当计算机设备(即上述用户终端)从该第一类型手势对应的滑动轨迹中获取到起始触发位置和结束触发位置时,可以基于起始触发位置和结束触发位置,确定出滑动轨迹所指示的滑动方向,进而可以基于滑动方向和前述进度控制方向,对视频数据实现准确地播放控制,以确保能够准确地控制视频数据的播放精度。
进一步地,请参见图12,图12是本申请实施例提供的一种视频数据处理装置的结构示意图。其中,该视频数据处理装置1可以包括:响应识别模块10,位置获取模块20,进度控制模块30。
响应识别模块10,用于获取视频数据对应的视频播放界面,响应针对视频播放界面执行的滑动操作,识别滑动操作对应的操作手势;
其中,响应识别模块10包括:启动显示单元101,播放显示单元102,关联参数记录单元103,手势识别单元104。
启动显示单元101,用于响应针对应用客户端的启动操作,显示应用客户端对应的应用显示界面;
播放显示单元102,用于响应针对应用显示界面中的视频数据的播放操作,显示视频数据对应的视频播放界面;
其中,可以理解的是,视频数据可以是由应用客户端对应的用户从应用显示界面上所展示的推荐视频数据中所选取的;可选的,这里的视频数据还可以为用户从应用显示界面中的搜索区域进行视频搜索后所得到的。
关联参数记录单元103,用于响应针对视频播放界面执行的滑动操作,记录与滑动操作相关联的滑动关联参数;
手势识别单元104,用于基于滑动关联参数识别滑动操作对应的操作手势。
其中,滑动关联参数包括N个屏幕触摸点的位置信息;N个屏幕触摸点是在用户对视频播放界面所对应的触摸屏幕进行持续性按压时所捕获到的;N为正整数;
手势识别单元104包括:轨迹确定子单元1041,调用查找子单元1042,可选的,手势识别单元还包括:手势确定子单元1043,进度条显示子单元1044,拖动长度确定子单元1045和进度条控制子单元1046;
轨迹确定子单元1041,用于从滑动关键参数中获取N个屏幕触摸点的位置信息,基于N个触摸点的位置信息,确定N个屏幕触摸点所构成的滑动轨迹;
调用查找子单元1042,用于调用应用客户端对应的系统手势库,若在系统手势库中查找到与滑动轨迹相匹配的轨迹,则确定滑动操作的操作手势属于第一类型手势。
可选的,手势确定子单元1043,用于若在系统手势库中未查找到与滑动轨迹相匹配的轨迹,则确定滑动操作对应的操作手势属于第二类型手势;第二类型手势用于指示应用客户端启动视频数据对应的进度条的进度拖动功能;
进度条显示子单元1044,用于基于进度拖动功能确定时间进度调整规则,基于时间进度调整规则在视频播放界面上显示视频数据的进度条,且将第二类型手势对应的滑动操作确定为拖动操作;
拖动长度确定子单元1045,用于在进度条上确定拖动操作对应的第一进度位置,基于拖动操作所对应的拖动轨迹,确定拖动轨迹的拖动方向和拖动长度;
进度条控制子单元1046,用于基于第一进度位置、拖动方向和拖动长度,控制视频数据的进度条。
其中,进度条控制子单元1046包括:第一位置调整子单元10461和第二位置调整子单元10462;
第一位置调整子单元10461,用于若拖动方向与进度条的进度控制方向相同,则基于拖动长度所映射的第一拖动进度值,将视频数据的进度条由第一进度位置调整为第二进度位置;第二进度位置大于第一进度位置,且所第二进度位置与第一进度位置之间的进度差值为第一拖动进度值;
第二位置调整子单元10462,用于若拖动方向与进度条的进度控制方向相反,则基于拖动长度所映射的第二拖动进度值,将视频数据的进度条由第一进度位置调整为第三进度位置;第三进度位置小于第一进度位置,且所第一进度位置与第二进度位置之间的进度差值为第二拖动进度值。
其中,第一位置调整子单元10461和第二位置调整子单元10462的具体实现方式可以参见上述图3所对应实施例中对第二类型手势的描述,这里将不再继续进行赘述。
其中,轨迹确定子单元1041,调用查找子单元1042,可选的,手势识别单元还包括:手势确定子单元1043,进度条显示子单元1044,拖动长度确定子单元1045和进度条控制子单元1046的具体实现方式,可以参见上述图3所对应实施例中对进度条的进度位置进行控制的具体过程的描述,这里将不再继续进行赘述。
其中,启动显示单元101,播放显示单元102,关联参数记录单元103,手势识别单元104的具体实现方式,可以参见上述图3所对应实施例中对步骤S101的描述,这里将不再继续进行赘述。
可选的,其中,滑动关联参数包括N个屏幕触摸点所对应的按压时长;按压时长是在用户对视频播放界面所对应的触摸屏幕进行持续性按压时所统计到的;
手势识别单元104包括:时长阈值确定子单元1141,比较结果确定子单元1142,第一确定子单元1143和第二确定子单元1144;
时长阈值确定子单元1141,用于基于滑动关联参数中的按压时长,确定按压时长对应的时长阈值;
比较结果确定子单元1142,用于将按压时长与时长阈值进行比较,得到比较结果;
第一确定子单元1143,用于若比较结果指示按压时长小于时长阈值,则确定滑动操作的操作手势属于第一类型手势。
可选的,第二确定子单元1144,用于若比较结果指示按压时长大于或者等于时长阈值,则确定滑动操作的操作手势属于第二类型手势。
其中,时长阈值确定子单元1141,比较结果确定子单元1142,第一确定子单元1143和第二确定子单元1144的具体实现方式,可以参见上述图3所对应实施例中对按压时长的描述,这里将不再继续进行赘述。
位置获取模块20,用于在识别到操作手势属于第一类型手势时,从第一类型手势对应的滑动轨迹中获取滑动操作的起始触发位置和结束触发位置;
进度控制模块30,用于基于起始触发位置和结束触发位置,确定滑动轨迹所指示的滑动方向,基于滑动方向和视频播放界面中属于进度条的进度控制方向,对视频数据的进度时长进行播放控制,在视频播放界面上显示播放控制后的视频数据。
其中,起始触发位置和结束触发位置均属于触摸屏幕对应的屏幕坐标系下的屏幕触摸点的位置信息;触摸屏幕用于显示视频数据对应的视频播放界面;
进度控制模块30包括:进度控制方向确定单元301,滑动方向确定单元302,进度时长获取单元303,播放控制单元304,次数累计单元305和时长调整单元306;
进度控制方向确定单元301,当视频播放界面对应的触摸屏幕处于横屏状态时,将屏幕坐标系下的第一轴坐标方向确定为辅助参考方向,且基于辅助参考方向确定视频播放界面中属于进度条的进度控制方向;
滑动方向确定单元302,用于确定从起始触发位置到结束触发位置之间的位置信息差值,确定位置信息差值在辅助参考方向上的差值属性,基于差值属性确定滑动轨迹所指示的滑动方向;
进度时长获取单元303,用于将第一类型手势所对应的视频帧作为过渡视频帧,将过渡视频帧的播放时间戳作为初始时间戳,获取滑动方向上的进度时长;
播放控制单元304,用于基于初始时间戳、进度时长、滑动方向以及进度控制方向,对视频数据的进度时长进行播放控制,在视频播放界面上显示播放控制后的视频数据。
其中,播放控制单元304包括:快进时长确定子单元3041,第一目标确定子单元3042,快进显示子单元3043,可选的,播放控制单元304还包括:时间戳发送子单元3044,第一序列接收子单元3045和第一显示子单元3046;可选的,播放控制单元304还包括:快退时长确定子单元3047,加载请求发送子单元3048,第二序列获取子单元3049和第二显示子单元3050;可选的,播放控制单元304还包括:码流接收子单元3051和码流解码子单元3052。
快进时长确定子单元3041,用于若滑动方向与进度控制方向相同,则将进度时长确定为滑动方向上的快进时长;
第一目标确定子单元3042,用于基于初始时间戳以及快进时长,确定视频数据对应的第一目标时间戳;
快进显示子单元3043,用于若在视频数据对应的缓存数据库中查找到第一目标时间戳对应的缓存数据帧以及缓存数据帧对应的缓存视频序列,则将视频数据的视频帧由过渡视频帧快进至缓存数据帧,将缓存数据帧对应的缓存视频序列作为播放控制后的视频数据,在视频播放界面上显示播放控制后的视频数据;缓存数据帧为缓存视频序列的首个视频帧。
可选的,时间戳发送子单元3044,用于若在视频数据对应的缓存数据库中未查找到第一目标时间戳对应的缓存数据帧,则将初始时间戳和快进时长发送给业务服务器,以使业务服务器基于初始时间戳获取与快进时长相关联的第一视频序列;第一视频序列中包含第一目标时间戳对应的目标数据帧,且目标数据帧为第一视频序列的首个视频帧;
第一序列接收子单元3045,用于接收业务服务器返回的第一视频序列,将视频数据的视频帧由过渡视频帧快进至目标数据帧;
第一显示子单元3046,用于基于目标数据帧对应的第一目标时间戳,将第一视频序列作为播放控制后的视频数据,在视频播放界面上显示播放控制后的视频数据。
可选的,快退时长确定子单元3047,用于若滑动方向与进度控制方向相反,则将进度时长确定为滑动方向上的快退时长,基于初始时间戳以及快退时长,生成视频数据加载请求;
加载请求发送子单元3048,用于将视频数据加载请求发送给业务服务器,以使业务服务器基于初始时间戳获取与快退时长相关联的第二视频序列;第二视频序列中包含第二目标时间戳对应的关键数据帧以及初始时间戳对应的过渡视频帧;关键数据帧为第二视频序列的首个视频帧,且第二目标时间戳是由初始时间戳与快退时长所确定的;
第二序列获取子单元3049,用于获取第二视频序列,将视频数据的视频帧由过渡视频帧快退至关键数据帧;
第二显示子单元3050,用于基于关键数据帧对应的第二目标时间戳,将第二视频序列作为播放控制后的视频数据,在视频播放界面上显示播放控制后的视频数据。
可选的,码流接收子单元3051,用于接收业务服务器返回的视频编码码流;视频编码码流是由业务服务器按照第一编码码率对第二视频序列进行编码处理后所得到的;第一编码码率为业务服务器按照编码规则对第二编码码率进行码率控制后所得到的;第一编码码率小于第二编码码率;
码流解码子单元3052,用于基于编码规则对应的解码规则,确定第一编码码率对应的第二编码码率,基于第二编码码率对视频编码码流进行解码处理,得到第二视频序列。
其中,快进时长确定子单元3041,第一目标确定子单元3042,快进显示子单元3043,时间戳发送子单元3044,第一序列接收子单元3045和第一显示子单元3046,快退时长确定子单元3047,加载请求发送子单元3048,第二序列获取子单元3049,第二显示子单元3050,码流接收子单元3051和码流解码子单元3052的具体实现方式,可以参见上述图9所对应实施例中对第一视频序列和第二视频序列的描述,这里将不再继续进行赘述。
其中,进度控制方向确定单元301,滑动方向确定单元302,进度时长获取单元303和播放控制单元304的具体实现方式,可以参见上述3所对应实施例中对视频数据的进度时长进行播放控制的具体过程的描述,这里将不再继续进行赘述。
可选的,次数累计单元305,用于在单位统计时长内,累计执行滑动操作的次数;
时长调整单元306,用于在次数达到单位统计时长对应的次数阈值时,启动自适应调整任务,基于自适应调整任务更新滑动方向上的进度时长;更新后的进度时长大于更新前的进度时长。
其中,次数累计单元305和时长调整单元306的具体实现方式,可以参见上述图9所对应实施例中对单位时长内执行轻滑行为的具体过程的描述,这里将不再继续进行赘述。
响应识别模块10,位置获取模块20,进度控制模块30的具体实现方式,可以参见上述图3所对应实施例中对步骤S101-步骤S103的描述,这里将不再继续进行赘述。其中,可以理解的是,本申请实施例中的视频数据处理装置1可执行前文图3或图9所对应实施例中对视频数据处理方法的描述,在此不再赘述。由此可见,本申请实施例可以在视频数据的播放过程中,允许用户在触摸屏幕的任意一个位置区域进行滑动操作,以使计算机设备(例如,用户终端)在识别到该滑动操作对应的操作手势属于第一类型手势(例如,轻滑手势)时,可以快速的启动对进度时长进行精确控制的功能,以便于后续在从该第一类型手势对应的滑动轨迹中获取到起始触发位置和结束触发位置时,可以基于起始触发位置和结束触发位置,快速确定出滑动轨迹所指示的滑动方向,进而可以基于滑动方向和进度控制方向,对视频数据的进度时长进行准确地播放控制,以控制视频数据的播放精度。
进一步地,请参见图14,是本申请实施例提供的一种计算机设备的结构示意图。如图14所示,该计算机设备1000可以为用户终端,该用户终端可以为上述图1所对应实施例中的用户终端3000a,可选的,该计算机设备1000还可以为业务服务器,该业务服务器可以为上述图1所对应实施例中的业务服务器2000。为便于理解,本申请实施例以该计算机设备为用户终端为例。此时。该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,该计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图14所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
其中,该计算机设备1000中的网络接口1004还可以提供网络通讯功能,且可选用户接口1003还可以包括显示屏(Display)、键盘(Keyboard)。在图14所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取视频数据对应的视频播放界面,响应针对视频播放界面执行的滑动操作,识别滑动操作对应的操作手势;
在识别到操作手势属于第一类型手势时,从第一类型手势对应的滑动轨迹中获取滑动操作的起始触发位置和结束触发位置;
基于起始触发位置和结束触发位置,确定滑动轨迹所指示的滑动方向,基于滑动方向和视频播放界面中属于进度条的进度控制方向,对视频数据的进度时长进行播放控制,在视频播放界面上显示播放控制后的视频数据。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3或图9所对应实施例中对视频数据处理方法的描述,也可执行前文图13所对应实施例中对视频数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机存储介质,且计算机存储介质中存储有前文提及的视频数据处理装置1所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图3或图9所对应实施例中对视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
可以理解的是,本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前文图3或图9所对应实施例中对视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (13)
1.一种视频数据处理方法,其特征在于,包括:
获取视频数据对应的视频播放界面,响应针对所述视频播放界面中的任意位置区域执行的滑动操作,识别所述滑动操作对应的操作手势;
在识别到所述操作手势属于第一类型手势时,启动对视频数据的进度时长进行精准到秒的播放控制功能,并根据所述播放控制功能从所述第一类型手势对应的滑动轨迹中获取所述滑动操作的起始触发位置和结束触发位置;所述第一类型手势为轻滑手势;所述轻滑手势是通过调用系统手势库的方式对所述操作手势进行识别,且在所述系统手势库中查找到与所述滑动轨迹相匹配的轨迹时所确定的,或者所述轻滑手势是通过统计按压时长的方式对所述操作手势进行识别,且在确定所述按压时长小于按压阈值时所确定的;所述按压时长是对所述视频播放界面所对应的触摸屏幕进行持续性按压时所统计到的;所述起始触发位置和所述结束触发位置均属于所述触摸屏幕所对应的屏幕坐标系下的屏幕触摸点的位置信息;所述屏幕坐标系为全局坐标系,且所述屏幕坐标系下的第一轴坐标方向为辅助参考方向;所述进度时长是在进度时长设置界面中所设置的;所述进度时长设置界面是通过触发所述视频播放界面中的业务控件所输出的调整界面确定的;
基于所述起始触发位置和所述结束触发位置之间的位置信息差值在所述辅助参考方向上的差值属性,确定所述滑动轨迹所指示的滑动方向,在所述视频播放界面上未展示进度条的情况下,基于所述滑动方向和所述视频播放界面中属于所述进度条的进度控制方向,对所述视频数据的进度时长进行播放控制,在所述视频播放界面上显示播放控制后的视频数据;所述进度控制方向是由所述屏幕坐标系下的所述第一轴坐标方向所确定的;
当在所述进度时长设置界面中启动自适应调整任务时,累计单位时长内执行所述轻滑手势的次数,且在累计到的次数达到所述单位时长所对应的次数阈值时,基于所述自适应调整任务更新所述滑动方向上的进度时长;更新后的进度时长大于更新前的所述进度时长;
在识别到所述操作手势属于第二类型手势时,基于进度拖动功能确定时间进度调整规则,基于所述时间进度调整规则在所述视频播放界面上显示所述视频数据的进度条,且将所述第二类型手势对应的滑动操作确定为拖动操作,在所述进度条上确定拖动操作对应的第一进度位置,基于所述拖动操作所对应的拖动轨迹,确定所述拖动轨迹的拖动方向和拖动长度,基于所述第一进度位置、所述拖动方向和所述拖动长度,控制所述视频数据的所述进度条;所述第二类型手势用于指示应用客户端启动所述视频数据对应的进度条的进度拖动功能;若所述轻滑手势是在所述系统手势库中查找到与所述滑动轨迹相匹配的轨迹时所确定的,则所述第二类型手势是在所述系统手势库中未查找到与所述滑动轨迹相匹配的轨迹时所确定的;或者,若所述轻滑手势是在确定所述按压时长小于按压阈值时所确定的,则所述第二类型手势是在确定所述按压时长大于或等于按压阈值时所确定的。
2.根据权利要求1所述的方法,其特征在于,所述获取视频数据对应的视频播放界面,响应针对所述视频播放界面中的任意位置区域执行的滑动操作,识别所述滑动操作对应的操作手势,包括:
响应针对应用客户端的启动操作,显示所述应用客户端对应的应用显示界面;
响应针对所述应用显示界面中的视频数据的播放操作,显示所述视频数据对应的视频播放界面;
响应针对所述视频播放界面中的任意位置区域执行的滑动操作,记录与所述滑动操作相关联的滑动关联参数;
基于所述滑动关联参数识别所述滑动操作对应的操作手势。
3.根据权利要求2所述的方法,其特征在于,所述滑动关联参数包括N个屏幕触摸点的位置信息;所述N个屏幕触摸点是在用户对所述视频播放界面所对应的触摸屏幕进行持续性按压时所捕获到的;所述N为正整数;
所述基于所述滑动关联参数识别所述滑动操作对应的操作手势,包括:
从所述滑动关键参数中获取所述N个屏幕触摸点的位置信息,基于所述N个触摸点的位置信息,确定所述N个屏幕触摸点所构成的滑动轨迹;
调用所述应用客户端对应的系统手势库,若在所述系统手势库中查找到与所述滑动轨迹相匹配的轨迹,则确定所述滑动操作的操作手势属于第一类型手势。
4.根据权利要求3所述的方法,其特征在于,所述基于所述第一进度位置、所述拖动方向和所述拖动长度,控制所述视频数据的所述进度条,包括:
若所述拖动方向与所述进度条的进度控制方向相同,则基于所述拖动长度所映射的第一拖动进度值,将所述视频数据的所述进度条由所述第一进度位置调整为第二进度位置;所述第二进度位置大于所述第一进度位置,且所述第二进度位置与所述第一进度位置之间的进度差值为所述第一拖动进度值;
若所述拖动方向与所述进度条的进度控制方向相反,则基于所述拖动长度所映射的第二拖动进度值,将所述视频数据的所述进度条由所述第一进度位置调整为第三进度位置;所述第三进度位置小于所述第一进度位置,且所第一进度位置与所述第二进度位置之间的进度差值为所述第二拖动进度值。
5.根据权利要求3所述的方法,其特征在于,所述滑动关联参数包括所述N个屏幕触摸点所对应的按压时长;所述按压时长是在所述用户对所述视频播放界面所对应的触摸屏幕进行持续性按压时所统计到的;
所述基于所述滑动关联参数识别所述滑动操作对应的操作手势,包括:
基于所述滑动关联参数中的所述按压时长,确定所述按压时长对应的时长阈值;
将所述按压时长与所述时长阈值进行比较,得到比较结果;
若所述比较结果指示所述按压时长小于所述时长阈值,则确定所述滑动操作的操作手势属于第一类型手势。
6.根据权利要求1所述的方法,其特征在于,所述触摸屏幕用于显示所述视频数据对应的所述视频播放界面;
所述基于所述起始触发位置和所述结束触发位置之间的位置信息差值在所述辅助参考方向上的差值属性,确定所述滑动轨迹所指示的滑动方向,在所述视频播放界面上未展示进度条的情况下,基于所述滑动方向和所述视频播放界面中属于所述进度条的进度控制方向,对所述视频数据的播放时长进行播放控制,在所述视频播放界面上显示播放控制后的视频数据,包括:
当所述视频播放界面对应的所述触摸屏幕处于横屏状态时,将所述屏幕坐标系下的第一轴坐标方向确定为辅助参考方向,且基于所述辅助参考方向确定所述视频播放界面中属于进度条的进度控制方向;
确定从所述起始触发位置到所述结束触发位置之间的位置信息差值,确定所述位置信息差值在所述辅助参考方向上的差值属性,基于所述差值属性确定所述滑动轨迹所指示的滑动方向;
在所述视频播放界面上未展示进度条的情况下,将所述第一类型手势所对应的视频帧作为过渡视频帧,将所述过渡视频帧的播放时间戳作为初始时间戳,获取所述滑动方向上的进度时长;
基于所述初始时间戳、所述进度时长、所述滑动方向以及所述进度控制方向,对所述视频数据的进度时长进行播放控制,在所述视频播放界面上显示播放控制后的视频数据。
7.根据权利要求6所述的方法,其特征在于,所述基于所述初始时间戳、所述进度时长、所述滑动方向以及所述进度控制方向,对所述视频数据的进度时长进行播放控制,在所述视频播放界面上显示播放控制后的视频数据,包括:
若所述滑动方向与所述进度控制方向相同,则将所述进度时长确定为所述滑动方向上的快进时长;
基于所述初始时间戳以及所述快进时长,确定所述视频数据对应的第一目标时间戳;
若在所述视频数据对应的缓存数据库中查找到所述第一目标时间戳对应的缓存数据帧以及所述缓存数据帧对应的缓存视频序列,则将所述视频数据的视频帧由所述过渡视频帧快进至所述缓存数据帧,将所述缓存数据帧对应的所述缓存视频序列作为播放控制后的视频数据,在所述视频播放界面上显示所述播放控制后的视频数据;所述缓存数据帧为所述缓存视频序列的首个视频帧。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
若在所述视频数据对应的缓存数据库中未查找到所述第一目标时间戳对应的缓存数据帧,则将所述初始时间戳和所述快进时长发送给业务服务器,以使所述业务服务器基于所述初始时间戳获取与所述快进时长相关联的第一视频序列;所述第一视频序列中包含所述第一目标时间戳对应的目标数据帧,且所述目标数据帧为所述第一视频序列的首个视频帧;
接收所述业务服务器返回的所述第一视频序列,将所述视频数据的视频帧由所述过渡视频帧快进至所述目标数据帧;
基于所述目标数据帧对应的所述第一目标时间戳,将所述第一视频序列作为播放控制后的视频数据,在所述视频播放界面上显示所述播放控制后的视频数据。
9.根据权利要求6所述的方法,其特征在于,所述基于所述初始时间戳、所述进度时长、所述滑动方向以及所述进度控制方向,对所述视频数据的进度时长进行播放控制,在所述视频播放界面上显示播放控制后的视频数据,包括:
若所述滑动方向与所述进度控制方向相反,则将所述进度时长确定为所述滑动方向上的快退时长,基于所述初始时间戳以及所述快退时长,生成视频数据加载请求;
将所述视频数据加载请求发送给业务服务器,以使所述业务服务器基于所述初始时间戳获取与所述快退时长相关联的第二视频序列;所述第二视频序列中包含第二目标时间戳对应的关键数据帧以及所述初始时间戳对应的过渡视频帧;所述关键数据帧为所述第二视频序列的首个视频帧,且所述第二目标时间戳是由所述初始时间戳与所述快退时长所确定的;
获取所述第二视频序列,将所述视频数据的视频帧由所述过渡视频帧快退至所述关键数据帧;
基于所述关键数据帧对应的所述第二目标时间戳,将所述第二视频序列作为播放控制后的视频数据,在所述视频播放界面上显示所述播放控制后的视频数据。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
接收所述业务服务器返回的视频编码码流;所述视频编码码流是由所述业务服务器按照第一编码码率对所述第二视频序列进行编码处理后所得到的;所述第一编码码率为所述业务服务器按照编码规则对第二编码码率进行码率控制后所得到的;所述第一编码码率小于所述第二编码码率;
基于所述编码规则对应的解码规则,确定所述第一编码码率对应的第二编码码率,基于所述第二编码码率对所述视频编码码流进行解码处理,得到所述第二视频序列。
11.一种视频数据处理装置,其特征在于,包括:
响应识别模块,用于获取视频数据对应的视频播放界面,响应针对所述视频播放界面中的任意位置区域执行的滑动操作,识别所述滑动操作对应的操作手势;
位置获取模块,用于在识别到所述操作手势属于第一类型手势时,启动对视频数据的进度时长进行精准到秒的播放控制功能,并根据所述播放控制功能从所述第一类型手势对应的滑动轨迹中获取所述滑动操作的起始触发位置和结束触发位置;所述第一类型手势为轻滑手势;所述轻滑手势是通过调用系统手势库的方式对所述操作手势进行识别,且在所述系统手势库中查找到与所述滑动轨迹相匹配的轨迹时所确定的,或者所述轻滑手势是通过统计按压时长的方式对所述操作手势进行识别,且在确定所述按压时长小于按压阈值时所确定的;所述按压时长是对所述视频播放界面所对应的触摸屏幕进行持续性按压时所统计到的;所述起始触发位置和所述结束触发位置均属于所述触摸屏幕所对应的屏幕坐标系下的屏幕触摸点的位置信息;所述屏幕坐标系为全局坐标系,且所述屏幕坐标系下的第一轴坐标方向为辅助参考方向;所述进度时长是在进度时长设置界面中所设置的;所述进度时长设置界面是通过触发所述视频播放界面中的业务控件所输出的调整界面确定的;
进度控制模块,用于基于所述起始触发位置和所述结束触发位置之间的位置信息差值在所述辅助参考方向上的差值属性,确定所述滑动轨迹所指示的滑动方向,在所述视频播放界面上未展示进度条的情况下,基于所述滑动方向和所述视频播放界面中属于进度条的进度控制方向,对所述视频数据的进度时长进行播放控制,在所述视频播放界面上显示播放控制后的视频数据;所述进度控制方向是由所述屏幕坐标系下的所述第一轴坐标方向所确定的;
所述进度控制模块,用于当在所述进度时长设置界面中启动自适应调整任务时,累计单位时长内执行所述轻滑手势的次数,且在累计到的次数达到所述单位时长所对应的次数阈值时,基于所述自适应调整任务更新所述滑动方向上的进度时长;更新后的进度时长大于更新前的所述进度时长;
所述响应识别模块,还用于在识别到所述操作手势属于第二类型手势时,基于进度拖动功能确定时间进度调整规则,基于所述时间进度调整规则在所述视频播放界面上显示所述视频数据的进度条,且将所述第二类型手势对应的滑动操作确定为拖动操作,在所述进度条上确定拖动操作对应的第一进度位置,基于所述拖动操作所对应的拖动轨迹,确定所述拖动轨迹的拖动方向和拖动长度,基于所述第一进度位置、所述拖动方向和所述拖动长度,控制所述视频数据的所述进度条;所述第二类型手势用于指示应用客户端启动所述视频数据对应的进度条的进度拖动功能;若所述轻滑手势是在所述系统手势库中查找到与所述滑动轨迹相匹配的轨迹时所确定的,则所述第二类型手势是在所述系统手势库中未查找到与所述滑动轨迹相匹配的轨迹时所确定的;或者,若所述轻滑手势是在确定所述按压时长小于按压阈值时所确定的,则所述第二类型手势是在确定所述按压时长大于或等于按压阈值时所确定的。
12.一种计算机设备,其特征在于,包括:处理器和存储器;
所述处理器与存储器相连,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以执行权利要求1-10任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,执行权利要求1-10任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010961575.5A CN112104915B (zh) | 2020-09-14 | 2020-09-14 | 一种视频数据处理方法、装置及存储介质 |
PCT/CN2021/106675 WO2022052624A1 (zh) | 2020-09-14 | 2021-07-16 | 一种视频数据处理方法、装置、计算机设备及存储介质 |
US17/964,147 US20230039978A1 (en) | 2020-09-14 | 2022-10-12 | Video data processing method and apparatus, computer device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010961575.5A CN112104915B (zh) | 2020-09-14 | 2020-09-14 | 一种视频数据处理方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112104915A CN112104915A (zh) | 2020-12-18 |
CN112104915B true CN112104915B (zh) | 2022-08-26 |
Family
ID=73751552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010961575.5A Active CN112104915B (zh) | 2020-09-14 | 2020-09-14 | 一种视频数据处理方法、装置及存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230039978A1 (zh) |
CN (1) | CN112104915B (zh) |
WO (1) | WO2022052624A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112104915B (zh) * | 2020-09-14 | 2022-08-26 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法、装置及存储介质 |
CN115412769B (zh) * | 2021-05-28 | 2023-12-15 | 福建天泉教育科技有限公司 | 一种提高浏览器视频播放整秒触发精度的方法与终端 |
CN113613049B (zh) * | 2021-07-22 | 2023-04-07 | 山东浪潮超高清视频产业有限公司 | 机顶盒媒体播放器进度条平滑拖动的方法 |
CN113507647B (zh) * | 2021-07-23 | 2024-02-20 | 广州酷狗计算机科技有限公司 | 多媒体数据的播放控制方法、装置、终端及可读存储介质 |
CN114900737B (zh) * | 2022-03-31 | 2023-05-16 | 荣耀终端有限公司 | 视频进度调整方法、电子设备及计算机可读存储介质 |
CN116668790A (zh) * | 2023-05-22 | 2023-08-29 | 北京达佳互联信息技术有限公司 | 视频播放方法、装置、电子设备以及存储介质 |
CN116761040B (zh) * | 2023-08-22 | 2023-10-27 | 超级芯(江苏)智能科技有限公司 | Vr云平台交互方法及交互系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105892843A (zh) * | 2015-12-14 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 视频进度的调整方法、装置及移动终端设备 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7256773B2 (en) * | 2003-06-09 | 2007-08-14 | Microsoft Corporation | Detection of a dwell gesture by examining parameters associated with pen motion |
US9785335B2 (en) * | 2010-12-27 | 2017-10-10 | Sling Media Inc. | Systems and methods for adaptive gesture recognition |
EP2661669A4 (en) * | 2011-01-06 | 2017-07-05 | TiVo Solutions Inc. | Method and apparatus for gesture based controls |
CN103076985B (zh) * | 2013-01-31 | 2016-03-02 | 北京魔力时间科技有限公司 | 基于触屏精确操控和显示视频播放进度装置及使用方法 |
CN103179465A (zh) * | 2013-03-22 | 2013-06-26 | 广东欧珀移动通信有限公司 | 一种视频播放进度控制的方法及移动终端 |
US20150128042A1 (en) * | 2013-11-04 | 2015-05-07 | Microsoft Corporation | Multitasking experiences with interactive picture-in-picture |
GB2544208A (en) * | 2014-06-18 | 2017-05-10 | Google Inc | Methods, systems and media for controlling playback of video using a touchscreen |
WO2016106750A1 (zh) * | 2014-12-31 | 2016-07-07 | 华为技术有限公司 | 一种用于控制多媒体文件播放进度的方法及终端 |
CN105516783A (zh) * | 2015-12-10 | 2016-04-20 | 广东欧珀移动通信有限公司 | 一种多媒体内容播放进度控制方法及用户终端 |
US20170168705A1 (en) * | 2015-12-14 | 2017-06-15 | Le Holdings (Beijing) Co., Ltd. | Method and electronic device for adjusting video progress |
EP3951579A1 (en) * | 2015-12-15 | 2022-02-09 | Huawei Technologies Co., Ltd. | Operation track response method and operation track response apparatus |
CN105898593A (zh) * | 2016-03-31 | 2016-08-24 | 乐视控股(北京)有限公司 | 一种播放进度调节方法和装置 |
CN106095300B (zh) * | 2016-05-27 | 2020-10-16 | 北京小米移动软件有限公司 | 播放进度调整方法及装置 |
CN106412706B (zh) * | 2016-09-28 | 2019-09-27 | 北京小米移动软件有限公司 | 视频播放的控制方法、装置及其设备 |
KR102101070B1 (ko) * | 2017-12-19 | 2020-04-16 | 인텔렉추얼디스커버리 주식회사 | 미디어 컨텐츠의 재생 시점을 제어하는 방법 및 장치 |
CN108399042B (zh) * | 2018-01-31 | 2020-09-01 | 歌尔科技有限公司 | 一种触控识别方法、装置和系统 |
CN108833984A (zh) * | 2018-07-18 | 2018-11-16 | 上海哔哩哔哩科技有限公司 | 视频播放控制方法、系统、智能终端及计算机可读存储介质 |
CN109656416B (zh) * | 2018-12-28 | 2022-04-15 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种基于多媒体数据的控制方法、装置以及相关设备 |
CN112104915B (zh) * | 2020-09-14 | 2022-08-26 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法、装置及存储介质 |
-
2020
- 2020-09-14 CN CN202010961575.5A patent/CN112104915B/zh active Active
-
2021
- 2021-07-16 WO PCT/CN2021/106675 patent/WO2022052624A1/zh active Application Filing
-
2022
- 2022-10-12 US US17/964,147 patent/US20230039978A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105892843A (zh) * | 2015-12-14 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 视频进度的调整方法、装置及移动终端设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112104915A (zh) | 2020-12-18 |
WO2022052624A1 (zh) | 2022-03-17 |
US20230039978A1 (en) | 2023-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112104915B (zh) | 一种视频数据处理方法、装置及存储介质 | |
US11190856B2 (en) | Synchronizing content and metadata | |
KR102577186B1 (ko) | 코스웨어 녹화 및 재생 방법, 장치, 스마트 인터랙티브 태블릿 및 저장 매체 | |
WO2020007013A1 (zh) | 搜索页面交互方法、装置、终端及存储介质 | |
AU2020293224A1 (en) | Dynamic overlay video advertisement insertion | |
WO2018102283A1 (en) | Providing related objects during playback of video data | |
CN109688475B (zh) | 视频播放跳转方法、系统及计算机可读存储介质 | |
KR20140139859A (ko) | 멀티미디어 콘텐츠 검색을 위한 사용자 인터페이스 방법 및 장치 | |
CN109891405B (zh) | 基于用户装置的消费模式来修改视频内容在用户装置上的呈现的方法、系统和介质 | |
CN110691281B (zh) | 视频播放处理方法、终端设备、服务器及存储介质 | |
CN110692251B (zh) | 组合数字视频内容的方法及系统 | |
US20170249970A1 (en) | Creating realtime annotations for video | |
WO2016150273A1 (zh) | 一种视频播放方法、移动终端及系统 | |
CN112464031A (zh) | 交互方法、装置、电子设备以及存储介质 | |
CN110740373A (zh) | 一种音/视频文件的缓冲方法及相关装置 | |
US20170017382A1 (en) | System and method for interaction between touch points on a graphical display | |
CN113556568B (zh) | 一种云应用程序运行方法、系统、装置与存储介质 | |
CN112929725B (zh) | 视频发布方法、视频播放方法、电子设备和存储介质 | |
CN114095793A (zh) | 一种视频播放方法、装置、计算机设备及存储介质 | |
CN113596520A (zh) | 视频的播放控制方法、装置及电子设备 | |
KR20230120668A (ko) | 영상통화 방법 및 장치 | |
CN113568551A (zh) | 图片保存方法及装置 | |
CN108874172B (zh) | 输入方法和装置 | |
US11856245B1 (en) | Smart automatic skip mode | |
CN110909204A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40036253 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |