CN109656416B - 一种基于多媒体数据的控制方法、装置以及相关设备 - Google Patents

一种基于多媒体数据的控制方法、装置以及相关设备 Download PDF

Info

Publication number
CN109656416B
CN109656416B CN201811624659.9A CN201811624659A CN109656416B CN 109656416 B CN109656416 B CN 109656416B CN 201811624659 A CN201811624659 A CN 201811624659A CN 109656416 B CN109656416 B CN 109656416B
Authority
CN
China
Prior art keywords
touch
target
initial
sliding
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811624659.9A
Other languages
English (en)
Other versions
CN109656416A (zh
Inventor
魏亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Music Entertainment Technology Shenzhen Co Ltd
Original Assignee
Tencent Music Entertainment Technology Shenzhen 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 Tencent Music Entertainment Technology Shenzhen Co Ltd filed Critical Tencent Music Entertainment Technology Shenzhen Co Ltd
Priority to CN201811624659.9A priority Critical patent/CN109656416B/zh
Publication of CN109656416A publication Critical patent/CN109656416A/zh
Application granted granted Critical
Publication of CN109656416B publication Critical patent/CN109656416B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明实施例公开了一种基于多媒体数据的控制方法、装置以及相关设备,方法包括:当检测到屏幕触摸行为时,根据屏幕触摸行为获取起始触摸消息,解析起始触摸消息,得到至少一个起始触控点的触摸起始时间戳;选择最小触摸起始时间戳,并创建目标定时器,将最小触摸起始时间戳设置为目标定时器的等待起始时间戳;当目标定时器基于等待起始时间戳获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定目标触控点的目标数量;检测屏幕上的目标滑动轨迹,根据目标数量和目标滑动轨迹生成目标多媒体数据操作指令,并基于目标多媒体数据操作指令对多媒体数据进行控制操作。采用本发明,可以丰富多媒体数据的控制方式。

Description

一种基于多媒体数据的控制方法、装置以及相关设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于多媒体数据的控制方法、装置以及相关设备。
背景技术
移动互联网的迅猛发展使得智能手机、平板电脑等终端设备已经成为人们获取信息的主要方式之一。数据显示,音乐类软件的使用率在所有终端设备的应用软件中排列第四,网民的使用率高达67%,可见音乐类软件作为刚性需求,已成为每一台终端设备中的“必备品”。
现有技术中,对音乐软件中的多媒体数据进行控制的主要方式是利用鼠标、手指或触控笔点击触摸屏页面中的按钮。例如,通过鼠标点击音乐软件页面中“倍速”按钮,可以使得正在播放的多媒体数据倍速播放;通过手指点击音乐软件页面中的“下一首”按钮,或者“上一首”按钮,可以切换歌曲。
上述可知,现有技术中只能通过点击按钮操作,以控制音乐软件中的多媒体数据,导致音乐软件中的多媒体数据控制方式单一。
发明内容
本发明实施例提供一种基于多媒体数据的控制方法、装置以及相关设备,可以丰富多媒体数据的控制方式。
本发明实施例一方面提供了一种基于多媒体数据的控制方法,包括:
当检测到屏幕触摸行为时,根据所述屏幕触摸行为获取起始触摸消息,解析所述起始触摸消息,得到至少一个起始触控点以及与所述至少一个起始触控点对应的触摸起始时间戳;
在与所述至少一个起始触控点对应的触摸起始时间戳中,选择最小触摸起始时间戳,并创建目标定时器,将所述最小触摸起始时间戳设置为所述目标定时器的等待起始时间戳;
当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定所述目标触控点的目标数量;所述等待时长是指在所述至少一个起始触控点对应的触摸时长中的最大触摸时长;
检测所述屏幕上的目标滑动轨迹,根据所述目标触控点的目标数量和所述目标滑动轨迹生成目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
其中,所述当检测到屏幕触摸行为时,根据所述屏幕触摸行为获取起始触摸消息,解析所述起始触摸消息,得到至少一个起始触控点以及与所述至少一个起始触控点对应的触摸起始时间戳,包括:
当检测到所述屏幕触摸行为时,根据所述屏幕触摸行为注册触摸消息窗口,在所述触摸消息窗口中接收所述起始触摸消息;
解析所述起始触摸消息,得到起始触摸输入句柄,根据所述起始触摸输入句柄,获取所述至少一个起始触控点,以及与所述至少一个起始触控点对应的触摸起始时间戳。
其中,所述当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定所述目标触控点的目标数量,包括:
当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到所述时长阈值时,在所述触摸消息窗口中接收第一触摸消息;
解析所述第一触摸消息,得到所述目标数量和第一触摸输入句柄,根据所述第一触摸输入句柄确定与所述目标数量对应的所述目标触控点。
其中,所述检测所述屏幕上的目标滑动轨迹,根据所述目标触控点的目标数量和所述目标滑动轨迹生成目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作,包括:
当所述目标触控点包括至少一个单位触控点时,获取与所述至少一个单位触控点分别对应的初始滑动轨迹,并获取所述目标数量;
从至少一个初始滑动轨迹中提取出具有最大滑动距离的初始滑动轨迹,作为辅助滑动轨迹;
将每个单位触控点分别对应的初始滑动轨迹替换为所述辅助滑动轨迹,将替换后的初始滑动轨迹组合为所述目标滑动轨迹;
在滑动结束且获得所述目标滑动轨迹时,统计实际滑动触控点数量;
若所述实际滑动触控点数量不等于所述目标数量,则将所述实际滑动触控点数量修正为所述目标数量;
在手势指令映射表中,查找与修正后的实际滑动触控点数量以及所述目标滑动轨迹对应的目标操作指令信息,根据所述目标操作指令信息生成所述目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
其中,所述获取与所述至少一个单位触控点分别对应的初始滑动轨迹,包括:
获取每个单位触控点的身份标识;
在所述触摸消息窗口中接收第二触摸消息,解析所述第二触摸消息,得到第二触摸输入句柄;
根据所述第二触摸输入句柄,获取与所述第二触摸消息相关联的触控点的第二滑动轨迹,根据所述每个单位触控点的身份标识,从所述第二滑动轨迹中提取出所述至少一个单位触控点分别对应的初始滑动轨迹。
其中,还包括:
在所述手势指令映射表中,查找与每个操作指令信息分别对应的触控点数量,在查找到的触控点数量中将最大触控点数量确定为数量阈值;
检测所述目标触控点的所述目标数量,若所述目标数量小于或等于所述数量阈值,则执行获取与所述至少一个单位触控点分别对应的初始滑动轨迹的步骤。
其中,还包括:
在解析完所述起始触摸输入句柄、所述第一触摸输入句柄和所述第二触摸输入句柄后,关闭所述触摸消息窗口,并释放与所述起始触摸输入句柄、所述第一触摸输入句柄、所述第二触摸输入句柄、所述起始触摸消息、所述第一触摸消息和所述第二触摸消息相关联的进程内存。
本发明实施例一方面提供了一种基于多媒体数据的控制装置,包括:
创建模块,用于当检测到屏幕触摸行为时,根据所述屏幕触摸行为获取起始触摸消息,解析所述起始触摸消息,得到至少一个起始触控点以及与所述至少一个起始触控点对应的触摸起始时间戳;
设置模块,用于在与所述至少一个起始触控点对应的触摸起始时间戳中,选择最小触摸起始时间戳,并创建目标定时器,将所述最小触摸起始时间戳设置为所述目标定时器的等待起始时间戳;
第一获取模块,用于当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定所述目标触控点的目标数量;所述等待时长是指在所述至少一个起始触控点对应的触摸时长中的最大触摸时长;
第二获取模块,用于检测所述屏幕上的目标滑动轨迹,根据所述目标触控点的目标数量和所述目标滑动轨迹生成目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
其中,所述创建模块,包括:
起始接收单元,用于当检测到所述屏幕触摸行为时,根据所述屏幕触摸行为注册触摸消息窗口,在所述触摸消息窗口中接收所述起始触摸消息;
起始解析单元,用于解析所述起始触摸消息,得到起始触摸输入句柄,根据所述起始触摸输入句柄,获取所述至少一个起始触控点,以及与所述至少一个起始触控点对应的触摸起始时间戳。
其中,所述第一获取模块,包括:
第一接收单元,用于当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到所述时长阈值时,在所述触摸消息窗口中接收第一触摸消息;
第一解析单元,用于解析所述第一触摸消息,得到所述目标数量和第一触摸输入句柄,根据所述第一触摸输入句柄确定与所述目标数量对应的所述目标触控点。
其中,所述第二获取模块,包括:
第一获取单元,用于当所述目标触控点包括至少一个单位触控点时,获取与所述至少一个单位触控点分别对应的初始滑动轨迹;
第二获取单元,用于获取所述目标数量,从至少一个初始滑动轨迹中提取出具有最大滑动距离的初始滑动轨迹,作为辅助滑动轨迹;
替换单元,用于将每个单位触控点分别对应的初始滑动轨迹替换为所述辅助滑动轨迹,将替换后的初始滑动轨迹组合为所述目标滑动轨迹;
统计单元,用于在滑动结束且获得所述目标滑动轨迹时,统计实际滑动触控点数量;
修正单元,用于若所述实际滑动触控点数量不等于所述目标数量,则将所述实际滑动触控点数量修正为所述目标数量;
查找单元,用于在手势指令映射表中,查找与修正后的实际滑动触控点数量以及所述目标滑动轨迹对应的目标操作指令信息,根据所述目标操作指令信息生成所述目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
其中,所述第一获取单元,包括:
获取子单元,用于获取每个单位触控点的身份标识;
接收子单元,用于在所述触摸消息窗口中接收第二触摸消息,解析所述第二触摸消息,得到第二触摸输入句柄;
所述获取子单元,还用于根据所述第二触摸输入句柄,获取与所述第二触摸消息相关联的触控点的第二滑动轨迹,根据所述每个单位触控点的身份标识,从所述第二滑动轨迹中提取出所述至少一个单位触控点分别对应的初始滑动轨迹。
其中,还包括:
查找模块,用于在所述手势指令映射表中,查找与每个操作指令信息分别对应的触控点数量,在查找到的触控点数量中将最大触控点数量确定为数量阈值;
通知模块,用于检测所述目标触控点的所述目标数量,若所述目标数量小于或等于所述数量阈值,则通知第一获取单元执行相关操作。
其中,还包括:
关闭模块,用于在解析完所述起始触摸输入句柄、所述第一触摸输入句柄和所述第二触摸输入句柄后,关闭所述触摸消息窗口,并释放与所述起始触摸输入句柄、所述第一触摸输入句柄、所述第二触摸输入句柄、所述起始触摸消息、所述第一触摸消息和所述第二触摸消息相关联的进程内存。
本发明实施例通过当检测到屏幕触摸行为时,根据屏幕触摸行为获取起始触摸消息,解析起始触摸消息,得到至少一个起始触控点以及至少一个起始触控点的触摸起始时间戳;选择最小触摸起始时间戳,并创建目标定时器,将最小触摸起始时间戳设置为目标定时器的等待起始时间戳;当目标定时器基于等待起始时间戳获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定目标触控点的目标数量;检测屏幕上的目标滑动轨迹,根据目标数量和目标滑动轨迹生成目标多媒体数据操作指令,并基于目标多媒体数据操作指令对多媒体数据进行控制操作。上述可知,通过定时器所指定的时刻触发获取该时刻屏幕中存在的触控点和触控点数量,后续就只需要根据该触控点的轨迹和上述触控点数量生成用于控制多媒体数据的操作指令,可以丰富多媒体数据的控制方式;进一步地,由于固化触控点数量,即使后续由于用户在滑动过程中误操作导致屏幕中的触控点数量发生变化,但仍旧是采用固化的触控点数量生成操作指令,这样可以避免生成错误的操作指令,进而提高多媒体数据控制的准确率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1-图2是本发明实施例提供的一种基于多媒体数据的控制方法的场景示意图;
图3是本发明实施例提供的一种基于多媒体数据的控制方法的流程示意图;
图4是本发明实施例提供的另一种基于多媒体数据的控制方法的流程示意图;
图5是本发明实施例提供的一种基于多媒体数据的控制装置的结构示意图;
图6是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1-图2,是本发明实施例提供的一种基于多媒体数据的控制方法的场景示意图。为了说明本发明的基于多媒体数据的控制方法,下述场景以控制用户终端10a中的音乐app(Application,计算机应用程序)中的多媒体数据为例,进行说明,其中,用户终端可以包括手机、平板电脑、笔记本电脑、掌上电脑、智能音响、移动互联网设备(MID,mobileinternet device)、POS(PointOf Sales,销售点)机、可穿戴设备(例如智能手表、智能手环等)等,且该用户终端可以是运行在Windows10操作系统上。
如图1所示,用户点击用户终端10a中的主界面中的“音乐”图标,打开“音乐”app,并选择歌曲1在该“音乐”app中进行播放。当用户想切换歌曲时,可以通过在屏幕上执行相应的滑动操作以控制多媒体数据。如图1中的用户终端10a中的界面20a所示,当用户的食指接触到屏幕时,用户终端10a的屏幕会产生微电流,进而生成触摸信号,当然该屏幕属于触摸屏(touch screen),是一种可接收触头等输入讯号的感应式液晶显示装置。
如图2所示,用户终端10a接收到该触摸信号后,注册一个触摸消息窗口10b,该触摸消息窗口10b是用于接收系统分发的触摸消息(WM-touch消息),由于触摸消息的贪婪特性,只要在该“音乐”app上产生的所有触摸消息,都要发送至该触摸窗口10b,直至触摸窗口10b被关闭。还需要说明的是,只要屏幕上一直存在触控点(例如,用户的手指),系统就会持续不断地生成触摸消息,进而不断地将触摸消息发送至上述触摸消息窗口10b。如图2所示,注册完毕触摸消息窗口10b后,摸消息窗口10b就可以接收到图1中的界面20a对应的食指触摸屏幕的触摸消息10c,该触摸消息10c也是消息窗口10b中所接收到的第一个触摸消息。用户终端10a对触摸消息10c进行解析,解析后可以得到对应的记录表10f,记录表10f中记录了与触摸消息10c相关联的触控点数量:1,该触控点的id(identification,身份证):001,以及触控点001的触摸起始坐标(x0,y0)、触摸起始时间t0、触摸终止坐标(x1,y1)以及触摸终止时间t1。需要说明的是,解析出来的终止坐标是生成对应触摸消息时触控点的终止坐标,而不一定是触控点滑动操作完成时的终止坐标,根据解析出来的起始坐标和终止坐标就可以标识出该触控点在屏幕中的轨迹。
在确定了触摸消息10c中的触摸起始时间t0后,用户终端10a就可以创建一个定时器10m,并将该定时器10m的计时开始时间戳设置为触控点001的起始时间t0,定时器从起始时间t0开始计时。
如图1中的用户终端10b的界面20b所示,用户的2根手指(拇指和食指)在屏幕中向上滑动,系统持续生成对应的触摸消息,并持续分发至触摸消息窗口10b。当定时器10m的计时时长达到时长阈值时,定时器10m被触发,将此时触摸消息窗口10b所接收到的触摸消息10d提取出来。如图2所示,在触摸消息窗口中可以接收到上述2根手指在屏幕中向上滑动所对应的多个触摸消息,将定时器10m触发那一时刻所接收到的触摸消息10d提取出来。如图2所示,解析触摸消息10d,解析后可以得到对应的记录表10g,记录表10g中记录了与触摸消息10d相关联的触控点数量2(拇指和食指),该触控点id(001和002),以及触控点001的触摸起始坐标(x0,y0)、触摸起始时间t0、触摸终止坐标(x2,y2)以及触摸终止时间t2,以及触控点002的触摸起始坐标(x3,y3)、触摸起始时间t3、触摸终止坐标(x4,y4)以及触摸终止时间t4。可以将触控点数量2和触控点001、触控点002存储在内存中,以作为标准触控点数量,以及标准触控点。
如图1中的用户终端10b的界面20c所示,用户的3根手指(拇指、食指和中指)在屏幕中向上滑动(原来的拇指和食指是继续向上滑动,中指是中途加入开始向上滑动),系统持续生成对应的触摸消息,并分发至触摸消息窗口10b。如图2所示,在触摸消息窗口中可以接收到上述3根手指在屏幕中向上滑动完成时所对应的触摸消息10e。同样地,对触摸消息10e进行解析,解析后可以得到对应的记录表10h,记录表10h中记录了与触摸消息10e相关联的触控点数量3(分别对应拇指、食指和中指),触控点id(001、002和003),以及触控点001的触摸起始坐标(x0,y0)、触摸起始时间t0、触摸终止坐标(x5,y5)以及触摸终止时间t5;触控点002的触摸起始坐标(x3,y3)、触摸起始时间t3、触摸终止坐标(x6,y6)以及触摸终止时间t6,以及触控点003的触摸起始坐标(x7,y7)、触摸起始时间t7、触摸终止坐标(x8,y8)以及触摸终止时间t8。由于存储在内存中的标准触控点数量是2,且标准触控点是身份标识为001和002的触控点,因此只需要关注触控点001和触控点002的轨迹,因此将触控点001和触控点002的详细信息组合为记录表10k,也就是将触控点001的详细信息:(x0,y0,t0);(x5,y5,t5)以及将触控点002的详细信息(x3,y3,t3);(x6,y6,t6)组合为记录表10k,记录表10k中也记录了标准触控点数量2。
后续,根据触控点数量2,以及触控点001的滑动距离和滑动方向(根据记录表10k中所记录触控点001的起始坐标以及触控点001的终止坐标可以确定触控点001的滑动距离和滑动方向)以及触控点002的滑动距离和滑动方向(根据记录表10k中所记录触控点002的起始坐标以及触控点002的终止坐标可以确定触控点002的滑动距离和滑动方向),生成切换歌曲的操作指令,通知用户终端10a中的逻辑层根据该切换歌曲的操作指令切换歌曲。如图2中的界面20d所示,在“音乐”app中根据该切换歌曲的操作指令,就由当前播放的歌曲1切换至播放歌曲2。
在一段时间内用户终端均检测到屏幕中没有触控点,也就是触摸消息窗口10b不在接收到触摸消息后,可以将触摸消息窗口关闭,以节约存储空间以及防止信息泄露,同样地,对触摸消息窗口10b所接收到的所有触摸消息而言,都需要调用DefWindowProc函数以释放与此上述所有触摸消息关联的进程内存,避免“音乐”app对应的应用程序内存泄漏。
通过定时器所指定的时刻触发获取该时刻屏幕中存在的触控点和触控点数量,后续就只需要根据上述获取到的触控点的轨迹和上述触控点数量生成用于控制多媒体数据的操作指令,可以丰富多媒体数据的控制方式;进一步地,由于固化触控点和触控点数量,即使后续由于用户在滑动过程中误操作导致屏幕中的触控点数量发生变化,但仍旧是采用固化的触控点数量和固化的触控点的滑动轨迹生成操作指令,这样可以避免生成错误的操作指令,进而提高多媒体数据控制的准确率。
其中,创建定时器、确定触控点数量的具体过程可以参见以下图3至图4所对应的实施例。
进一步地,请参见图3,是本发明实施例提供的一种基于多媒体数据的控制方法的流程示意图。如图3所示,所述基于多媒体数据的控制方法可以包括:
步骤S101,当检测到屏幕触摸行为时,根据所述屏幕触摸行为获取起始触摸消息,解析所述起始触摸消息,得到至少一个起始触控点以及与所述至少一个起始触控点对应的触摸起始时间戳。
具体的,当用户利用触控笔、手指等信号输出接触头接触用户终端(如上述图1所对应实施例中的用户终端10a)中的屏幕时,屏幕上会产生微电流,进而用户终端就会检测到在屏幕中发生了屏幕触摸行为,同时触控点(上述信号输出接触头、手指等接触屏幕时可以称为触控点)在屏幕上的任何触摸行为(包括滑动行为)都会生成触摸消息。当用户终端检测到屏幕触摸行为时,根据该屏幕触摸行为调用注册函数RegisterTouchWindow,以注册触摸消息窗口(如上述图2所对应实施例中的触摸消息窗口10b),只有注册了触摸消息窗口,才能接收到系统分发的触摸消息,进而才能根据触摸消息生成多媒体数据的操作指令。还需说明的是,触摸消息窗口都是具有贪婪特性的,即是在触摸消息窗口没有被关闭以前,在触摸消息窗口所在的进程中生成的所有触摸消息都是由该触摸消息窗口接收,且若用户的手指或者触控笔一直触摸屏幕或者在屏幕上滑动,系统会持续地生成触摸消息,当然触摸消息窗口也就持续的接收该触摸消息。在注册好的触摸消息窗口中所接收到的第一个触摸消息称为起始触摸消息(如上述图2所对应实施例中的触摸消息10c),该起始触摸消息也可以理解为信号输出接触头首次接触屏幕时所生成的触摸消息。
解析该起始触摸消息,可以得到两个参数,一个参数是与起始触摸消息相关联的触控点数量(称为起始触控点数量,此时的触控点称为起始触控点,起始触控点数量可以是一个,也可以是多个);另一个参数是触控输入句柄(称为起始触控输入句柄)。对起始触控输入句柄,调用GetTouchInputInfo(获取触摸输入)函数进行解析,可以得到每个起始触控点的详细信息,例如,起始触控点的id,起始触控点在屏幕上的起始坐标和终止坐标,起始触控点的触摸起始时间戳,和触摸终止时间戳等(此处的终止坐标和触摸终止时间戳是生成对应触摸消息时的,触控点所在的坐标和所处于的时间戳)。值得注意的是,触控点在屏幕上滑动时,会持续生成触摸消息,且会为首次接触屏幕的触控点分配身份标识(id),在后续触控点滑动过程中,只要触控点不离开屏幕,每个触控点id都不会改变,当然分配的id具有唯一性和排他性。也就是说,通过解析起始触摸消息,可以得到至少一个起始触控点,以及与每个起始触控点分别对应的触摸起始时间戳。
步骤S102,在与所述至少一个起始触控点对应的触摸起始时间戳中,选择最小触摸起始时间戳,并创建目标定时器,将所述最小触摸起始时间戳设置为所述目标定时器的等待起始时间戳。
具体的,在所有起始触控点的触摸起始时间戳中提取最小触摸起始时间戳,该最小触摸时间戳是第一个触控点(本次屏幕触摸行为中,第一个触摸屏幕的触控点称为第一触控点)触摸屏幕的时间戳,当然若解析出起始触摸消息中只有一个起始触控点,该起始触控点的触摸起始时间戳就是最小触摸起始时间戳。
在确定了最小触摸起始时间戳后,就可以创建一个定时器,该定时器可以称为目标定时器(如上述图2所对应实施例中的定时器10m),将上述最小触摸起始时间戳设置为目标定时的等待起始时间戳。换句换说,只要触控点触摸了屏幕,就会生成触摸信号和触摸消息,进而创建一个定时器,该定时器的等待起始时间(或者说的计时开始时间)就是第一个触控点触摸屏幕的时间。
例如,若解析起始触摸消息得到:触控点001(001为该触控点的身份标识)的触摸起始时间戳为8点01毫秒;触控点002(002为该触控点的身份标识)的触摸起始时间戳为8点03毫秒。因此最小触摸起始时间戳就等于8点01毫秒,创建了目标定时器后,将目标定时器的等待起始时间戳(计时开始时间戳)设置为8点01毫秒。
步骤S103,当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定所述目标触控点的目标数量;所述等待时长是指在所述至少一个起始触控点对应的触摸时长中的最大触摸时长。
具体的,当定时器从等待起始时间戳开始计时,等待时长达到时长阈值时,定时器就会被触发,将定时器被触发时,触摸消息窗口接收的触摸消息作为第一触摸消息(如上述图2所对应实施例中的触摸消息10d),时长阈值时提前设置好的。仍旧沿用上述举例,目标定时器的等待起始时间戳(计时开始时间戳)设置为8点01毫秒,若时长阈值为50毫秒,也就是说,在8点51毫秒这个时间点,定时器被触发,此时触摸消息窗口所接收到触摸消息就是第一触摸消息,其中第一触摸消息可以是触控点触摸屏幕或者是滑动屏幕时所生成的消息。可以知道,定时器的等待时长就是所有起始触控点对应的触摸时长中,具有的最大触摸时长。
同样地,解析第一触摸消息,可以得到与第一触摸消息相关联的触控点数量(称为目标数量,此时的触控点称为目标触控点),和触控输入句柄(称为第一触控输入句柄)。此处的目标触控点的目标数量可能比起始触控点数量多,也可能比起始触控点数量少,或者两者的数量相同,若一个触控点一直存在于屏幕上而没有离开,那么该触控点对应的身份标识不会发生改变。
同样对第一触控输入句柄,调用GetTouchInputInfo函数可以得到目标触控点的详细信息(例如,目标触控点的id,目标触控点在屏幕上的起始坐标和终止坐标,目标触控点的触摸起始时间戳,和触摸终止时间戳等),若有多个目标触控点,那么对应地可以得到每个目标触控点的详细信息。由于详细信息中包括每个目标触控点的id,因此通过第一触摸消息,可以确定每个目标触控点的id。换句话说,在目标定时器被触发时(即目标定时器基于等待起始时间戳所获得的等待时长达到时长阈值时),通过第一触摸消息,可以得到定时器被触发那一时刻,屏幕中所存在的携带身份标识的目标触控点,和该目标触控点对应的数量(称为目标数量)。由于后续是将目标数量作为标准数量,以及将目标触控点作为标准触控点,因此可以将目标数量和目标触控点的身份标识存储在存储空间中(例如,存储在内存中),不再作任何更改。
步骤S104,检测所述屏幕上的目标滑动轨迹,根据所述目标触控点的目标数量和所述目标滑动轨迹生成目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
具体的,触控点在滑动过程中,持续地生成触摸消息,触摸消息窗口对应地持续接收该触摸消息,在确定了第一触摸消息后,后续从触摸消息窗口所接收到的触摸消息都称为第二触摸消息。由于只处理目标触控点的滑动轨迹,因此只需从第二触摸消息相关联的触控点所对应的所有滑动轨迹中,提取出目标触控点的滑动轨迹,对那些在滑动过程中新增加的非目标触控点的滑动轨迹可以不作任何处理。
同样地解析第二触控消息,得到触摸输入句柄(称为第二触摸输入句柄)。对第二触控输入句柄,调用GetTouchInputInfo函数可以得到与第二触摸消息相关联的触控点的详细信息(例如,触控点的id,触控点在屏幕上的起始坐标和终止坐标,触控点的触摸起始时间戳,和触摸终止时间戳等)。由于触控点的详细信息包括了起始坐标(起始横坐标和起始纵坐标),和终止坐标(终止横坐标和终止纵坐标),因此可以根据第二触控消息相关联的触控点的详细信息,可以得到多个滑动轨迹(称为第二滑动轨迹),其中滑动轨迹可以包括滑动方向和滑动距离。当目标触控点包括多个单位触控点时,获取每个单位触控点的身份标识。根据每个单位触控点的身份标识,从第二滑动轨迹中提取出属于每个单位触控点的滑动轨迹,作为初始滑动轨迹。可以知道,每个单位触控点都存在与之对应的初始滑动轨迹。在确定了目标触控点的目标数量后,若用户在后续滑动过程中,增加了屏幕上触控点的数量(例如,由两指滑动变为三指滑动),那么第二滑动轨迹的数量是要大于初始滑动轨迹的数量,但后续只需要对单位触控点对应的初始滑动轨迹进行处理,在滑动过程中新增的触控点的轨迹,不需要作任何处理。
具有同一个身份标识的触控点在执行滑动过程中,可以对应多个触摸消息,那么在解析出来的触控点的多个详细信息中,不仅触控点的id不变,触控点在屏幕上的起始坐标,触控点的触摸起始时间戳都不会发生改变,变化的只是触控点在屏幕上的终止坐标,和触摸终止时间戳,也可以理解为,详细信息中的触控点的终止坐标只是生成对应的触摸消息时,该触控点所在的坐标,而不一定是触控点最后停止滑动时的坐标。举例来说,触控点004(004是该触控点的身份标识)在屏幕上向右滑动,并对应生成了3个触摸消息中,在解析了3个触摸消息可以得到触控点004的3个详细信息(详细包括触控点的起始坐标,触摸起始时间戳;触控点的终止坐标,触摸终止时间戳)分别为:(1,1,t0;2,1,t1)、(1,1,t0;3,1,t2)和(1,1,t0;4,1,t3),其中“(1,1,t0;2,1,t1)”中分号前的(1,1,t0)分别表示触控点004的起始横坐标、起始纵坐标,触摸起始时间戳;对应的分号后的(2,1,t1)分别表示触控点004的终止横坐标、终止纵坐标,触摸终止时间戳。那么从整体上看来,与触控点004对应的滑动轨迹就应该是从起始坐标(1,1)滑动至终止坐标(4,1),且从时间戳t1滑动至时间戳t3的轨迹。
确定了每个单位触控点分别对应的初始滑动轨迹后,从所有初始滑动轨迹中,提取出具有最大滑动距离的初始滑动轨迹,作为辅助滑动轨迹。将每个单位触控点分别对应的初始滑动轨迹替换为辅助滑动轨迹,将替换后的所有初始滑动轨迹组合为目标滑动轨迹。可以知道,替换后的每个单位触控点的初始滑动轨迹都是相同的,且与辅助滑动轨迹也都是一样的。就相当于,在滑动过程中,即使单位触控点的数量减少了(例如,由3指滑动变为2指滑动),也可以将滑动过程中,减少的单位触控点的滑动轨迹进行弥补,在后续生成目标多媒体数据操作指令时,就相当于所有的单位触控点都一直在滑动,不存在滑动过程中,单位触控点减少的情况。
根据目标滑动轨迹以及定时器被触发时确定的目标触控点的目标数量,生成目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。例如,在“音乐”app中生成切换歌曲、调高音量、设置歌曲倍速播放的操作指令等,用户终端根据该操作执行切换歌曲,调高歌曲的播放音量,设置歌曲倍速播放等。
可选的,在解析完起始触摸输入句柄、第一触摸输入句柄和第二触摸输入句柄后,根据UnRegisterTouchWindow函数关闭触摸消息窗口,以节约存储资源,同时因为触摸消息窗口具有贪婪特性,如果不关闭该触摸窗口,该触摸消息窗口所在进程中的所有触摸消息都会发送至该触摸消息窗口,就会造成混淆。同时,还需要利用函数CloseTouchInputHandle释放与起始触摸输入句柄、第一触摸输入句柄、第二触摸输入句柄相关联的进程内存,以保证应用程序不会内存泄漏,提高其信息安全性;同时,还利用函数DefWindowProc释放与起始触摸消息、第一触摸消息和第二触摸消息相关联的进程内存,释放了进程内存的触摸消息后,消息中的触摸消息句柄不在有效,也就是说,释放与触摸消息相关联的进程内存是为了进一步地保证与消息中的触摸输入句柄关联的进程内存被释放,其中进程内存是触摸输入句柄或者触摸消息所在进程对应的内存空间。
上述可知,通过定时器所指定的时刻触发获取该时刻屏幕中存在的触控点和触控点数量,后续就只需要根据上述获取到的触控点的轨迹和上述触控点数量生成用于控制多媒体数据的操作指令,可以丰富多媒体数据的控制方式;进一步地,由于固化触控点和触控点数量,即使后续由于用户在滑动过程中误操作导致屏幕中的触控点数量发生变化,但仍旧是采用固化的触控点数量和固化的触控点的滑动轨迹生成操作指令,这样可以避免生成错误的操作指令,进而提高多媒体数据控制的准确率。
请参见图4,是本发明实施例提供的一种生成多媒体数据操作指令的的流程示意图。如图4所示,生成多媒体数据操作指令的具体过程包括如下步骤S201-步骤S205,且步骤S201-步骤S205为图3所对应实施例中步骤S104的一个具体实施例:
步骤S201,当所述目标触控点包括至少一个单位触控点时,获取与所述至少一个单位触控点分别对应的初始滑动轨迹,并获取所述目标数量。
具体的,当目标触控点包括多个单位触控点时,通过解析第二触摸消息,可以得到与每个单位触控点分别对应的初始滑动轨迹(确定初始滑动轨迹的具体过程可以参见上述图所对应实施例中步骤S104),并获取目标触控点的目标数量。
可选的,在手势指令映射表中,包括多个与触控点数量和滑动轨迹对应的操作指令信息,该操作指令信息是用于生成多媒体数据操作指令,多媒体数据操作指令是用于对多媒体数据进行控制操作。在手势指令映射表中,查找与每个操作指令信息分别对应的触控点数量,在查找到的触控点数量中,将最大触控点数量确定为数量阈值。检测目标触控点的目标数量,若目标数量小于或等于该数量阈值,则可以执行后续检测目标滑动轨迹,进而生成目标多媒体操作指令等步骤。若目标数量大于数量阈值,说明终端中不存在与该目标数量相关的操作指令信息,因此终端可以停止执行后续检测目标滑动轨迹,以及停止生成目标多媒体操作指令等步骤。
步骤S202,从至少一个初始滑动轨迹中提取出具有最大滑动距离的初始滑动轨迹,作为辅助滑动轨迹。
具体的,从所有的初始滑动轨迹中,提取出具有最大滑动距离的初始滑动轨迹,作为辅助滑动轨迹。
步骤S203,将每个单位触控点分别对应的初始滑动轨迹替换为所述辅助滑动轨迹,将替换后的初始滑动轨迹组合为所述目标滑动轨迹。
具体的,将每个单位触控点分别对应的初始滑动轨迹替换为辅助滑动轨迹,将替换后的所有初始滑动轨迹组合为目标滑动轨迹。可以知道,替换后的每个单位触控点的初始滑动轨迹都是相同的,且与辅助滑动轨迹也都是一样的。
举例来说,目标触控点的目标数量等于3,分别对应:目标触控点001、目标触控点002和目标触控点003,若起始上述3个触控点都朝着水平向上滑动,滑动过程中,由于误操作目标触控点003离开屏幕,目标触控点001和目标触控点002继续朝着水平向上滑动,直至滑动操作完毕。因此,根据解析的第二触摸消息可以得到,目标触控点001的初始滑动轨迹和目标触控点002的初始滑动轨迹是相同的,但目标触控点3的初始滑动轨迹的要比目标触控点001(或者目标触控点2)的初始滑动轨迹短。因此,可以将目标触控点3的初始滑动轨迹替换为目标触控点1(或者目标触控点2)的初始滑动轨迹,将3条替换后的、相同的初始滑动轨迹组合为目标滑动轨迹。后续就根据该目标滑动轨迹和目标数量3生成对应的目标多媒体数据操作指令。
步骤S204,在滑动结束且获得所述目标滑动轨迹时,统计实际滑动触控点数量,若所述实际滑动触控点数量不等于所述目标数量,则将所述实际滑动触控点数量修正为所述目标数量。
具体的,当滑动结束且获取到目标滑动轨迹时,获取实际滑动触控点数量,实际滑动触控点数量可以是,滑动结束时屏幕中中的触控点的数量;也可以是整个滑动过程中,在屏幕中的触摸时长达到时长阈值的触控点的数量;还可以是整个滑动过程中,在所有触控点的触摸时长中具有最大触摸时长的触控点的数量。若统计到的实际滑动触控点数量不等于上述在存储空间中保存的目标数量(即是目标定时器被触发时,确定的目标触控点的数量),则将统计到的实际滑动触控点数量修正为上述目标数量。
步骤S205,在手势指令映射表中,查找与修正后的实际滑动触控点数量以及所述目标滑动轨迹对应的目标操作指令信息,根据所述目标操作指令信息生成所述目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
具体的,在手势指令映射表中,查找与修正后的实际滑动触控点数量以及目标滑动轨迹对应的操作指令信息,称为目标操作指令信息。手势指令映射表中包括多个与触控点数量和滑动轨迹对应的操作指令信息。用户终端根据上述目标操作指令信息生成目标多媒体数据操作指令,并基于目标多媒体数据操作指令对多媒体数据进行控制操作。目标多媒体数据操作指令可以是:歌曲/视频快进指令、歌曲/视频快退指令、歌曲/视频音量调高指令、歌曲/视频音量调低指令等。由于是采用目标触控点对应的目标滑动轨迹和目标数量,作为生成目标多媒体数据操作指令的条件,即使在滑动过程中由于用户的误操作新增了触控点或者减少了目标触控点,也不会影响目标多媒体数据操作指令的生成。
上述可知,通过定时器所指定的时刻触发获取该时刻屏幕中存在的触控点和触控点数量,后续就只需要根据上述获取到的触控点的轨迹和上述触控点数量生成用于控制多媒体数据的操作指令,可以丰富多媒体数据的控制方式;进一步地,由于固化触控点和触控点数量,即使后续由于用户在滑动过程中误操作导致屏幕中的触控点数量发生变化,但仍旧是采用固化的触控点数量和固化的触控点的滑动轨迹生成操作指令,这样可以避免生成错误的操作指令,进而提高多媒体数据控制的准确率。
进一步的,请参见图5,是本发明实施例提供的一种基于多媒体数据的控制装置的结构示意图。如图5所示,基于多媒体数据的控制装置1可以包括:创建模块11、设置模块12、第一获取模块13、第二获取模块14。
创建模块11,用于当检测到屏幕触摸行为时,根据所述屏幕触摸行为获取起始触摸消息,解析所述起始触摸消息,得到至少一个起始触控点以及与所述至少一个起始触控点对应的触摸起始时间戳;
设置模块12,用于在与所述至少一个起始触控点对应的触摸起始时间戳中,选择最小触摸起始时间戳,并创建目标定时器,将所述最小触摸起始时间戳设置为所述目标定时器的等待起始时间戳;
第一获取模块13,用于当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定所述目标触控点的目标数量;所述等待时长是指在所述至少一个起始触控点对应的触摸时长中的最大触摸时长;
第二获取模块14,用于检测所述屏幕上的目标滑动轨迹,根据所述目标触控点的目标数量和所述目标滑动轨迹生成目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
其中,创建模块11、设置模块12、第一获取模块13、第二获取模块14的具体功能实现方式可以参见上述图3对应实施例中的步骤S101-步骤S104,这里不再进行赘述。
请参见图5,创建模块11可以包括:起始接收单元111、起始解析单元112。
起始接收单元111,用于当检测到所述屏幕触摸行为时,根据所述屏幕触摸行为注册触摸消息窗口,在所述触摸消息窗口中接收所述起始触摸消息;
起始解析单元112,用于解析所述起始触摸消息,得到起始触摸输入句柄,根据所述起始触摸输入句柄,获取所述至少一个起始触控点,以及与所述至少一个起始触控点对应的触摸起始时间戳。
其中,起始接收单元111、起始解析单元112的具体功能实现方式可以参见上述图3对应实施例中的步骤S101,这里不再进行赘述。
请参见图5,第一获取模块13可以包括:第一接收单元131、第一解析单元132。
第一接收单元131,用于当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到所述时长阈值时,在所述触摸消息窗口中接收第一触摸消息;
第一解析单元132,用于解析所述第一触摸消息,得到所述目标数量和第一触摸输入句柄,根据所述第一触摸输入句柄确定与所述目标数量对应的所述目标触控点132。
其中,第一接收单元131、第一解析单元132的具体功能实现方式可以参见上述图3对应实施例中的步骤S103,这里不再进行赘述。
请参见图5,第二获取模块14可以包括:第一获取单元141、第二获取单元142、替换单元143、统计单元144、修正单元145、查找单元146。
第一获取单元141,用于当所述目标触控点包括至少一个单位触控点时,获取与所述至少一个单位触控点分别对应的初始滑动轨迹;
第二获取单元142,用于获取所述目标数量,从至少一个初始滑动轨迹中提取出具有最大滑动距离的初始滑动轨迹,作为辅助滑动轨迹;
替换单元143,用于将每个单位触控点分别对应的初始滑动轨迹替换为所述辅助滑动轨迹,将替换后的初始滑动轨迹组合为所述目标滑动轨迹;
统计单元144,用于在滑动结束且获得所述目标滑动轨迹时,统计实际滑动触控点数量;
修正单元145,用于若所述实际滑动触控点数量不等于所述目标数量,则将所述实际滑动触控点数量修正为所述目标数量;
查找单元146,用于在手势指令映射表中,查找与修正后的实际滑动触控点数量以及所述目标滑动轨迹对应的目标操作指令信息,根据所述目标操作指令信息生成所述目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
其中,第一获取单元141、第二获取单元142、替换单元143、统计单元144、修正单元145、查找单元146的具体功能实现方式可以参见上述图2对应实施例中的步骤S201-步骤S205,这里不再进行赘述。
请参见图5,第一获取单元141可以包括:获取子单元1411、接收子单元1412。
获取子单元1411,用于获取每个单位触控点的身份标识;
接收子单元1412,用于在所述触摸消息窗口中接收第二触摸消息,解析所述第二触摸消息,得到第二触摸输入句柄;
所述获取子单元1411,还用于根据所述第二触摸输入句柄,获取与所述第二触摸消息相关联的触控点的第二滑动轨迹,根据所述每个单位触控点的身份标识,从所述第二滑动轨迹中提取出所述至少一个单位触控点分别对应的初始滑动轨迹。
其中,获取子单元1411、接收子单元1412的具体功能实现方式可以参见上述图4对应实施例中的步骤S201,这里不再进行赘述。
请参见图5,基于多媒体数据的控制装置1可以包括:创建模块11、设置模块12、第一获取模块13、第二获取模块14,还可以包括:查找模块15、通知模块16。
查找模块15,用于在所述手势指令映射表中,查找与每个操作指令信息分别对应的触控点数量,在查找到的触控点数量中将最大触控点数量确定为数量阈值;
通知模块16,用于检测所述目标触控点的所述目标数量,若所述目标数量小于或等于所述数量阈值,则通知第一获取单元执行相关操作。
其中,查找模块15、通知模块16的具体功能实现方式可以参见上述图4对应实施例中的步骤S201,这里不再进行赘述。
请参见图5,基于多媒体数据的控制装置1可以包括:创建模块11、设置模块12、第一获取模块13、第二获取模块14、查找模块15、通知模块16;还可以包括:关闭模块17。
关闭模块17,用于在解析完所述起始触摸输入句柄、所述第一触摸输入句柄和所述第二触摸输入句柄后,关闭所述触摸消息窗口,并释放与所述起始触摸输入句柄、所述第一触摸输入句柄、所述第二触摸输入句柄、所述起始触摸消息、所述第一触摸消息和所述第二触摸消息相关联的进程内存。
其中,关闭模块17的具体功能实现方式可以参见上述图3对应实施例中的步骤S104,这里不再进行赘述。
上述可知,通过定时器所指定的时刻触发获取该时刻屏幕中存在的触控点和触控点数量,后续就只需要根据上述获取到的触控点的轨迹和上述触控点数量生成用于控制多媒体数据的操作指令,可以丰富多媒体数据的控制方式;进一步地,由于固化触控点和触控点数量,即使后续由于用户在滑动过程中误操作导致屏幕中的触控点数量发生变化,但仍旧是采用固化的触控点数量和固化的触控点的滑动轨迹生成操作指令,这样可以避免生成错误的操作指令,进而提高多媒体数据控制的准确率。
进一步地,请参见图6,是本发明实施例提供的一种电子设备的结构示意图。如图6所示,上述图6中的基于多媒体数据的控制装置1可以应用于所述电子设备1000,所述电子设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,所述电子设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图6所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图6所示的电子设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
当检测到屏幕触摸行为时,根据所述屏幕触摸行为获取起始触摸消息,解析所述起始触摸消息,得到至少一个起始触控点以及与所述至少一个起始触控点对应的触摸起始时间戳;
在与所述至少一个起始触控点对应的触摸起始时间戳中,选择最小触摸起始时间戳,并创建目标定时器,将所述最小触摸起始时间戳设置为所述目标定时器的等待起始时间戳;
当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定所述目标触控点的目标数量;所述等待时长是指在所述至少一个起始触控点对应的触摸时长中的最大触摸时长;
检测所述屏幕上的目标滑动轨迹,根据所述目标触控点的目标数量和所述目标滑动轨迹生成目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
上述可知,通过定时器所指定的时刻触发获取该时刻屏幕中存在的触控点和触控点数量,后续就只需要根据上述获取到的触控点的轨迹和上述触控点数量生成用于控制多媒体数据的操作指令,可以丰富多媒体数据的控制方式;进一步地,由于固化触控点和触控点数量,即使后续由于用户在滑动过程中误操作导致屏幕中的触控点数量发生变化,但仍旧是采用固化的触控点数量和固化的触控点的滑动轨迹生成操作指令,这样可以避免生成错误的操作指令,进而提高多媒体数据控制的准确率。
应当理解,本发明实施例中所描述的电子设备1000可执行前文图3到图4所对应实施例中对所述基于多媒体数据的控制方法的描述,也可执行前文图5所对应实施例中对所述基于多媒体数据的控制装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且所述计算机存储介质中存储有前文提及的基于多媒体数据的控制装置1所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图3到图4所对应实施例中对所述基于多媒体数据的控制方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (16)

1.一种基于多媒体数据的控制方法,其特征在于,包括:
当检测到屏幕触摸行为时,根据所述屏幕触摸行为获取起始触摸消息,解析所述起始触摸消息,得到至少一个起始触控点以及与所述至少一个起始触控点对应的触摸起始时间戳;
在与所述至少一个起始触控点对应的触摸起始时间戳中,选择最小触摸起始时间戳,并创建目标定时器,将所述最小触摸起始时间戳设置为所述目标定时器的等待起始时间戳;
当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定所述目标触控点的目标数量;所述等待时长是指在所述至少一个起始触控点对应的触摸时长中的最大触摸时长;
检测所述屏幕上的目标滑动轨迹,根据所述目标触控点的目标数量和所述目标滑动轨迹生成目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作;
其中,检测所述屏幕上的目标滑动轨迹,包括:当所述目标触控点包括至少一个单位触控点时,获取与所述至少一个单位触控点分别对应的初始滑动轨迹,从至少一个初始滑动轨迹中提取出具有最大滑动距离的初始滑动轨迹,作为辅助滑动轨迹,将每个单位触控点分别对应的初始滑动轨迹替换为所述辅助滑动轨迹,将替换后的初始滑动轨迹组合作为所述目标滑动轨迹。
2.根据权利要求1所述的方法,其特征在于,所述当检测到屏幕触摸行为时,根据所述屏幕触摸行为获取起始触摸消息,解析所述起始触摸消息,得到至少一个起始触控点以及与所述至少一个起始触控点对应的触摸起始时间戳,包括:
当检测到所述屏幕触摸行为时,根据所述屏幕触摸行为注册触摸消息窗口,在所述触摸消息窗口中接收所述起始触摸消息;
解析所述起始触摸消息,得到起始触摸输入句柄,根据所述起始触摸输入句柄,获取所述至少一个起始触控点,以及与所述至少一个起始触控点对应的触摸起始时间戳。
3.根据权利要求2所述的方法,其特征在于,所述当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定所述目标触控点的目标数量,包括:
当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到所述时长阈值时,在所述触摸消息窗口中接收第一触摸消息;
解析所述第一触摸消息,得到所述目标数量和第一触摸输入句柄,根据所述第一触摸输入句柄确定与所述目标数量对应的所述目标触控点。
4.根据权利要求2所述的方法,其特征在于,所述根据所述目标触控点的目标数量和所述目标滑动轨迹生成目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作,包括:
获取所述目标数量;
在滑动结束且获得所述目标滑动轨迹时,统计实际滑动触控点数量;
若所述实际滑动触控点数量不等于所述目标数量,则将所述实际滑动触控点数量修正为所述目标数量;
在手势指令映射表中,查找与修正后的实际滑动触控点数量以及所述目标滑动轨迹对应的目标操作指令信息,根据所述目标操作指令信息生成所述目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
5.根据权利要求4所述的方法,其特征在于,所述获取与所述至少一个单位触控点分别对应的初始滑动轨迹,包括:
获取每个单位触控点的身份标识;
在所述触摸消息窗口中接收第二触摸消息,解析所述第二触摸消息,得到第二触摸输入句柄;
根据所述第二触摸输入句柄,获取与所述第二触摸消息相关联的触控点的第二滑动轨迹,根据所述每个单位触控点的身份标识,从所述第二滑动轨迹中提取出所述至少一个单位触控点分别对应的初始滑动轨迹。
6.根据权利要求4所述的方法,其特征在于,还包括:
在所述手势指令映射表中,查找与每个操作指令信息分别对应的触控点数量,在查找到的触控点数量中将最大触控点数量确定为数量阈值;
检测所述目标触控点的所述目标数量,若所述目标数量小于或等于所述数量阈值,则执行获取与所述至少一个单位触控点分别对应的初始滑动轨迹的步骤。
7.根据权利要求2-6中任一项所述的方法,其特征在于,还包括:
在解析完所述起始触摸输入句柄、第一触摸输入句柄和第二触摸输入句柄后,关闭所述触摸消息窗口,并释放与所述起始触摸输入句柄、所述第一触摸输入句柄、所述第二触摸输入句柄、所述起始触摸消息、第一触摸消息和第二触摸消息相关联的进程内存。
8.一种基于多媒体数据的控制装置,其特征在于,包括:
创建模块,用于当检测到屏幕触摸行为时,根据所述屏幕触摸行为获取起始触摸消息,解析所述起始触摸消息,得到至少一个起始触控点以及与所述至少一个起始触控点对应的触摸起始时间戳;
设置模块,用于在与所述至少一个起始触控点对应的触摸起始时间戳中,选择最小触摸起始时间戳,并创建目标定时器,将所述最小触摸起始时间戳设置为所述目标定时器的等待起始时间戳;
第一获取模块,用于当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到时长阈值时,获取屏幕中的目标触控点,并确定所述目标触控点的目标数量;所述等待时长是指在所述至少一个起始触控点对应的触摸时长中的最大触摸时长;
第二获取模块,用于检测所述屏幕上的目标滑动轨迹,根据所述目标触控点的目标数量和所述目标滑动轨迹生成目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作;
所述第二获取模块,包括:第一获取单元,用于当所述目标触控点包括至少一个单位触控点时,获取与所述至少一个单位触控点分别对应的初始滑动轨迹;
第二获取单元,用于从至少一个初始滑动轨迹中提取出具有最大滑动距离的初始滑动轨迹,作为辅助滑动轨迹;
替换单元,用于将每个单位触控点分别对应的初始滑动轨迹替换为所述辅助滑动轨迹,将替换后的初始滑动轨迹组合为所述目标滑动轨迹。
9.根据权利要求8所述的装置,其特征在于,所述创建模块,包括:
起始接收单元,用于当检测到所述屏幕触摸行为时,根据所述屏幕触摸行为注册触摸消息窗口,在所述触摸消息窗口中接收所述起始触摸消息;
起始解析单元,用于解析所述起始触摸消息,得到起始触摸输入句柄,根据所述起始触摸输入句柄,获取所述至少一个起始触控点,以及与所述至少一个起始触控点对应的触摸起始时间戳。
10.根据权利要求9所述的装置,其特征在于,所述第一获取模块,包括:
第一接收单元,用于当所述目标定时器基于所述等待起始时间戳所获得的等待时长达到所述时长阈值时,在所述触摸消息窗口中接收第一触摸消息;
第一解析单元,用于解析所述第一触摸消息,得到所述目标数量和第一触摸输入句柄,根据所述第一触摸输入句柄确定与所述目标数量对应的所述目标触控点。
11.根据权利要求9所述的装置,其特征在于,所述第二获取模块,还包括:
所述第二获取单元,还用于获取所述目标数量;
替换单元,用于将每个单位触控点分别对应的初始滑动轨迹替换为所述辅助滑动轨迹,将替换后的初始滑动轨迹组合为所述目标滑动轨迹;
统计单元,用于在滑动结束且获得所述目标滑动轨迹时,统计实际滑动触控点数量;
修正单元,用于若所述实际滑动触控点数量不等于所述目标数量,则将所述实际滑动触控点数量修正为所述目标数量;
查找单元,用于在手势指令映射表中,查找与修正后的实际滑动触控点数量以及所述目标滑动轨迹对应的目标操作指令信息,根据所述目标操作指令信息生成所述目标多媒体数据操作指令,并基于所述目标多媒体数据操作指令对多媒体数据进行控制操作。
12.根据权利要求9所述的装置,其特征在于,所述第一获取单元,包括:
获取子单元,用于获取每个单位触控点的身份标识;
接收子单元,用于在所述触摸消息窗口中接收第二触摸消息,解析所述第二触摸消息,得到第二触摸输入句柄;
所述获取子单元,还用于根据所述第二触摸输入句柄,获取与所述第二触摸消息相关联的触控点的第二滑动轨迹,根据所述每个单位触控点的身份标识,从所述第二滑动轨迹中提取出所述至少一个单位触控点分别对应的初始滑动轨迹。
13.根据权利要求11所述的装置,其特征在于,还包括:
查找模块,用于在所述手势指令映射表中,查找与每个操作指令信息分别对应的触控点数量,在查找到的触控点数量中将最大触控点数量确定为数量阈值;
通知模块,用于检测所述目标触控点的所述目标数量,若所述目标数量小于或等于所述数量阈值,则通知第一获取单元执行相关操作。
14.根据权利要求9-13中任一项所述的装置,其特征在于,还包括:
关闭模块,用于在解析完所述起始触摸输入句柄、第一触摸输入句柄和第二触摸输入句柄后,关闭所述触摸消息窗口,并释放与所述起始触摸输入句柄、所述第一触摸输入句柄、所述第二触摸输入句柄、所述起始触摸消息、第一触摸消息和第二触摸消息相关联的进程内存。
15.一种电子设备,其特征在于,包括:处理器和存储器;
所述处理器和存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1-7任一项所述的方法。
16.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1-7任一项所述的方法。
CN201811624659.9A 2018-12-28 2018-12-28 一种基于多媒体数据的控制方法、装置以及相关设备 Active CN109656416B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811624659.9A CN109656416B (zh) 2018-12-28 2018-12-28 一种基于多媒体数据的控制方法、装置以及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811624659.9A CN109656416B (zh) 2018-12-28 2018-12-28 一种基于多媒体数据的控制方法、装置以及相关设备

Publications (2)

Publication Number Publication Date
CN109656416A CN109656416A (zh) 2019-04-19
CN109656416B true CN109656416B (zh) 2022-04-15

Family

ID=66118106

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811624659.9A Active CN109656416B (zh) 2018-12-28 2018-12-28 一种基于多媒体数据的控制方法、装置以及相关设备

Country Status (1)

Country Link
CN (1) CN109656416B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111083417B (zh) * 2019-12-10 2021-10-19 Oppo广东移动通信有限公司 图像处理方法及相关产品
CN112104915B (zh) * 2020-09-14 2022-08-26 腾讯科技(深圳)有限公司 一种视频数据处理方法、装置及存储介质
CN117472220A (zh) * 2023-09-15 2024-01-30 荣耀终端有限公司 操作识别方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102224480A (zh) * 2008-10-21 2011-10-19 爱特梅尔公司 多触摸追踪
CN106339165A (zh) * 2016-08-18 2017-01-18 广州视睿电子科技有限公司 对象位置的调整方法和装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101634925A (zh) * 2008-07-22 2010-01-27 联想移动通信科技有限公司 通过手势解键盘锁的方法
TWI407339B (zh) * 2009-08-06 2013-09-01 Htc Corp 追蹤觸控面板上碰觸輸入之移動軌跡的方法與電腦程式產品及其相關電子裝置
US8373670B2 (en) * 2009-11-11 2013-02-12 Htc Corporation Electronic device with dynamically adjusted touch area
CN102339157B (zh) * 2010-07-19 2014-02-12 瑞鼎科技股份有限公司 触控面板的触碰探测方法及触碰探测装置
CN103034448B (zh) * 2012-12-14 2016-03-30 小米科技有限责任公司 解锁方法及终端
US10891003B2 (en) * 2013-05-09 2021-01-12 Omni Consumer Products, Llc System, method, and apparatus for an interactive container
CN103605460B (zh) * 2013-08-30 2017-01-25 华为技术有限公司 一种手势识别方法和相关终端
CN106210289A (zh) * 2016-06-30 2016-12-07 北京奇虎科技有限公司 信息处理方法、装置及移动终端
CN107450841B (zh) * 2017-08-08 2019-05-07 腾讯科技(深圳)有限公司 交互对象控制方法及装置
CN108984092B (zh) * 2018-06-27 2020-12-22 Oppo广东移动通信有限公司 设备控制方法、装置、存储介质及电子设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102224480A (zh) * 2008-10-21 2011-10-19 爱特梅尔公司 多触摸追踪
CN106339165A (zh) * 2016-08-18 2017-01-18 广州视睿电子科技有限公司 对象位置的调整方法和装置

Also Published As

Publication number Publication date
CN109656416A (zh) 2019-04-19

Similar Documents

Publication Publication Date Title
CN109656416B (zh) 一种基于多媒体数据的控制方法、装置以及相关设备
CN108595228B (zh) 应用程序预测模型建立方法、装置、存储介质及移动终端
TWI699998B (zh) 彈幕信息的處理方法及客戶端
EP2872979B1 (en) View mode switch of graphical user interface
WO2018107898A1 (zh) 防止触摸按键误触发的方法、装置、终端及存储介质
CN105760102B (zh) 终端交互控制方法、装置及应用程序交互控制方法
CN112104915B (zh) 一种视频数据处理方法、装置及存储介质
WO2017156983A1 (zh) 一种列表的调用方法及装置
CN111831205B (zh) 设备控制方法、装置、存储介质及电子设备
CN104954549A (zh) 电子装置以及通信方法
CN111796884B (zh) 一种访问控制方法、装置、设备和计算机可读存储介质
CN104765557A (zh) 一种减少触摸屏误操作的方法及装置
JP2020500352A (ja) 情報表示方法、端末及び記憶媒体
CN105867822B (zh) 一种信息处理方法及电子设备
CN111857497B (zh) 操作提示方法和电子设备
CN111694490B (zh) 设置方法、装置及电子设备
CN112817483A (zh) 多点触控的处理方法、装置、设备及存储介质
CN112559044A (zh) 一种播放切换方法、装置及计算机可读存储介质
CN111158811B (zh) 一种广告处理的方法、装置、电子设备及存储介质
US20140258919A1 (en) View mode switch of graphical user interface
WO2016173307A1 (zh) 一种消息复制方法和装置、以及智能终端
CN107395872B (zh) 应用启动方法、装置、存储介质及电子设备
CN110618904A (zh) 卡顿检测方法和装置
US10628031B2 (en) Control instruction identification method and apparatus, and storage medium
US10423515B2 (en) Recording touch information

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