多媒体播放进度控制方法及装置
技术领域
本发明涉及终端技术领域,特别涉及一种多媒体播放进度控制方法及装置。
背景技术
随着终端技术的日渐发展,越来越多的用户使用终端进行多媒体播放。现有技术中,在终端进行多媒体播放时,用户可以通过拖动播放进度条上的锚点,将锚点拖动到大概的位置后进行试听,通过反复的拖动和试听,找到其所需的位置,从该位置所对应的播放时刻开始播放,从而实现对多媒体播放进度的控制。
在实现本发明的过程中,发明人发现相关技术至少存在以下问题:
现有技术在实现多媒体播放进度的控制时,由于终端无法在用户拖动锚点时提供即时的位置反馈,需要用户根据自己对多媒体的了解来拖动锚点和试听,以尽可能找到所需的位置,因此,很难快速而准确地控制多媒体播放的进度,且操作不够简便易行。
发明内容
为了解决相关技术的问题,本发明实施例提供了一种多媒体播放进度控制方法及装置。所述技术方案如下:
第一方面,提供了一种多媒体播放进度控制方法,所述方法包括:
当在多媒体文件播放界面上检测到对播放进度条上锚点的拖动操作时,在所述拖动操作过程中,根据所述锚点的拖动位置,从多媒体文件的歌词文件中,获取目标歌词,所述歌词文件包括歌词文本信息和时间标签;
基于所述拖动位置,显示所述目标歌词;
当所述拖动操作结束时,以所述锚点的结束拖动位置对应的播放进度为播放起点,对所述多媒体文件进行播放。
第二方面,提供了一种多媒体播放进度控制装置,所述装置包括:
获取模块,用于当在多媒体文件播放界面上检测到对播放进度条上锚点的拖动操作时,在所述拖动操作过程中,根据所述锚点的拖动位置,从多媒体文件的歌词文件中,获取目标歌词,所述歌词文件包括歌词文本信息和时间标签;
显示模块,用于基于所述拖动位置,显示所述目标歌词;
播放模块,用于当所述拖动操作结束时,以所述锚点的结束拖动位置对应的播放进度为播放起点,对所述多媒体文件进行播放。
本发明实施例提供的技术方案带来的有益效果是:
通过在对锚点的拖动操作过程中,根据锚点的拖动位置,来获取并显示目标歌词,提供了即时而准确的位置反馈,从而使用户能够将锚点拖动到准确的播放位置,实现准确的多媒体播放进度控制,操作简便易行。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种多媒体播放进度控制方法的流程图;
图2是本发明另一实施例提供的一种多媒体播放进度控制方法的流程图;
图3是本发明另一实施例提供的一种多媒体播放进度控制的示意图;
图4是本发明另一实施例提供的一种多媒体播放进度控制的示意图;
图5是本发明另一实施例提供的一种多媒体播放界面的示意图;
图6是本发明另一实施例提供的一种多媒体播放进度控制程序的类示意图;
图7是本发明另一实施例提供的一种多媒体播放进度控制装置的结构示意图;
图8是本发明另一实施例提供的一种多媒体播放进度控制终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1是本发明实施例提供的一种多媒体播放进度控制方法的流程图。本实施例提供的多媒体播放进度控制方法的执行主体为终端,该终端可以是手机、平板电脑或台式机等,参见图1,该方法流程包括:
101、当在多媒体文件播放界面上检测到对播放进度条上锚点的拖动操作时,在拖动操作过程中,根据锚点的拖动位置,从多媒体文件的歌词文件中,获取目标歌词,该歌词文件包括歌词文本信息和时间标签。
具体地,多媒体文件播放界面可以是在多媒体文件播放程序中的播放界面,该多媒体文件播放界面可以包括播放进度条、播放进度条上的锚点、播放和暂停控制块、以及跳转至前一个或后一个多媒体文件的控制块。其中,播放进度条用于指示当前多媒体文件的播放进度,播放进度条上的锚点指位于播放进度条一端的控制点,用于指示当前多媒体文件的播放位置,当该锚点被拖动时,终端将从锚点被拖动后所处的位置开始,播放多媒体文件。
需要说明的是,在本发明实施例中,在未发生任何拖动操作时,根据用户的播放控制操作,该多媒体文件可以处于播放状态,也可以处于暂停播放状态,因此,播放进度条上的锚点可能处于静止状态,也可能处于缓慢移动状态,该锚点可以位于播放进度条上的任意位置。
在本发明实施例中,对播放进度条上锚点的拖动操作可以是按住锚点,在播放进度条上以任意的速度和方向进行拖动的操作。在检测到对锚点的拖动操作之后,未检测到对锚点松开的操作之前,均需要执行根据锚点的拖动位置获取目标歌词的操作,从而针对不同的拖动位置,得到该拖动位置对应的目标歌词。具体地,锚点的拖动位置是指拖动操作过程中,锚点随着拖动操作的轨迹移动后,在播放进度条上所处的位置。
在本发明实施例中,多媒体文件的歌词文件可以是任意格式的歌词文件,如lrc格式的歌词文件等,该歌词文件包括歌词文本信息和时间标签,该歌词文本信息为多媒体文件对应的所有歌词内容,该时间标签为根据多媒体文件播放过程中,歌词内容对应音频的播放时间而设置的。
歌词文件可以有至少两种格式,一是行格式,二是字格式。
在本发明实施例中,行格式是指该歌词文本信息是按照行进行划分,对于每行歌词,其对应有用于表示该行歌词播放时间的时间标签,即行标签。然而,歌词的时间标签标注形式可以有下述多种情况:第一种情况、一行歌词对应于一个时间标签。对于一行歌词来说,可以有一个行起始时间标签,用于标注该行歌词的起始时间。此时,下一行歌词的行起始时间标签,可以认为是用于标注上一行歌词的结束时间。
如:[00:03:17]一闪一闪亮晶晶
[00:03:25]满天都是小星星
其中,[00:03:17]用于表示歌词“一闪一闪亮晶晶”从零时三分十七秒开始,[00:03:25]用于表示歌词“满天都是小星星”从零时三分二十五秒开始,也可以认为是用于表示“一闪一闪亮晶晶”的结束时间。
第二种情况、一行歌词对应于两个时间标签。对于一行歌词来说,可以有一个行起始时间标签和一个行结束时间标签,分别用于标注该行歌词的起始时间和结束时间。
如,[00:03:17]一闪一闪亮晶晶[00:03:24]
其中,[00:03:17]用于表示歌词“一闪一闪亮晶晶”从零时三分十七秒开始,[00:03:24]用于表示该歌词从零时三分二十四秒结束。
字格式是指该歌词文本信息是按照字进行划分,对于歌词文件信息中的每个字,其对应有用于表示该字播放时间的时间标签,即字标签。然而,歌词的时间标签标注形式可以有下述多种情况:第一种情况、一个字对应于一个时间标签。对于一个字来说,可以有一个字起始时间标签,用于标注该字的起始时间。此时,下一个字的字起始时间标签,可以认为是用于标注上一个字的结束时间。
如:[00:03:17]一[00:03:18]闪[00:03:19]一[00:03:20]闪[00:03:21]亮[00:03:22]晶[00:03:23]晶
其中,歌词中每一个字之前的时间标签用于表示该字的起始时间,如[00:03:17]表示第一个字“一”的起始时间为零时三分十七秒,而[00:03:18]为第二个字“闪”的起始时间标签,也可以认为是用于标注第一个字“一”的结束时间为零时三分十七秒。
第二种情况、一个字对应于两个时间标签。对于一个字来说,可以有一个字起始时间标签和一个字结束时间标签,分别用于标注该字的起始时间和结束时间。
如:[00:03:17]一[00:03:18]闪[00:03:19]一[00:03:20]闪[00:03:21]亮[00:03:22]晶[00:03:23]晶[00:03:24]
其中,歌词中每一个字之前的时间标签用于表示该字的起始时间,每一个字之后的时间标签用于表示该字的结束时间,如[00:03:17]表示第一个字“一”的起始时间为零时三分十七秒,[00:03:18]表示第一个字“一”的结束时间为零时三分十七秒;[00:03:23]表示最后一个字“晶”的起始时间为零时三分二十三秒,[00:03:24]表示最后一个字“晶”的结束时间为零时三分二十四秒。
当然,对于字格式来说,还可以包括行结束时间标签,以用于标注该行演唱完毕。
此外,根据锚点的拖动位置,从多媒体文件的歌词文件中,获取到的目标歌词,可以为该拖动位置对应的一行歌词、一个字或一行歌词的一部分。
102、基于拖动位置,显示目标歌词。
在本发明实施例中,根据锚点的拖动位置,获取到目标歌词后,需要在拖动位置处,显示获取到的目标歌词,从而在对锚点的拖动操作过程中,为用户提供即时而准确的位置反馈,帮助用户更快地找到所需的播放位置。
在显示目标歌词时,将在拖动位置上显示歌词显示框,该歌词显示框包括了目标歌词。
103、当拖动操作结束时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
在检测到对拖动进度条上锚点的按住并拖动的操作后,如果检测到对锚点松开的操作,可以认为拖动操作结束。此时,锚点在播放进度条上所处的位置即为结束拖动位置。
在拖动操作结束后,可以认为用户已经找到所需的播放位置,因此,将会以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。具体实施时,由于多媒体播放界面上的多媒体文件在拖动操作之前可能处于播放状态,也可能处于播放暂停状态。
本发明实施例提供的方法,通过在对锚点的拖动操作过程中,根据锚点的拖动位置,来获取并显示目标歌词,提供了即时而准确的位置反馈,从而使用户能够将锚点拖动到准确的播放位置,实现准确的多媒体播放进度控制,操作简便易行。
可选地,根据锚点的拖动位置,从多媒体文件的歌词文件中,获取目标歌词,包括:
当检测到拖动操作开始后,在拖动操作过程中,每隔预设时长,将锚点当前所在位置作为锚点的拖动位置;
获取拖动位置对应的播放时间;
根据拖动位置对应的播放时间,从歌词文件的时间标签中,确定目标时间标签,该拖动位置对应的播放时间位于目标时间标签的起始时间和结束时间之间;
从歌词文本信息中,获取目标时间标签对应的歌词。
可选地,从歌词文本信息中,获取目标时间标签对应的歌词,包括:
如果时间标签为行标签,从歌词文本信息中,获取目标时间标签对应的一行或多行歌词;或,
如果时间标签为字标签,从歌词文本信息中,获取目标时间标签对应的字所在的一行歌词。
可选地,当拖动操作结束时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放,包括:
如果当前处于多媒体播放过程中,当拖动操作结束时,在无需任何播放控制操作的前提下,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放;或,
如果当前处于多媒体播放暂停场景中,当拖动操作结束时,接收到播放指令时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
可选地,基于拖动位置,显示目标歌词,包括:
在拖动位置上方,显示歌词显示框,该歌词显示框中包含目标歌词。
上述所有可选技术方案,均可按照任意结合形成本发明的可选实施例,在此不再一一赘述。
图2是本发明实施例提供的一种多媒体播放进度控制方法的流程图。参见图2,该方法流程包括:
201、当在多媒体文件播放界面上检测到对播放进度条上锚点的拖动操作时,当检测到拖动操作开始后,在拖动操作过程中,每隔预设时长,将锚点当前所在位置作为锚点的拖动位置,获取拖动位置对应的播放时间。
在本发明实施例中,为了防止误操作,可以在检测到对播放进度条上锚点的按住操作超过一定时长后,认为拖动操作开始。
其中,播放进度条上锚点所处的位置对应多媒体文件的播放位置,即对应多媒体文件的播放时间。在拖动操作过程中,由于锚点所处的位置随着拖动操作的轨迹一直在变化,因此,需要每隔预设时长,进行一次拖动位置的获取,从而能够根据拖动位置获取对应的播放时间。具体实施时,在多媒体文件播放界面上,当检测到对锚点的拖动操作开始后,每过一个预设时长,终端将会获取一次锚点的当前所处位置,将锚点当前所处位置作为锚点的拖动位置。其中,该预设时长为较小的时长,优选地,该预设时长小于50ms,如,该预设时长可以根据终端的处理能力设置,如5ms、10ms等,本发明实施例对此不作具体限定。
需要说明的是,当对锚点的拖动操作速度越慢,锚点在播放进度条上进行获取的拖动位置数越多,后续能够提供的歌词文本信息越完整,用户能够根据自身的需求调整拖动操作的速度,以获取更准确的位置反馈。
此外,该获取拖动位置对应的播放时间的过程,可以是终端在多媒体文件播放前,从多媒体文件中获取多媒体文件的播放总时长,从而在多媒体文件播放界面上,根据拖动位置与播放进度条起点的距离与播放进度条总长度的比例,得到拖动位置对应的播放时间。其中,拖动位置在播放进度条上的长度,指播放进度条的起点到该拖动位置的距离长。例如,以多媒体文件的播放总时长为4分钟为例,如果播放进度条总长度为4厘米,则当拖动位置位于距离播放进度条起点1厘米处时,可得到拖动位置对应的播放时间为1.5分钟。当终端获取到拖动位置对应的播放时间后,即可根据该播放时间获取对应的歌词文本信息。
202、根据拖动位置对应的播放时间,从歌词文件的时间标签中,确定目标时间标签,该拖动位置对应的播放时间位于目标时间标签的起始时间和结束时间之间。
在本发明实施例中,在对多媒体文件进行播放进度控制时,需要将多媒体文件与该多媒体文件的歌词文件相关联,从而从该歌词文件中,获取拖动位置对应的歌词文本信息。具体地,该歌词文件可以是预先下载并存储于本地,或在多媒体文件播放时从网络上下载的,本发明实施例对此不作具体限定。
在本发明实施例中,目标时间标签指拖动位置对应的时间标签,根据该目标时间标签能够获得拖动位置对应的目标歌词。
根据步骤101对歌词文件的描述,歌词文件可以有行格式和字格式两种,因此,该根据拖动位置对应的播放时间,从歌词文件的时间标签中,确定目标时间标签的过程可以至少有下述(1)-(4)多种情况:
(1)当歌词文件为行格式,且一行歌词对应于一个时间标签时,在获取到拖动位置对应的播放时间后,如果该播放时间位于某两个相邻时间标签之间,则将两个相邻时间标签中位于播放时间之前的时间标签确定作为目标时间标签。例如,以拖动位置对应的播放时间为[00:02:02]为例,若有两个相邻时间标签,其中一个的起始时间为[00:02:00],另一个的起始时间为[00:02:05],则确定起始时间为[00:02:00]的时间标签为目标时间标签。
(2)当歌词文件为行格式,且一行歌词对应于两个时间标签时,在获取到拖动位置对应的播放时间后,如果该播放时间位于某一行歌词对应的行起始时间标签和行结束时间标签之间,则将这两个时间标签确定作为目标时间标签。例如,以拖动位置对应的播放时间为[00:02:02]为例,若某个时间标签的起始时间标签和结束时间标签分别为[00:02:00]和[00:02:05],则确定这两个时间标签为目标时间标签。
(3)当歌词文件为字格式,且一个字对应于一个时间标签时,在获取到拖动位置对应的播放时间后,如果该播放时间位于某两个相邻时间标签之间,则将两个相邻时间标签中位于播放时间之前的时间标签确定作为目标时间标签。
(4)当歌词文件为字格式,且一个字对应于两个时间标签时,在获取到拖动位置对应的播放时间后,如果该播放时间位于某一个字对应的行起始时间标签和行结束时间标签之间,则将这两个时间标签确定作为目标时间标签。
当然,由于字格式还可以包括行结束时间,以用于标注该行演唱完毕,因此,也可以在获取到拖动位置对应的播放时间后,如果该播放时间位于某两个相邻的行结束时间标签之间,则将两个行结束时间标签中位于播放时间之后的行结束时间标签确定作为目标时间标签,从而获取该行的歌词文本信息。
203、从歌词文本信息中,获取目标时间标签对应的歌词。
在确定目标时间标签后,从歌词文本信息中,获取目标时间标签对应的歌词,包括:如果时间标签为行标签,从歌词文本信息中,获取目标时间标签对应的一行或多行歌词;或,如果时间标签为字标签,从歌词文本信息中,获取目标时间标签对应的字所在的一行歌词。
此外,如果时间标签为字标签,也可以从歌词文本信息中,获取目标时间标签对应的字或位于该字之前预设个数的字以及该字之后预设个数的字。如:当歌词文件中包括“[00:03:17]一[00:03:18]闪[00:03:19]一[00:03:20]闪[00:03:21]亮[00:03:22]晶[00:03:23]晶[00:03:24]”时,如果目标时间标签为[00:03:21],该目标时间标签对应的“亮”字,则获取到的目标歌词可以是“一闪亮晶晶”。
需要说明的是,针对步骤202中提到的,如果歌词文件中包含字标签,同时包含行结束时间标签,并且确定某个行结束时间标签为目标时间标签时,可以从歌词文本信息中,获取行结束标签对应的一行歌词。
对于上述具体如何获取目标歌词的过程,也可以根据用户设置来实现,如用户设置每次均显示一行歌词,则按照行进行显示,而如果用户设置每次显示一个字或几个字,则按照字进行显示,本发明实施例对此不作具体限定。
204、在拖动位置上方,显示歌词显示框,该歌词显示框中包含目标歌词。
其中,目标歌词是指从歌词文本信息中,获取到的目标时间标签对应的歌词。具体地,在获取到目标歌词后,还需在拖动位置上方显示该目标歌词,才能使用户获悉该拖动位置对应的目标歌词,从而根据该目标歌词判断后续的拖动方向以及判断当前锚点是否已拖动到其所需的位置。
由步骤203的过程可知,目标歌词可以是行标签对应的一行或多行歌词,或字标签对应的一个字,或位于字标签对应的字前后的几个字,或行结束标签对应的一行或多行歌词,本发明实施例对此不作具体限定。
具体在显示目标歌词时,在拖动位置上方,显示歌词显示框,该歌词显示框中包含目标歌词。其中,该歌词显示框可以是矩形框、椭圆形框或其他形状的显示框,本发明实施例对于该歌词显示框的形状和大小均不作具体限定。当然,在显示目标歌词时,也可以不显示歌词显示框,只在拖动位置上方显示目标歌词。图3是本发明实施例提供的一种多媒体播放进度控制的示意图,其中,图3(a)为多媒体文件播放界面,该多媒体文件播放界面包括播放进度条、播放进度条上的锚点、播放和暂停控制块、多媒体文件的播放总时长以及跳转至前一个或后一个多媒体文件的控制块;图3(b)为用户拖动锚点到达3分17秒的位置,此时,该拖动位置上方显示了矩形的歌词显示框,该歌词显示框中显示了3分17秒对应的目标歌词,同时,在图3(b)的拖动位置上方,还显示了当前的播放时间“03:17”。
在拖动操作过程中,当锚点被拖动到不同位置处时,将针对不同的拖动位置显示对应的目标歌词。图4是本发明实施例提供的一种多媒体播放进度控制的示意图,参见图4,图4显示了当锚点从“03:17”的位置向左拖动,经过“01:24”的位置,到达“00:17”的位置,在拖动操作过程中,针对“00:17”、“01:24”和“03:17”的拖动位置分别显示了不同的目标歌词。当然,图4仅用于说明针对不同的拖动位置可以显示不同的目标歌词,在实际应用中,显示不同目标歌词的不同拖动位置之间的间隔可以随着终端获取目标歌词的速度不同而不同,同时受拖动操作速度的影响。
可选地,针对时间标签为字标签的情况,当根据目标时间标签获取到的目标歌词为当前字所在的一行歌词时,还可以根据拖动位置对应的字,将目标歌词中,该字以及该字之前的歌词均以第一颜色显示,将其余的字以第二颜色显示,以更清楚地显示当前拖动位置对应的播放进度,实现更准确的位置反馈,且用户需要听当前目标歌词的一整行歌词或需要听下一行歌词时,该方法也可以用于提示后续的大概拖动位置,其中,第一颜色和第二颜色不同。当然,该字之间的区别显示还可以通过对其他参数(如,字体大小、或者字体等)的调整或者整行字的显示形态的调整进行,在此不做赘述。
需要说明的是,在多媒体文件播放过程中,在某个播放时间段中,可能只播放旋律,而没有对应的歌词,在对应的拖动位置上方,可以不进行歌词显示框和目标歌词的显示,或显示空白的歌词显示框,或在歌词显示框中显示省略号等,本发明实施例对此不作具体限定。
205、当拖动操作结束时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
当拖动操作结束时,可认为用户已将锚点拖动到其所需的位置,因此,可以以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
需要说明的是,在拖动操作结束之前,即用户还未对锚点松手时,终端还将在当前的拖动位置显示目标歌词,在用户对锚点松手后,该拖动位置即为锚点的结束拖动位置,而此时已经不需要再给用户提供位置反馈,因此,拖动操作结束时,结束拖动位置处显示的目标歌词将不再显示。具体地,可以增大该目标歌词和歌词显示框的透明度,直至该目标歌词和歌词显示框消失,本发明实施例对此不作具体限定。
在多媒体文件播放界面上,在用户对锚点进行拖动之前,该多媒体文件可能处于播放状态或播放暂停状态。可选地,当拖动操作结束时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放,包括:如果当前处于多媒体播放过程中,当拖动操作结束时,在无需任何播放控制操作的前提下,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放;或,如果当前处于多媒体播放暂停场景中,当拖动操作结束时,接收到播放指令时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。具体地,在多媒体播放界面上,当检测到对多媒体播放操作控制块的点击操作时,即接收到了播放指令。
图5是本发明实施例提供的一种多媒体播放界面的示意图,在图5(a)中,用户拖动到“03:17”的位置,此时,该位置上显示了歌词显示框和目标歌词;在图5(b)中,用户从“03:17”的位置松手之后,歌词显示框和目标歌词不再显示,当检测到对播放操作控制块的点击操作后,将从“03:17”的位置开始播放多媒体文件。
上述步骤201~205为本发明实施例提供的多媒体播放进度控制的过程,在具体实施时,该过程可通过技术人员采用任一种计算机编程语言预先编写用于实现该过程的程序,在播放多媒体时,终端将调用该程序实现多媒体播放进度的控制。具体地,本发明实施例以采用C++计算机编程语言进行编程为例进行说明。如以歌词文件中对歌词的划分为行划分为例,图6是本发明实施例提供的一种多媒体播放进度控制程序的类示意图,参见图6,在程序中定义了一个LrcItem类,包含lrcString对象、sleepTime对象、position Time对象,用于存放每一行歌词以及该行歌词对应的时间标签;定义了一个Lrc类,包含lrcList对象、readLrc函数、getLrcString函数,用于读取LrcItem类中存放的每一行歌词及其对应的时间标签;定义了一个Song类,包含songPath对象、lrcPath对象、lrc对象,用于存放多媒体文件及其歌词文件在终端中的存放路径,以从存放路径中获取该多媒体文件及其歌词文件,并操作Lrc类,以操作相应的歌词文件;定义了一个MyPlayer类,包含mMediaPlayer对象、mSongList对象以及OnSeekBarChanged函数,用于控制多媒体文件的播放过程,以及操作Song类,以获取多媒体文件和对应的歌词文件。
具体地,在控制多媒体播放进度时,如果检测到对锚点的拖动操作,终端将调用MyPlayer类中的OnSeekBarChanged函数,该函数用于根据锚点的拖动位置,调用Lrc类中的getLrcString函数以获取该拖动位置对应的目标歌词;在获取到拖动位置对应的目标歌词后,将该目标歌词回传给MyPlayer类,显示歌词显示框,该歌词显示框中包括目标歌词;如果检测到拖动操作结束,终端将调用MyPlayer类从结束拖动位置对应的播放时间开始,播放多媒体文件。
本发明实施例提供的方法,通过在对锚点的拖动操作过程中,根据锚点的拖动位置,获取该拖动位置对应的播放时间,根据该播放时间,从歌词文件中获取并显示目标歌词,提供了即时而准确的位置反馈,从而使用户能够根据拖动位置上显示的目标歌词,将锚点拖动到准确的播放位置,而终端将从该位置开始播放多媒体文件,实现了准确的多媒体播放进度控制,操作简便易行。
图7是本发明实施例提供的一种多媒体播放进度控制装置的结构示意图,该装置用于执行上述图1或图2所示的实施例提供的多媒体播放进度控制方法。参见图7,该装置包括:
获取模块701,用于当在多媒体文件播放界面上检测到对播放进度条上锚点的拖动操作时,在拖动操作过程中,根据锚点的拖动位置,从多媒体文件的歌词文件中,获取目标歌词,该歌词文件包括歌词文本信息和时间标签;
显示模块702,用于基于拖动位置,显示目标歌词;
播放模块703,用于当拖动操作结束时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
可选地,获取模块701,具体包括:
第一确定单元,用于当检测到拖动操作开始后,在拖动操作过程中,每隔预设时长,将锚点当前所在位置作为锚点的拖动位置;
第一获取单元,用于获取拖动位置对应的播放时间;
第二确定单元,用于根据拖动位置对应的播放时间,从歌词文件的时间标签中,确定目标时间标签,该拖动位置对应的播放时间位于目标时间标签的起始时间和结束时间之间;
第二获取单元,用于从歌词文本信息中,获取目标时间标签对应的歌词。
可选地,第二获取单元,具体用于当时间标签为行标签时,从歌词文本信息中,获取目标时间标签对应的一行或多行歌词;或,用于当时间标签为字标签时,从歌词文本信息中,获取目标时间标签对应的字所在的一行歌词。
可选地,播放模块703,具体包括:
第一播放单元,用于在当前处于多媒体播放过程中时,当拖动操作结束时,在无需任何播放控制操作的前提下,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
或,第二播放单元,用于在当前处于多媒体播放暂停场景中时,当拖动操作结束时,接收到播放指令时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
可选地,显示模块702,具体包括:
显示单元,用于在拖动位置上方,显示歌词显示框,该歌词显示框中包含目标歌词。
本发明实施例提供的装置,通过在对锚点的拖动操作过程中,根据锚点的拖动位置,来获取并显示目标歌词,提供了即时而准确的位置反馈,从而使用户能够将锚点拖动到准确的播放位置,实现准确的多媒体播放进度控制,操作简便易行。
请参考图8,其示出了本发明实施例所涉及的终端的结构示意图,该终端可以用于实施上述实施例中提供的多媒体播放进度控制方法。具体来讲:
终端800可以包括RF(Radio Frequency,射频)电路110、包括有一个或一个以上计算机可读存储介质的存储器120、输入单元130、显示单元140、传感器150、音频电路160、WiFi(Wireless Fidelity,无线保真)模块170、包括有一个或者一个以上处理核心的处理器180、以及电源190等部件。本领域技术人员可以理解,图8中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器180处理;另外,将涉及上行的数据发送给基站。通常,RF电路110包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(CodeDivision Multiple Access,码分多址)、WCDMA(Wideband Code Division MultipleAccess,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(ShortMessaging Service,短消息服务)等。
存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端800的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器180和输入单元130对存储器120的访问。
输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括触敏表面131以及其他输入设备132。触敏表面131,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面131上或在触敏表面131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面131。除了触敏表面131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及终端800的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可包括显示面板141,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板141。进一步的,触敏表面131可覆盖显示面板141,当触敏表面131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图8中,触敏表面131与显示面板141是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面131与显示面板141集成而实现输入和输出功能。
终端800还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在终端800移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端800还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路160、扬声器161,传声器162可提供用户与终端800之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。音频电路160还可能包括耳塞插孔,以提供外设耳机与终端800的通信。
WiFi属于短距离无线传输技术,终端800通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图8示出了WiFi模块170,但是可以理解的是,其并不属于终端800的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器180是终端800的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行终端800的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理核心;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
终端800还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源190还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端800还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端的显示单元是触摸屏显示器,终端还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。所述一个或者一个以上程序包含用于执行以下操作的指令:
当在多媒体文件播放界面上检测到对播放进度条上锚点的拖动操作时,在拖动操作过程中,根据锚点的拖动位置,从多媒体文件的歌词文件中,获取目标歌词,该歌词文件包括歌词文本信息和时间标签;
基于拖动位置,显示目标歌词;
当拖动操作结束时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,终端的存储器中,还包含用于执行以下操作的指令:
当检测到拖动操作开始后,在拖动操作过程中,每隔预设时长,将锚点当前所在位置作为锚点的拖动位置;
获取拖动位置对应的播放时间;
根据拖动位置对应的播放时间,从歌词文件的时间标签中,确定目标时间标签,该拖动位置对应的播放时间位于目标时间标签的起始时间和结束时间之间;
从歌词文本信息中,获取目标时间标签对应的歌词。
在第二种可能的实施方式作为基础而提供的第三种可能的实施方式中,终端的存储器中,还包含用于执行以下操作的指令:
如果时间标签为行标签,从歌词文本信息中,获取目标时间标签对应的一行或多行歌词;或,
如果时间标签为字标签,从歌词文本信息中,获取目标时间标签对应的字所在的一行歌词。
在第一种可能的实施方式作为基础而提供的第四种可能的实施方式中,终端的存储器中,还包含用于执行以下操作的指令:
如果当前处于多媒体播放过程中,当拖动操作结束时,在无需任何播放控制操作的前提下,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放;或,
如果当前处于多媒体播放暂停场景中,当拖动操作结束时,接收到播放指令时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
在第一种可能的实施方式作为基础而提供的第五种可能的实施方式中,终端的存储器中,还包含用于执行以下操作的指令:
在拖动位置上方,显示歌词显示框,该歌词显示框中包含目标歌词。
本发明实施例提供的终端,通过在对锚点的拖动操作过程中,根据锚点的拖动位置,来获取并显示目标歌词,提供了即时而准确的位置反馈,从而使用户能够将锚点拖动到准确的播放位置,实现准确的多媒体播放进度控制,操作简便易行。
本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质存储有一个或者一个以上程序,该一个或者一个以上程序被一个或者一个以上的处理器用来执行多媒体播放进度控制方法,该方法包括:
当在多媒体文件播放界面上检测到对播放进度条上锚点的拖动操作时,在拖动操作过程中,根据锚点的拖动位置,从多媒体文件的歌词文件中,获取目标歌词,该歌词文件包括歌词文本信息和时间标签;
基于拖动位置,显示目标歌词;
当拖动操作结束时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,终端的存储器中,还包含用于执行以下操作的指令:
当检测到拖动操作开始后,在拖动操作过程中,每隔预设时长,将锚点当前所在位置作为锚点的拖动位置;
获取拖动位置对应的播放时间;
根据拖动位置对应的播放时间,从歌词文件的时间标签中,确定目标时间标签,该拖动位置对应的播放时间位于目标时间标签的起始时间和结束时间之间;
从歌词文本信息中,获取目标时间标签对应的歌词。
在第二种可能的实施方式作为基础而提供的第三种可能的实施方式中,终端的存储器中,还包含用于执行以下操作的指令:
如果时间标签为行标签,从歌词文本信息中,获取目标时间标签对应的一行或多行歌词;或,
如果时间标签为字标签,从歌词文本信息中,获取目标时间标签对应的字所在的一行歌词。
在第一种可能的实施方式作为基础而提供的第四种可能的实施方式中,终端的存储器中,还包含用于执行以下操作的指令:
如果当前处于多媒体播放过程中,当拖动操作结束时,在无需任何播放控制操作的前提下,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放;或,
如果当前处于多媒体播放暂停场景中,当拖动操作结束时,接收到播放指令时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
在第一种可能的实施方式作为基础而提供的第五种可能的实施方式中,终端的存储器中,还包含用于执行以下操作的指令:
在拖动位置上方,显示歌词显示框,该歌词显示框中包含目标歌词。
本发明实施例提供的计算机可读存储介质,通过在对锚点的拖动操作过程中,根据锚点的拖动位置,来获取并显示目标歌词,提供了即时而准确的位置反馈,从而使用户能够将锚点拖动到准确的播放位置,实现准确的多媒体播放进度控制,操作简便易行。
本发明实施例中提供了一种图形用户接口,该图形用户接口用在终端上,该终端包括触摸屏显示器、存储器和用于执行一个或者一个以上的程序的一个或者一个以上的处理器;该图形用户接口包括:
当在多媒体文件播放界面上检测到对播放进度条上锚点的拖动操作时,在拖动操作过程中,根据锚点的拖动位置,从多媒体文件的歌词文件中,获取目标歌词,该歌词文件包括歌词文本信息和时间标签;
基于拖动位置,显示目标歌词;
当拖动操作结束时,以锚点的结束拖动位置对应的播放进度为播放起点,对多媒体文件进行播放。
本发明实施例提供的图形用户接口,通过在对锚点的拖动操作过程中,根据锚点的拖动位置,来获取并显示目标歌词,提供了即时而准确的位置反馈,从而使用户能够将锚点拖动到准确的播放位置,实现准确的多媒体播放进度控制,操作简便易行。
需要说明的是:上述实施例提供的多媒体播放进度控制装置在控制多媒体播放进度时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的多媒体播放进度控制装置与多媒体播放进度控制方法的实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。