CN103927205A - 基于脚本触发震动的手持设备视频播放方法 - Google Patents
基于脚本触发震动的手持设备视频播放方法 Download PDFInfo
- Publication number
- CN103927205A CN103927205A CN201410130692.1A CN201410130692A CN103927205A CN 103927205 A CN103927205 A CN 103927205A CN 201410130692 A CN201410130692 A CN 201410130692A CN 103927205 A CN103927205 A CN 103927205A
- Authority
- CN
- China
- Prior art keywords
- vibrations
- script
- video
- handheld device
- vibrating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提供一种基于脚本触发震动的手持设备视频播放方法,包括以下步骤:(1)获取并加载与手持设备相适应的待播放视频;(2)获取记载有震动事件的震动脚本;(3)解析震动脚本;(4)播放视频并实时监视视频播放进度,若震动脚本中的震动事件对应的时间与当前播放进度匹配,则在视频播放的同时调用震动马达触发震动,若无匹配的震动事件则继续播放直至视频播放结束。本发明的有益效果在于:不需要对视频文件做任何修改便可以使手持设备上的视频播放器具备根据视频内容进行震动输出的功能;对智能手持设备已有功能毫无影响,只需要现有的智能手持设备视频播放器进行简单升级或增加相应插件,操作简单,适用范围广。
Description
技术领域
本发明为一种改善手持设备视频观看体验的方法,属于信息技术领域,具体为一种基于脚本触发震动的手持设备视频播放方法。
背景技术
随着智能手持设备的普及,许多人已经习惯在手持设备上观看各类视频了,现有的通用视频播放软件目前只利用到了设备的屏幕与扩音器(或外接耳机)实现视觉与听觉输出,如果能配合视频内容播放的同时提供一些与内容相关的触觉输出,将极大改善用户使用手持设备观看视频时的体验(如视频中出现地震或枪战之类的激烈场面时同步输出幅度与时长相适的震动效果,或者可以给听觉障碍人士的用户输出更多触觉信息),现有的大多智能手持设备已经内置震动马达,如何在不改变视频文件本身的前提下利用设备的内置震动马达在视频播放时提供触觉输出成为极有价值的研究课题。
发明内容
本发明的目的在于研制一种新的技术方案,在不改变视频文件本身的前提下,利用手持设备内置的震动马达,为视频播放软件播放视频时提供震动输出的功能。
本发明的发明目的通过以下方案实现:
基于脚本触发震动的手持设备视频播放方法,包括以下步骤:
(1)获取并加载与手持设备相适应的待播放视频;
(2)获取记载有震动事件的震动脚本;
(3)解析震动脚本;
(4)播放视频并实时监视视频播放进度,若震动脚本中的震动事件对应的时间与当前播放进度匹配,则在视频播放的同时调用震动马达触发震动,若无匹配的震动事件则继续播放直至视频播放结束。
进一步地,步骤(1)到步骤(4)里提及的视频为存储在设备本地的文件或存储在网络上的流媒体文件;步骤(1)到步骤(4)里提及的震动脚本为存储在设备本地的文件或存储在网络上的数据;步骤(2)中还包括步骤(2-1):搜索本地目录查找与待播放视频对应的震动脚本,若找到对应的震动脚本则进入步骤(3);若未找到对应的震动脚本则进入步骤(2-2):搜索网络数据查找与待播放视频对应震动脚本,若找到对应的震动脚本则下载震动脚本并进入步骤(3)。
进一步地,步骤(2-2)中还包括步骤(2-2-1):若震动脚本来自网络,则根据默认设置或用户设置选择震动脚本下载策略,震动脚本下载策略包括分段下载和一次性完全下载两种;若当前震动脚本下载策略为分段下载,则进行分段下载,在当前震动脚本当前段落下载完毕后进入步骤(3)和步骤(4),在震动脚本文件当前段落对应的视频段落播放完成前预留一定时间进行下一震动脚本段落的下载,直至震动脚本下载完毕;若当前震动脚本下载策略为一次性完全下载,则在震动脚本文件下载完毕后进入步骤(3)和步骤(4)。
进一步地,所述震动脚本文件中震动事件由以时间轴为基线的震动参数表达,震动参数包括震动起始时间点、震动时长;步骤(4)中视频播放进度监视操作为播放时间轴监视。
进一步地,所述震动脚本文件中震动事件由以当前帧画面对应的起始帧画经历的时间为基线的震动参数表达,震动参数包括震动起始帧画面的播放时间、震动时长;步骤(4)中视频播放进度监视操作为帧画面经历的时间监视。
进一步地,所述震动事件的震动参数还包括震动幅度参数和/或震动频率参数。
进一步地,所述震动事件的震动参数还包括震动事件起始校验位和/或震动事件终了校验位。
作为震动脚本格式的优选方案,所述震动脚本文件为纯文本文件或设置有加密算法的二进制格式文件。
进一步地,步骤(3)包括:(3-1)打开震动脚本并定位到文件头;(3-2)逐行读取一行新数据,判断当前行是否符合预定的时间格式,若是则进入步骤(3-3),若否则进入步骤(3-4);(3-3)解析成时间数据添加到震动集合字典,并作为字典中一条记录的时间key值;(3-4)判断当前行是否符合预定的震动模式格式,若是则进入步骤(3-5),若否则进入步骤(3-6);(3-5)解析成震动模式记录并添加到震动集合字典,作为上一次时间key值对应的value值;(3-6)判断震动脚本是否读取完毕,若是则结束震动脚本解析,若否则返回步骤(3-2)。
优选地,所述与手持设备相适应的待播放视频格式包括MP4、rmvB。
本发明的有益效果在于:可以方便快捷的使智能手持设备上的视频播放器具备根据视频内容进行震动输出的功能,本方案采用外部脚本文件形式,不需要对视频文件做任何修改,因此可播放的片源充足;震动脚本既可以用纯文本格式(利用编辑与阅读),还可以用二进制编码(体积小,节省存储空间与网络传输量);对智能手持设备已有功能毫无影响,只需要现有的智能手持设备视频播放器进行简单升级或增加相应插件,操作简单,适用范围广。
附图说明
图1 为本发明操作步骤的流程图。
图2为本发明震动脚本解析步骤的流程图。
具体实施方式
以下结合具体实施例和附图对本发明作进一步说明:
实施例一
参照附图1所示,本发明的基于脚本触发震动的手持设备视频播放方法,包括以下步骤:
(1)获取并加载与手持设备相适应的待播放视频;
(2)获取记载有震动事件的震动脚本;
(3)解析震动脚本;
(4)播放视频并实时监视视频播放进度,若震动脚本中的震动事件对应的时间与当前播放进度匹配,则在视频播放的同时调用震动马达触发震动,若无匹配的震动事件则继续播放直至视频播放结束。
步骤(1)到步骤(4)里提及的视频为存储在设备本地的文件或存储在网络上的流媒体文件;步骤(1)到步骤(4)里提及的震动脚本为存储在设备本地的文件或存储在网络上的数据;步骤(2)中还包括步骤(2-1):搜索本地目录查找与待播放视频对应的震动脚本,若找到对应的震动脚本则进入步骤(3);若未找到对应的震动脚本则进入步骤(2-2):搜索网络数据查找与待播放视频对应震动脚本,若找到对应的震动脚本则下载震动脚本并进入步骤(3)。
步骤(2-2)中还包括步骤(2-2-1):若震动脚本来自网络,则根据默认设置或用户设置选择震动脚本下载策略,震动脚本下载策略包括分段下载和一次性完全下载两种;若当前震动脚本下载策略为分段下载,则进行分段下载,在当前震动脚本当前段落下载完毕后进入步骤(3)和步骤(4),在震动脚本文件当前段落对应的视频段落播放完成前预留一定时间进行下一震动脚本段落的下载,直至震动脚本下载完毕;若当前震动脚本下载策略为一次性完全下载,则在震动脚本文件下载完毕后进入步骤(3)和步骤(4)。
震动脚本文件中震动事件由以时间轴为基线的震动参数表达,震动参数包括震动起始时间点、震动时长;步骤(4)中视频播放进度监视操作为播放时间轴监视。
为对震动事件进行精细化区分,震动事件的震动参数还包括震动幅度参数和/或震动频率参数。当然这需要手持震动马达具备相应功能匹配。
为防止震动脚本被修改或因传输过程中出错导致震动事件与视频画面不匹配,震动事件的震动参数还包括震动事件起始校验位和/或震动事件终了校验位。
参照图2所示,本实施例中,为便于快速准确解析震动脚本,步骤(3)包括:(3-1)打开震动脚本并定位到文件头;(3-2)逐行读取一行新数据,判断当前行是否符合预定的时间格式,若是则进入步骤(3-3),若否则进入步骤(3-4);(3-3)解析成时间数据添加到震动集合字典,并作为字典中一条记录的时间key值;(3-4)判断当前行是否符合预定的震动模式格式,若是则进入步骤(3-5),若否则进入步骤(3-6);(3-5)解析成震动模式记录并添加到震动集合字典,作为上一次时间key值对应的value值;(3-6)判断震动脚本是否读取完毕,若是则结束震动脚本解析,若否则返回步骤(3-2)。
为适用于主流手持设备,与手持设备相适应的待播放视频格式包括MP4、rmvB、3gp等。
实施例二
本实施例与实施例一的不同之处在于:震动脚本文件中震动事件由以当前帧画面对应的起始帧画经历的时间为基线的震动参数表达,震动参数包括震动起始帧画面的播放时间、震动时长;步骤(4)中视频播放进度监视操作为帧画面经历的时间监视。本实施例同样也可以在震动脚本中设置震动幅度参数和/或震动频率参数以及校验位。
实施例三
本实施例以Android智能手机为例实施本发明。
以下步骤是该发明的一个简单实施例。
S1:获取一段mp4格式的视频文件(网上下载或自己用手机拍摄)。
S2:用Windows的记事本新建一个纯文本的脚本文件,文件内容按以下格式根据视频内容编辑好,保存为与视频文件主名称相同,但扩展名为.vib的新文件。
震动脚本格式:震动脚本是一段视频的震动触发时间与震动模式的集合。当视频是设备本地的文件时,脚本为与视频主文件名相同,但扩展名为.vib的纯文本文件,内容格式为第N行(N为大于0的整数)表示触发震动的时间,时间格式为:两位0到9的整数表示时: 两位0到9的整数表示分: 两位0到9的整数表示秒.三位0到9的整数表示毫秒。如01:23:45.678表示第一小时二十三分四十五秒六百七十八毫秒。文件的第N+1行表示第N行的时间点触发的震动的震动模式,模式用整数1,整数2,整数3,…,整数n-1,整数n的格式表示,从整数1开始,整数n表示震动的时长,整数n+1表示震动n与n+2之前的间隔,单位都为毫秒,如100,200,300表示震动100毫秒,停止震动200毫秒,震动300毫秒,停止震动。(由于现有的Android手机及Android操作系统不支持震动幅度与频率参数,所以本实施例的震动模式不包含震动幅度与频率)。
一个完整的震动脚本示例如下:
00:00:03.735
65,60,75,98,51,79,60
00:00:11.331
51,154,42
00:00:15.889
60,192,46
00:00:20.457
51,117,60,131,42,144,65,144,51,121,46,131,46,145,42
00:00:24.547
56
00:00:26.737
140,449,107,360,168
S3:将该脚本文件与视频文件一起放在Android手机的SD卡根目录。
S4:在eclipse(一款开源IDE)里用谷歌公司提供的Android开发包建立一个Android应用项目。
S5:在应用的启动Activity里添加一个VideoView控件及一个触发播放的按钮PlayButton。
S6:在Activity的onCreate方法里将VideoView控件视频文件路径通过setVideoPath设置为S2步骤里格式视频文件的路径。
S7:在Activity的onCreate方法解析S2步骤里的震动脚本文件并将解析后的震动触发时间与震动模式的集合保存到内存。
S8:在Activity的onCreate方法里调用VideoView的setOnPreparedListener方法实现MediaPlayer.OnPreparedListener接口的onPrepared方法,onPrepared里新建一个monitorVideoProgress的线程,该线程的负责监视视频播放进度。
S9:在Activity的onCreate方法里调用PlayButton的setOnClickListener方法实现View.OnClickListener接口的onClick方法,按方法在PlayButton被点击时调用VideoView的start方法开始播放视频。
S10:在Activity的onCreate方法里调用PlayButton的setOnClickListener方法实现View.OnClickListener接口的onClick方法,该方法在PlayButton被点击时调用VideoView的start方法开始播放视频。
S11:实现S8步骤里monitorVideoProgress的线程Runnable接口的run方法,该方法循环的每10毫秒用VideoView的getCurrentPosition方法获取一次视频播放的进度,如果视频的播放时间和S7步骤获取的震动时间集合里的任一值差值在10毫秒内,调用Vibrator类的vibrate方法按震动时间对应的震动模式触发震动马达震动。
S12:实施Activity的onDestroy方法,在该方法里停止monitorVideoProgress线程。
虽然本发明已通过参考优选的实施例进行了图示和描述,但是,本领域普通技术人员应当了解,可以不限于上述实施例的描述,在权利要求书的范围内,可作出形式和细节上的各种变化。
Claims (10)
1.基于脚本触发震动的手持设备视频播放方法,其特征在于包括以下步骤:
(1)获取并加载与手持设备相适应的待播放视频;
(2)获取记载有震动事件的震动脚本;
(3)解析震动脚本;
(4)播放视频并实时监视视频播放进度,若震动脚本中的震动事件对应的时间与当前播放进度匹配,则在视频播放的同时调用震动马达触发震动,若无匹配的震动事件则继续播放直至视频播放结束。
2.根据权利要求1所述的基于脚本触发震动的手持设备视频播放方法,其特征在于:步骤(1)到步骤(4)里提及的视频为存储在设备本地的文件或存储在网络上的流媒体文件;步骤(1)到步骤(4)里提及的震动脚本为存储在设备本地的文件或存储在网络上的数据;步骤(2)中还包括步骤(2-1):搜索本地目录查找与待播放视频对应的震动脚本,若找到对应的震动脚本则进入步骤(3);若未找到对应的震动脚本则进入步骤(2-2):搜索网络数据查找与待播放视频对应震动脚本,若找到对应的震动脚本则下载震动脚本并进入步骤(3)。
3.根据权利要求2所述的基于脚本触发震动的手持设备视频播放方法,其特征在于步骤(2-2)中还包括步骤(2-2-1):若震动脚本来自网络,则根据默认设置或用户设置选择震动脚本下载策略,震动脚本下载策略包括分段下载和一次性完全下载两种;若当前震动脚本下载策略为分段下载,则进行分段下载,在当前震动脚本当前段落下载完毕后进入步骤(3)和步骤(4),在震动脚本文件当前段落对应的视频段落播放完成前预留一定时间进行下一震动脚本段落的下载,直至震动脚本下载完毕;若当前震动脚本下载策略为一次性完全下载,则在震动脚本文件下载完毕后进入步骤(3)和步骤(4)。
4.根据权利要求1所述的基于脚本触发震动的手持设备视频播放方法,其特征在于:所述震动脚本文件中震动事件由以时间轴为基线的震动参数表达,震动参数包括震动起始时间点、震动时长;步骤(4)中视频播放进度监视操作为播放时间轴监视。
5.根据权利要求1所述的基于脚本触发震动的手持设备视频播放方法,其特征在于:所述震动脚本文件中震动事件由以当前帧画面对应的起始帧画经历的时间为基线的震动参数表达,震动参数包括震动起始帧画面的播放时间、震动时长;步骤(4)中视频播放进度监视操作为帧画面经历的时间监视。
6.根据权利要求4或5所述的基于脚本触发震动的手持设备视频播放方法,其特征在于:所述震动事件的震动参数还包括震动幅度参数和/或震动频率参数。
7.根据权利要求4或5所述的基于脚本触发震动的手持设备视频播放方法,其特征在于:所述震动事件的震动参数还包括震动事件起始校验位和/或震动事件终了校验位。
8.根据权利要求1所述的基于脚本触发震动的手持设备视频播放方法,其特征在于:所述震动脚本文件为纯文本文件或设置有加密算法的二进制格式文件。
9.根据权利要求1所述的基于脚本触发震动的手持设备视频播放方法,其特征在于步骤(3)包括:(3-1)打开震动脚本并定位到文件头;(3-2)逐行读取一行新数据,判断当前行是否符合预定的时间格式,若是则进入步骤(3-3),若否则进入步骤(3-4);(3-3)解析成时间数据添加到震动集合字典,并作为字典中一条记录的时间key值;(3-4)判断当前行是否符合预定的震动模式格式,若是则进入步骤(3-5),若否则进入步骤(3-6);(3-5)解析成震动模式记录并添加到震动集合字典,作为上一次时间key值对应的value值;(3-6)判断震动脚本是否读取完毕,若是则结束震动脚本解析,若否则返回步骤(3-2)。
10.根据权利要求1所述的基于脚本触发震动的手持设备视频播放方法,其特征在于:所述与手持设备相适应的待播放视频格式包括MP4、rmvB。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410130692.1A CN103927205A (zh) | 2014-03-28 | 2014-03-28 | 基于脚本触发震动的手持设备视频播放方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410130692.1A CN103927205A (zh) | 2014-03-28 | 2014-03-28 | 基于脚本触发震动的手持设备视频播放方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103927205A true CN103927205A (zh) | 2014-07-16 |
Family
ID=51145435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410130692.1A Pending CN103927205A (zh) | 2014-03-28 | 2014-03-28 | 基于脚本触发震动的手持设备视频播放方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103927205A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105657545A (zh) * | 2015-11-17 | 2016-06-08 | 乐视云计算有限公司 | 视频播放的方法及装置 |
CN106657975A (zh) * | 2016-10-10 | 2017-05-10 | 乐视控股(北京)有限公司 | 视频播放方法及设备 |
WO2017101523A1 (zh) * | 2015-12-15 | 2017-06-22 | 乐视控股(北京)有限公司 | 可穿戴设备的控制方法及装置 |
CN107580247A (zh) * | 2017-08-30 | 2018-01-12 | 瑞声科技(新加坡)有限公司 | 震动播放方法及装置、电子设备 |
CN107613356A (zh) * | 2017-08-30 | 2018-01-19 | 瑞声科技(新加坡)有限公司 | 媒体和震动同步播放方法及装置、电子设备以及存储介质 |
CN108235099A (zh) * | 2018-01-12 | 2018-06-29 | 瑞声科技(新加坡)有限公司 | 一种媒体与振动的同步播放方法及其装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101346741A (zh) * | 2005-12-22 | 2009-01-14 | 皇家飞利浦电子股份有限公司 | 通过嵌入水印实现脚本同步 |
CN101690238A (zh) * | 2007-07-06 | 2010-03-31 | 安布克斯英国有限公司 | 用于使内容流和用于在多媒体系统中输出一个或多个感官效果的脚本同步的方法 |
WO2010148075A2 (en) * | 2009-06-16 | 2010-12-23 | Google Inc. | Standard commands for native commands |
-
2014
- 2014-03-28 CN CN201410130692.1A patent/CN103927205A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101346741A (zh) * | 2005-12-22 | 2009-01-14 | 皇家飞利浦电子股份有限公司 | 通过嵌入水印实现脚本同步 |
CN101690238A (zh) * | 2007-07-06 | 2010-03-31 | 安布克斯英国有限公司 | 用于使内容流和用于在多媒体系统中输出一个或多个感官效果的脚本同步的方法 |
WO2010148075A2 (en) * | 2009-06-16 | 2010-12-23 | Google Inc. | Standard commands for native commands |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105657545A (zh) * | 2015-11-17 | 2016-06-08 | 乐视云计算有限公司 | 视频播放的方法及装置 |
WO2017101523A1 (zh) * | 2015-12-15 | 2017-06-22 | 乐视控股(北京)有限公司 | 可穿戴设备的控制方法及装置 |
CN106657975A (zh) * | 2016-10-10 | 2017-05-10 | 乐视控股(北京)有限公司 | 视频播放方法及设备 |
CN107580247A (zh) * | 2017-08-30 | 2018-01-12 | 瑞声科技(新加坡)有限公司 | 震动播放方法及装置、电子设备 |
CN107613356A (zh) * | 2017-08-30 | 2018-01-19 | 瑞声科技(新加坡)有限公司 | 媒体和震动同步播放方法及装置、电子设备以及存储介质 |
CN107580247B (zh) * | 2017-08-30 | 2021-07-09 | 瑞声科技(新加坡)有限公司 | 震动播放方法及装置、电子设备 |
CN108235099A (zh) * | 2018-01-12 | 2018-06-29 | 瑞声科技(新加坡)有限公司 | 一种媒体与振动的同步播放方法及其装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10841661B2 (en) | Interactive method, apparatus, and system in live room | |
US9786326B2 (en) | Method and device of playing multimedia and medium | |
CN103927205A (zh) | 基于脚本触发震动的手持设备视频播放方法 | |
CN107396177B (zh) | 视频播放方法、装置及存储介质 | |
JP7423134B2 (ja) | インタラクティブシーンの起動方法、装置、コンピュータプログラム、クライアント側及びサーバー | |
KR102040754B1 (ko) | 추천 콘텐츠에 기초한 상호작용 방법, 단말기 및 서버 | |
EP3029678A1 (en) | Recording method, playing method, device, terminal and system | |
KR20060034144A (ko) | 멀티미디어 콘텐츠의 갱신 및 재생이 가능한이동통신단말기 및 그 재생방법 | |
CN111966275B (zh) | 程序试用方法、系统、装置、设备及介质 | |
US10148993B2 (en) | Method and system for programmable loop recording | |
CN104202655B (zh) | 一种音视频文件下载方法及装置 | |
CN104780403A (zh) | 基于脚本的体感视频提供系统及方法 | |
CN105657498A (zh) | 移动终端的视频录制方法和装置 | |
CN106921883B (zh) | 一种视频播放处理的方法及装置 | |
CN105979188A (zh) | 一种视频录制方法及装置 | |
EP3264750A1 (en) | Method, device and system for recording television program | |
CN111432278A (zh) | 视频控制方法、装置、终端及存储介质 | |
CN110337041B (zh) | 视频播放方法、装置、计算机设备及存储介质 | |
CN112351323A (zh) | 一种显示设备及视频集锦文件的生成方法 | |
JP2014106648A (ja) | リプレイ動画像作成システム、リプレイ動画像作成端末、リプレイ動画像データ作成方法、およびプログラム | |
US20240193206A1 (en) | Interaction method and apparatus, electronic device, and computer-readable storage medium | |
US20130117464A1 (en) | Personalized media filtering based on content | |
CN105893020A (zh) | 录屏启动方法、装置及移动终端 | |
WO2015193748A1 (en) | Information acquiring apparatus and method, and electronic device | |
CN106060609B (zh) | 获取图片的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140716 |
|
WD01 | Invention patent application deemed withdrawn after publication |