控制多媒体数据播放的方法和装置
技术领域
本发明涉及通信技术领域,特别涉及一种控制多媒体数据播放的方法和装置。
背景技术
随着智能手机的发展,尤其是触摸屏手机的发展,手机的屏幕越来越大,方便了用户在手机上观看视屏。现有的视频播放软件,在视频的播放界面上提供了播放进度条,该播放进度条一方面可以提醒用户视频的播放进度,另一方面,用户在观看视频时,可以通过拖动播放进度条来实现视频的快进或是快退,从而达到控制视频播放进度的目的。
在实现本发明的过程中,发现当前技术至少存在以下问题:
为了便于携带,智能手机的屏幕大小受到了一定的限制,且为了提高用户观看视频时的视觉体验,一般会将播放进度条做的比较小,占用屏幕较小的区域,这样就使用户对播放进度条的操作带来了困难,在用户拖动播放进度条时很容易出现操作失败或是误操作的结果,很难实现对播放进度的精确调整。
发明内容
为了实现对播放进度的精确调整,本发明实施例提供了一种控制多媒体数据播放的方法和装置。所述技术方案如下:
一方面,提供了一种控制多媒体数据播放的方法,所述方法包括:
当终端进行多媒体数据播放时,对所述多媒体数据的播放界面进行侦听;
当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量;
根据所述预设调整量调整所述多媒体数据的当前播放进度。
当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,所述方法还包括:
根据所述第一预设手势操作,在所述多媒体数据的播放界面上输出预设标识,所述预设标识用于指示所述多媒体数据的播放进度。
所述根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量,包括:
获得所述第一预设手势操作在所述多媒体数据的播放界面上的触摸点的坐标参数;
根据所述坐标参数获得所述第一预设手势操作在所述播放界面上的起始点和终止点;
根据所述起始点和所述终止点获得所述第一预设手势操作的滑动距离;
当所述滑动距离满足预设条件,获得所述预设条件对应的所述多媒体数据的播放进度的预设调整量。
所述获得所述预设条件对应的所述多媒体数据的播放进度的预设调整量,包括:
当所述滑动距离大于第一阈值且小于第二阈值时,确认所述多媒体数据的播放进度的预设调整量为第一预设调整量;
当所述滑动距离大于所述第二阈值时,确认所述多媒体数据的播放进度的预设调整量为第二预设调整量,所述第二预设调整量大于所述第一预设调整量。
所述方法还包括:
当所述滑动距离小于第一阈值时,判断在与所述第一预设手势操作间隔第一预设时间内是否再次侦听到第二预设手势操作,如果是,则获得所述第二预设手势操作的滑动距离,将所述第一预设手势操作的滑动距离与所述第二预设手势的滑动距离进行累加,得到第一滑动距离,将所述第一滑动距离分别与所述第一阈值和所述第二阈值进行比较,得到所述多媒体数据的播放进度的预设调整量。
所述方法还包括:
获取所述第一预设手势操作对应的所述多媒体数据的关键帧;
判断在与所述第一预设手势操作间隔第二预设时间内是否侦听到第三预设手势操作,如果侦听到所述第三预设手势操作,则输出所述关键帧并继续侦听在与所述第三预设手势操作间隔所述预设时间内是否有第四预设手势操作,如果未侦听到所述第三预设手势操作,则播放所述多媒体数据。
另一方面,提供了一种控制多媒体数据播放的装置,所述装置包括:
侦听模块,用于当终端进行多媒体数据播放时,对所述多媒体数据的播放界面进行侦听;
调整量获取模块,用于当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量;
调整模块,用于根据所述预设调整量调整所述多媒体数据的当前播放进度。
所述装置还包括:
显示模块,用于当所述侦听模块侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,根据所述第一预设手势操作,在所述多媒体数据的播放界面上输出预设标识,所述预设标识用于指示所述多媒体数据的播放进度。
所述调整量获取模块,包括:
第一获取单元,用于获得所述第一预设手势操作在所述多媒体数据的播放界面上的触摸点的坐标参数;
第二获取单元,用于根据所述坐标参数获得所述第一预设手势操作在所述播放界面上的起始点和终止点;
第三获取单元,用于根据所述起始点和所述终止点获得所述第一预设手势操作的滑动距离;
第四获取单元,用于当所述滑动距离满足预设条件,获得所述预设条件对应的所述多媒体数据的播放进度的预设调整量。
所述第四获取单元具体用于:
当所述滑动距离大于第一阈值且小于第二阈值时,确认所述多媒体数据的播放进度的预设调整量为第一预设调整量;
当所述滑动距离大于所述第二阈值时,确认所述多媒体数据的播放进度的预设调整量为第二预设调整量,所述第二预设调整量大于所述第一预设调整量。
所述第四获取单元还用于:
当所述滑动距离小于第一阈值时,判断在与所述第一预设手势操作间隔第一预设时间内是否再次侦听到第二预设手势操作,如果是,则获得所述第二预设手势操作的滑动距离,将所述第一预设手势操作的滑动距离与所述第二预设手势的滑动距离进行累加,得到第一滑动距离,将所述第一滑动距离分别与所述第一阈值和所述第二阈值进行比较,得到所述多媒体数据的播放进度的预设调整量。
所述装置还包括:
关键帧获取模块,用于获取所述第一预设手势操作对应的所述多媒体数据的关键帧;
所述侦听模块还用于判断在与所述第一预设手势操作间隔第二预设时间内是否侦听到第三预设手势操作,如果侦听到所述第三预设手势操作,则输出所述关键帧并继续侦听在与所述第三预设手势操作间隔所述预设时间内是否有第四预设手势操作,如果未侦听到所述第三预设手势操作,则触发播放模块播放所述多媒体数据。
本发明实施例提供的技术方案带来的有益效果是:当终端进行多媒体数据播放时,对所述多媒体数据的播放界面进行侦听;当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量;根据所述预设调整量调整所述多媒体数据的当前播放进度。其中,通过侦听多媒体数据的播放界面上预设的手势操作来获得多媒体数据播放进度的预设调整量,不需要通过拖动多媒体数据播放进度条来控制多媒体数据的播放进度,解决了用户通过播放进度条控制多媒体数据播放进度操作不方便的问题,实现了对播放进度的精度调整。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一中提供的一种控制多媒体数据播放的方法流程图;
图2是本发明实施例二中提供的一种控制多媒体数据播放的方法流程图;
图3是本发明实施例二中提供的一种界面显示示意图;
图4是本发明实施例三中提供的一种控制多媒体数据播放的装置结构示意图;
图5是本发明实施例三中提供的另一种控制多媒体数据播放的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
参见图1,本发明实施例中提供了一种控制多媒体数据播放的方法,包括:
101、当终端进行多媒体数据播放时,对所述多媒体数据的播放界面进行侦听;
102、当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量;
103、根据所述预设调整量调整所述多媒体数据的当前播放进度。
在另一实施例中,当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,所述方法还包括:
根据所述第一预设手势操作,在所述多媒体数据的播放界面上输出预设标识,所述预设标识用于指示所述多媒体数据的播放进度。
在另一实施例中,所述根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量,包括:
获得所述第一预设手势操作在所述多媒体数据的播放界面上的触摸点的坐标参数;
根据所述坐标参数获得所述第一预设手势操作在所述播放界面上的起始点和终止点;
根据所述起始点和所述终止点获得所述第一预设手势操作的滑动距离;
当所述滑动距离满足预设条件,获得所述预设条件对应的所述多媒体数据的播放进度的预设调整量。
在另一实施例中,所述获得所述预设条件对应的所述多媒体数据的播放进度的预设调整量,包括:
当所述滑动距离大于第一阈值且小于第二阈值时,确认所述多媒体数据的播放进度的预设调整量为第一预设调整量;
当所述滑动距离大于所述第二阈值时,确认所述多媒体数据的播放进度的预设调整量为第二预设调整量,所述第二预设调整量大于所述第一预设调整量。
在另一实施例中,所述方法还包括:
当所述滑动距离小于第一阈值时,判断在与所述第一预设手势操作间隔第一预设时间内是否再次侦听到第二预设手势操作,如果是,则获得所述第二预设手势操作的滑动距离,将所述第一预设手势操作的滑动距离与所述第二预设手势的滑动距离进行累加,得到第一滑动距离,将所述第一滑动距离分别与所述第一阈值和所述第二阈值进行比较,得到所述多媒体数据的播放进度的预设调整量。
在另一实施例中,所述方法还包括:
获取所述第一预设手势操作对应的所述多媒体数据的关键帧;
判断在与所述第一预设手势操作间隔第二预设时间内是否侦听到第三预设手势操作,如果侦听到所述第三预设手势操作,则输出所述关键帧并继续侦听在与所述第三预设手势操作间隔所述预设时间内是否有第四预设手势操作,如果未侦听到所述第三预设手势操作,则播放所述多媒体数据。
本发明实施例的有益效果是:当终端进行多媒体数据播放时,对所述多媒体数据的播放界面进行侦听;当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量;根据所述预设调整量调整所述多媒体数据的当前播放进度。其中,通过侦听多媒体数据的播放界面上预设的手势操作来获得多媒体数据播放进度的预设调整量,不需要通过拖动多媒体数据播放进度条来控制多媒体数据的播放进度,解决了用户通过播放进度条控制多媒体数据播放进度操作不方便的问题,实现了对播放进度的精度调整。
实施例二
本发明实施例中提供了一种控制多媒体数据播放的方法,在多媒体数据的播放过程中,侦听多媒体数据的播放界面,根据在播放界面的任意位置上侦听到的预设手势操作获得多媒体数据的播放进度的预设调整量,从而实现对多媒体数据播放进度的精确调整。
参见图2,方法流程包括:
201、当终端进行多媒体数据播放时,对所述多媒体数据的播放界面进行侦听。
本实施例中,具体执行过程中可以在多媒体数据播放软件中引入一个侦听屏幕手势滑动的类importandroid.view.MotionEvent,通过这个类直接实现对多媒体数据播放界面的侦听,而不需要通过侦听播放进度条来实现对播放进度的调整。
本实施例中,多媒体数据播放界面可以是全屏播放界面也可以是缩小的播放界面,对此本实施例不做具体限定。多媒体数据包括但不限于视频数据和音频数据,对此本实施例不做具体限定。
本实施例中的终端包括:触摸屏手机或是其他具有触摸屏功能的设备,对此本实施例并不做具体限定。
202、当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,在所述多媒体数据的播放界面上输出预设标识。
本实施例中,在多媒体数据软件中增加一个回调的接口函数,该接口函数可以为onTouchEvent(MotionEventevent)。当侦听屏幕手势滑动的类侦听到播放界面上有手势操作时,终端把接口函数中的手势操作(MotionEventevent)回调给多媒体数据程序,多媒体数据程序通过MotionEvent的类型来判断用户手指是在屏幕上按下的操作,滑动的操作或者离开的操作。例如,当回调的手势操作为MotionEvent.ACTION_DOWN时,确认用户手指是在屏幕上按下的操作,当回调的手势操作为MotionEvent.ACTION_MOVE时,确认用户手指是在屏幕上滑动的操作,当回调的手势操作为MotionEvent.ACTION_UP时,确认用户手指是在屏幕上离开的操作。
本实施例中,可以根据用户的使用习惯预定义控制多媒体数据播放进度的手势操作,当然也可以为用户提供功能设置接口,使用户自定义控制播放进度的手势操作,例如,向前滑动为快进、向后滑动为快退、点击一次为暂停,或是向上滑动为快进、向下滑动为快退、点击一次为暂停,对此本实施例不做具体限定。
本步骤中,侦听到的第一预设手势操作为控制多媒体数据的播放进度的手势操作,可以是执行快进的手势操作、快退的手势操作或是暂停的手势操作,对此本实施例不做具体限定。
可选地,在侦听到第一预设手势操作时,在所述多媒体数据的播放界面上输出预设标识,所述预设标识用于指示所述多媒体数据的播放进度,播放进度包括:快进、后退或是暂停。例如,当第一预设操作手势为快进的播放指令时,则输出快进的标识,其中,快进的标识可以为指向滑动方向的双箭头,对此本实施例不做具体限定。当然,也可以不输出预设标识,对此本实施例不做具体限定。如图3所示,当用户手指在播放界面上滑动时,输出指向滑动方向的双箭头,标识该用户的手势操作为快进操作,同时在播放界面上输出当前的播放时间,46:48代表46分钟48秒。
203、根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量。
本实施例中,侦听到第一预设手势操作后,根据第一预设手势操作获得所述多媒体数据的播放进度的预设调整量,包括:获得所述第一预设手势操作在所述多媒体数据的播放界面上的触摸点的坐标参数;根据所述坐标参数获得所述第一预设手势操作在所述播放界面上的起始点和终止点;根据所述起始点和所述终止点获得所述第一预设手势操作的滑动距离;当所述滑动距离满足预设条件,获得所述预设条件对应的所述多媒体数据的播放进度的预设调整量。
本实施例中,当侦听到预设手势的操作时,即每一次Motionevent事件,终端都会回调给多媒体数据程序两个参数:event.getX(),event.getY(),多媒体数据程序通过event.getX(),event.getY()来获得触摸点的坐标参数,根据该坐标参数获得所述第一预设手势操作在所述播放界面上的起始点和终止点。
本实施例中,为了实现对播放进度的精确调整,预先设置与滑动距离对应的播放进度的预设调整量,该预设调整量是固定值。可选地,只设置第一阈值,当侦听到的滑动距离大于第一预设阈值时,则快进或是后退第一预设调整量,用户可以通过多次在播放界面上滑动实现对播放进度的精确调整。
可选地,还可以设置第二阈值,当侦听到的滑动距离大于第二预设阈值时,则快进或是后退第二预设调整量,其中第二预设调整量大于第一预设调整量,这样在用户需要大幅度快进或是后退播放进度时,通过滑动第二阈值的滑动距离,就能减少用户滑动的次数,提高多媒体数据的播放效率。
可选地,本实施例中,设置第一预设间隔时间,如果用户第一次滑动的距离小于第一预设阈值,但是在第一预设的间隔时间内,又侦听到了用户的预设手势操作,则将第一次滑动的距离和第二次滑动的距离进行累加,得到累加后的滑动距离,将该滑动距离与第一阈值和第二阈值进行比较,得到预设调整量。
所以本实施例中,优选地,根据所述滑动距离获得所述多媒体数据的播放进度的预设调整量,包括:
当所述滑动距离大于第一阈值且小于第二阈值时,确认所述多媒体数据的播放进度的预设调整量为第一预设调整量;
当所述滑动距离大于第二阈值时,确认所述多媒体数据的播放进度的预设调整量为第二预设调整量,所述第二预设调整量大于所述第一预设调整量。
可选地,当所述滑动距离小于第一阈值时,判断在与所述第一预设手势操作间隔第一预设时间内是否再次侦听到第二预设手势操作,如果是,则获得所述第二预设手势操作的滑动距离,将所述第一预设手势操作的滑动距离与所述第二预设手势的滑动距离进行累加,得到第一滑动距离,将所述第一滑动距离分别与所述第一阈值和所述第二阈值进行比较,得到所述多媒体数据的播放进度的预设调整量。
可选地,第一阈值和第二阈值可以根据播放界面的大小进行设定,如设定第一阈值为1/20个屏幕的宽度,第二阈值为1/10个屏幕宽度,第一预设调整量可以为120秒,180秒等,第二预设调整量可以为300秒,350秒,500秒等,对此本实施例不做具体限定。例如,当滑动距离超过1/20个屏幕的宽度时触发一次快进操作,播放进度条向拖动方向前进120秒,当滑动距离超过1/10个屏幕的宽度时触发一次快进操作,播放进度条向拖动方向前进300秒。
本实施例中,当侦听到的滑动距离小于第一阈值时,则该操作被认为是误操作被忽略,或是弹出多媒体数据相关菜单的操作,或是点亮屏幕的操作,对此本实施例不做具体限定。
204、根据所述预设调整量调整所述多媒体数据的当前播放进度。
本步骤中,在得到播放进度的预设调整量后,根据该预设调整量调整多媒体数据的播放进度,如快进或是快退预设调整量对应的时间。具体执行过程中,每次在播放界面上侦听到滑动操作时,调用getCurrentPosition()函数取得当前的播放进度,然后在当前的播放进度上加上要预设调整量,再去调用MediaPlayer的seekTo(intto_ms)接口函数,通过该接口函数实现对播放进度的控制。
具体执行过程中,终端会把预设调整量换算为网络数据或是本地文件数据的偏移量(offset),然后根据该偏移量调用http_open(),重新发起httprequest的连接,当连接建立成功以后,从这个当前连接开始读取网络数据再进行播放,从而达到快进的目的。具体的,在获得预设调整量,对多媒体数据的当前播放进度进行调整的过程与现有技术类似,对此本实施例不再赘述。
本实施例中,当在多媒体数据的播放界面上连续侦听到预设操作手势时,获取每次侦听到的预设手势操作对应的多媒体数据数据的关键帧,将该关键帧在屏幕上显示出来并等待下一次预设手势操作,如果在预设时间内有其他预设手势操作,则显示下一个位置的关键帧,如果没有则进入正常播放状态。
具体执行过程中,获取所述第一预设手势操作对应的所述多媒体数据的关键帧;判断在与所述第一预设手势操作间隔第二预设时间内是否侦听到第三预设手势操作,如果侦听到所述第三预设手势操作,则输出所述关键帧并继续侦听在与所述第三预设手势操作间隔所述预设时间内是否有第四预设手势操作,如果未侦听到所述第三预设手势操作,则播放所述多媒体数据。其中,第三预设手势操作、第四预设手势操作和第一预设手势操作可以是相同的手势操作,也可以是不同的手势操作,对此本实施例不做具体限定。如果用户在播放界面上进行了连续的滑动操作,则在侦听到第一预设手势操作后,会侦听到多个第三预设手势操作,直到在预设时间内未再侦听到第四预设手势操作,则正常播放多媒体数据。
本实施例的有益效果是:当终端进行多媒体数据播放时,对所述多媒体数据的播放界面进行侦听;当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量;根据所述预设调整量调整所述多媒体数据的当前播放进度。其中,通过侦听多媒体数据的播放界面上预设的手势操作来获得多媒体数据播放进度的预设调整量,不需要通过拖动多媒体数据播放进度条来控制多媒体数据的播放进度,解决了用户通过播放进度条控制多媒体数据播放进度操作不方便的问题,实现了对播放进度的精度调整。
实施例三
参见图4,本发明实施例中提供了一种控制多媒体数据播放的装置,该装置包括:侦听模块301,调整量获取模块302和调整模块303。
侦听模块301,用于当终端进行多媒体数据播放时,对所述多媒体数据的播放界面进行侦听;
调整量获取模块302,用于当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量;
调整模块303,用于根据所述预设调整量调整所述多媒体数据的当前播放进度。
参见图5,在另一实施例中,所述装置还包括:
显示模块304,用于当所述侦听模块301侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,根据所述第一预设手势操作,在所述多媒体数据的播放界面上输出预设标识,所述预设标识用于指示所述多媒体数据的播放进度。
参见图5,在另一实施例中,所述调整量获取模块302,包括:
第一获取单元302a,用于获得所述第一预设手势操作在所述多媒体数据的播放界面上的触摸点的坐标参数;
第二获取单元302b,用于根据所述坐标参数获得所述第一预设手势操作在所述播放界面上的起始点和终止点;
第三获取单元302c,用于根据所述起始点和所述终止点获得所述第一预设手势操作的滑动距离;
第四获取单元302d,用于当所述滑动距离满足预设条件,获得所述预设条件对应的所述多媒体数据的播放进度的预设调整量。
在另一实施例中,所述第四获取单元302d具体用于:
当所述滑动距离大于第一阈值且小于第二阈值时,确认所述多媒体数据的播放进度的预设调整量为第一预设调整量;
当所述滑动距离大于所述第二阈值时,确认所述多媒体数据的播放进度的预设调整量为第二预设调整量,所述第二预设调整量大于所述第一预设调整量。
在另一实施例中,所述第四获取单元302d还用于:
当所述滑动距离小于第一阈值时,判断在与所述第一预设手势操作间隔第一预设时间内是否再次侦听到第二预设手势操作,如果是,则获得所述第二预设手势操作的滑动距离,将所述第一预设手势操作的滑动距离与所述第二预设手势的滑动距离进行累加,得到第一滑动距离,将所述第一滑动距离分别与所述第一阈值和所述第二阈值进行比较,得到所述多媒体数据的播放进度的预设调整量。
在另一实施例中,参见图5,所述装置还包括:
关键帧获取模块305,用于获取所述第一预设手势操作对应的所述多媒体数据的关键帧;
所述侦听模块301还用于判断在与所述第一预设手势操作间隔第二预设时间内是否侦听到第三预设手势操作,如果侦听到所述第三预设手势操作,则输出所述关键帧并继续侦听在与所述第三预设手势操作间隔所述预设时间内是否有第四预设手势操作,如果未侦听到所述第三预设手势操作,则触发播放模块306播放所述多媒体数据。
本实施例的有益效果是:当终端进行多媒体数据播放时,对所述多媒体数据的播放界面进行侦听;当侦听到对所述多媒体数据的播放界面的任意位置的第一预设手势操作时,根据所述第一预设手势操作获得所述多媒体数据的播放进度的预设调整量;根据所述预设调整量调整所述多媒体数据的当前播放进度。其中,通过侦听多媒体数据的播放界面上预设的手势操作来获得多媒体数据播放进度的预设调整量,不需要通过拖动多媒体数据播放进度条来控制多媒体数据的播放进度,解决了用户通过播放进度条控制多媒体数据播放进度操作不方便的问题,实现了对播放进度的精度调整。
需要说明的是:上述实施例中提供的控制多媒体数据播放的装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
另外,上述实施例提供的控制多媒体数据播放的装置与控制多媒体数据播放的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。