视频拍摄方法及装置制造方法及图纸

技术编号:12194244 阅读:64 留言:0更新日期:2015-10-14 02:37
本发明专利技术实施例公开了一种视频拍摄方法及装置,属于多媒体处理领域。所述方法包括:如果在状态机处于停止状态时接收到开始事件,则将状态机由停止状态切换为开始准备状态,并开始调用系统拍摄的开始API;缓存在开始准备状态接收到的控制事件;在系统拍摄的开始API调用成功后,将状态机由开始准备状态切换为正在录制状态;在状态机处于正在录制状态时,对缓存的控制事件进行响应或丢弃。本发明专利技术实施例解决了目前的状态机导致视频拍摄方法在多段拍摄以及快速拍摄的过程中容易出错的问题;达到了使用更为合理的状态机来控制拍摄过程,实现分段断点拍摄、快速拍摄等精细化拍摄过程,且避免出错的效果。

【技术实现步骤摘要】

本专利技术实施例涉及多媒体处理领域,特别涉及一种视频拍摄方法及装置
技术介绍
短视频分享是目前在诸如智能手机、平板电脑和多媒体播放器等移动终端上非常流行的一种功能。用户可以通过智能手机拍摄简短的几秒视频来分享给好友,使得短视频能够像微博一样来传播信息。在采用Android系统的移动终端上,短视频分享App (Applicat1n,应用程序)可以调用Android系统内置的MediaRecorder (媒体记录)程序来拍摄视频。目前的MediaRecorder基于一个简单状态机来控制,该简单状态机包括:初始状态、准备状态和正在录制状态,当接收到用户的开始事件时,该简单状态机由准备状态切换为正在录制状态,开始调用MediaRecorder来拍摄视频;当接收到用户的结束事件时,该简单状态机由正在录制状态切换为初始状态,结束拍摄。在实现本专利技术实施例的过程中,专利技术人发现
技术介绍
至少存在以下问题:在某一状态下执行非法操作时,上述简单状态机会出错或抛出异常,例如:如果在准备状态下接收到用户的结束事件,就会导致异常。而用户使用触摸屏来触发拍摄过程的开始事件和结束事件时,有很大的突然性,导致上述视频拍摄方法在实际使用时的出错率很高,比如,在多段拍摄以及快速拍摄的过程中,目前的状态机的出错率很高。
技术实现思路
为了解决目前的状态机导致视频拍摄方法在多段拍摄以及快速拍摄的过程中容易出错的问题,本专利技术实施例提供了一种视频拍摄方法及装置。所述技术方案如下:第一方面,提供了一种视频拍摄方法,所述方法包括:如果在状态机处于停止状态时接收到开始事件,则将所述状态机由所述停止状态切换为开始准备状态,并开始调用系统拍摄的开始应用程序编程接口 API ;如果在所述开始准备状态接收到控制事件,则缓存所述控制事件;在所述系统拍摄的开始API调用成功后,将所述状态机由所述开始准备状态切换为正在录制状态;在所述状态机为正在录制状态时,对缓存的所述控制事件进行响应或丢弃。可选地,所述如果在所述开始准备状态接收到控制信号时,缓存所述控制信号,包括:如果在所述开始准备状态接收到所述开始事件,则缓存所述开始事件为未决开始事件;如果在所述开始准备状态接收到停止事件,则缓存所述停止事件为未决停止事件。可选地,所述对缓存的所述控制事件进行响应或丢弃,包括:如果缓存的所述控制事件为所述未决开始事件,则丢弃所述未决开始事件并保持所述状态机的当前状态不变;如果缓存的所述控制事件为所述未决停止事件,则将所述状态机由所述正在录制状态切换为停止准备状态,并开始调用系统拍摄的停止API ;在所述系统拍摄的停止API调用成功后,将所述状态机由所述停止准备状态切换为所述停止状态。可选地,所述方法,还包括:如果在所述状态机处于所述停止准备状态时接收到所述开始事件或所述停止事件,则保持所述状态机的当前状态不变。可选地,所述方法,还包括:如果在所述状态机处于所述停止状态时接收到所述停止事件或未知事件,则保持所述状态机的当前状态不变。可选地,所述方法,还包括:如果接收到任一异常事件,将所述状态机由当前状态保持或切换至所述停止状态。第二方面,提供了一种视频拍摄装置,所述装置包括:拍摄调用模块,用于如果在状态机处于停止状态时接收到开始事件,则将所述状态机由所述停止状态切换为开始准备状态,并开始调用系统拍摄的开始应用程序编程接口API ;事件缓存模块,用于如果在所述开始准备状态接收到控制事件,则缓存所述控制事件;开始录制模块,用于在所述系统拍摄的开始API调用成功后,将所述状态机由所述开始准备状态切换为正在录制状态;缓存响应模块,用于在所述状态机处于正在录制状态时,对缓存的所述控制事件进行响应或丢弃。可选地,所述事件缓存模块,包括:第一缓存单元和第二缓存单元;所述第一缓存单元,用于如果在所述开始准备状态接收到所述开始事件,则缓存所述开始事件为未决开始事件;所述第二缓存单元,用于如果在所述开始准备状态接收到停止事件,则缓存所述停止事件为未决停止事件。可选地,所述缓存响应模块,包括:事件丢弃单元和事件响应单元;所述事件丢弃单元,用于如果缓存的所述控制事件为所述未决开始事件,则丢弃所述未决开始事件并保持所述状态机的当前状态不变;所述事件响应单元,用于如果缓存的所述控制事件为所述未决停止事件,则将所述状态机由所述正在录制状态切换为停止准备状态,并开始调用系统拍摄的停止API ;在所述系统拍摄的停止API调用成功后,将所述状态机由所述停止准备状态切换为所述停止状态。可选地,所述装置,还包括:第一保持模块,用于如果在所述状态机处于所述停止准备状态时接收到所述开始事件或所述停止事件,则保持所述状态机的当前状态不变。可选地,所述装置,还包括:第二保持模块,用于如果在所述状态机处于所述停止状态时接收到所述停止事件或未知事件,则保持所述状态机的当前状态不变。可选地,所述装置,还包括:异常处理模块,用于如果接收到任一异常事件,将所述状态机由当前状态保持或切换至所述停止状态。本专利技术实施例提供的技术方案带来的有益效果是:通过将状态机处于开始准备状态时接收到的控制事件进行缓存,直到状态机处于正在录制状态时才开始处理缓存的控制事件;解决了目前的状态机导致视频拍摄方法在多段拍摄以及快速拍摄的过程中容易出错的问题;达到了使用更为合理的状态机来控制拍摄过程,实现分段断点拍摄、快速拍摄等精细化拍摄过程,且避免出错的效果。【附图说明】为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术一个实施例提供的视频拍摄方法的方法流程图;图2是本专利技术实施例涉及的状态机的结构示意图;图3是本专利技术另一实施例提供的视频拍摄方法的方法流程图;图4是本专利技术再一实施例提供的视频拍摄方法在实施时的界面示意图;图5是本专利技术一个实施例提供的视频拍摄装置的结构示意图;图6是本专利技术另一实施例提供的视频拍摄装置的结构示意图;图7是本专利技术一个实施例提供的移动终端的结构方框图。【具体实施方式】为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。专利技术人在实现本专利技术实施例的过程中发现,由于调用MediaRecorder的开始API和MediaRecorder的停止API时,都不能马上返回结果,大概需要几百毫秒的响应时间。这段时间如果接收到非法操作,非常容易导致异常。为此,专利技术人重新设计了更为合理的状态机来控制MediaRecorder (媒体录制),以避免上述异常的发生。其中,开始API 可以为:MediaRecorder.start ()(媒体录制.开始())结束API 可以为:MediaRecorder.stop ()(媒体录制.结束())请参考图1,其示出了本专利技术一个实施例提供的视频拍摄方法的方法流程图。该视频拍摄方法应用于电子设备中,特别是采用Android操作系统的电子设备。该方法包括:步骤102,如果在状态机处于停止状态时接收到开始事件,则将状态机由停止状态切换为开始准备状态,并开始调用系统拍摄的开始应本文档来自技高网...

【技术保护点】
一种视频拍摄方法,其特征在于,所述方法包括:如果在状态机处于停止状态时接收到开始事件,则将所述状态机由所述停止状态切换为开始准备状态,并开始调用系统拍摄的开始应用程序编程接口API;如果在所述开始准备状态接收到控制事件,则缓存所述控制事件;在所述系统拍摄的开始API调用成功后,将所述状态机由所述开始准备状态切换为正在录制状态;在所述状态机处于所述正在录制状态时,对缓存的所述控制事件进行响应或丢弃。

【技术特征摘要】

【专利技术属性】
技术研发人员:吴凯刘伟
申请(专利权)人:腾讯科技北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1