本发明专利技术适用于视频领域,提供了一种视频的录制/播放方法及录制/播放装置,录制方法包括:将录制过程中的每一个操作以节点的形式添加到消息队列中;周期性的从所述消息队列中读取节点数据;将读取到的节点数据转换成相应的二进制数据流;将所述二进制数据流存储至录制文件中。本发明专利技术通过将每一个操作以节点的形式添加到消息队列,再将节点数据转换成相应的二进制数据流,可大大缩小录制文件的大小。
【技术实现步骤摘要】
一种视频的录制/播放方法及录制/播放装置
本专利技术属于视频
,尤其涉及一种视频的录制/播放方法及录制/播放装置。
技术介绍
当今社会,网络的发展已普及到人们的生活中,移动互联网时代的来临,给人们的生活带来了很多便利。近几年电子书包、移动互联网教学在教育领域中也不断的被推广使用。由于在移动互联网中人们在移动数据流量上的花费越来越多,因此流量消耗成为了人们衡量是否选用一些应用软件的关键因素。在移动互联网教学中关键的技术是视频的录制技术,现有的视频录制技术中,例如用户在画板上手写一个“一”字,则会将包含“一”字的画板作为整个图片提取存储起来,以供后续播放时调取使用,这种处理方式会使录制后的文件很大,会消耗很大流量,而且不便于在移动互联网上传输。综上所述,现有的视频录制技术所录制的文件较大。
技术实现思路
本专利技术实施例的目的在于提供一种视频的录制方法,旨在解决现有的视频录制技术所录制的文件较大的问题。本专利技术实施例是这样实现的,一种视频的录制方法,所述方法包括:将录制过程中的每一个操作以节点的形式添加到消息队列中;周期性的从所述消息队列中读取节点数据;将读取到的节点数据转换成相应的二进制数据流;将所述二进制数据流存储至录制文件中。本专利技术实施例还提供了一种视频的播放方法,所述方法包括:读取录制文件;将录制文件中的二进制数据流转换成相应的节点数据;将转换后的节点数据添加到消息队列中;从消息队列中读取节点数据;将节点数据以绘图方式绘制成相应操作;将绘制的操作显示出来。本专利技术实施例还提供了一种视频的录制装置,所述装置包括:节点单元,用于在录制过程中将每一个操作以节点的形式添加到消息队列中;读取单元,用于周期性的从所述消息队列中读取节点数据;转换单元,用于将读取到的节点数据转换成相应的二进制数据流;存储单元,用于将所述二进制数据流存储至录制文件中。本专利技术实施例还提供了一种视频的播放装置,所述装置包括:第一读取单元,用于读取录制文件;转换单元,用于将录制文件中的二进制数据流转换成相应的节点数据;添加单元,用于将转换后的节点数据添加到消息队列中;第二读取单元,用于从消息队列中读取节点数据;绘制单元,用于将节点数据以绘图方式绘制成相应操作;显示单元,用于将绘制的操作显示出来。本专利技术实施例与现有技术相比,有益效果在于:通过将每一个操作以节点的形式添加到消息队列,再将节点数据转换成相应的二进制数据流,可大大缩小录制文件的大小。附图说明图1是本专利技术实施例提供的视频的录制方法的流程图;图2是本专利技术实施例提供的应用场景例示意图;图3是本专利技术实施例提供的视频的播放方法的流程图;图4是本专利技术实施例提供的另一个应用场景例示意图;图5是本专利技术实施例提供的视频的录制装置的逻辑结构示意图;图6是本专利技术实施例提供的视频的播放装置的逻辑结构示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例提供的实施方案如下:请参阅图1,本专利技术实施例提供了一种视频的录制方法,其特征在于,所述方法包括:101、将录制过程中的每一个操作以节点的形式添加到消息队列中。在录制过程中,可按照时序进行添加。其中,所述操作指在视频录制的过程中,用户在画板上进行写字、擦除所写字、插入图片及清屏等行为。当然还可以包括其他操作,在此不一一列举。所述节点由输入输出和中间计算三部分构成。一般情况下,一个节点可通过一定途径取得数据作为自身计算的依据,然后在内部进行计算,最后将计算结果按要求输出。比如,在画板上写一个“一”字,现有技术会则将包含“一”字的画板作为整个图片提取存储起来,以供后续播放时调取使用。而本专利技术在该步骤中则会将在画板上写的“一”以节点的形式添加到消息队列中,再经过后续步骤102到104的处理,就可以达到大大缩小录制文件的大小的目的。该消息队列与后续播放中的消息队列不是同一个队列,但是二者类型一致。其中,消息队列具体可采用链表类型或索引类型的消息队列;优选索引类型的消息队列,当采用索引类型的消息队列时,读取数据的效率会比较高。请参阅图2,为了更好的解释所述操作,具体说明如下:录制过程中的每一个操作是指从录制开始到录制结束之间的每一个操作。包括录制过程中使用每一个应用工具的所产生的操作。本专利技术实施例中所述应用工具包括画笔、插入图片及清屏;以应用工具画笔为例,比如录制开始后,先点击“画笔”功能按钮以执行画笔的操作,然后依次手写“一个时代的代表”然后再点击了“停止录制”按钮,那么这个过程中从录制开始时到手写“一”之前的空闲状态视为操作;手写的每个字都视为操作,手写每个字之间的空闲状态也视为操作,手写的每个字本身笔画之间的空闲状态也视为操作,写完“表”之后到点击“停止录制”按钮之间的空闲状态也视为操作。以应用工具插入图片为例,如图,先点击“插入图片”功能按钮以执行图片插入操作,然后从图片文件中调出家驹的图片,找好位置,调整好图片大小,放置家驹的图片,然后点击“停止录制”按钮,那么这个过程中将插入的图片的大小及图片的位置视为操作。以应用工具清屏为例,如图,点击“清屏”功能按钮,便会实现清屏功能。这个过程中,将无实际内容视为操作。在本专利技术实施例中,步骤101之前还包括以下步骤:预先设置所要录制的视频的宽、高及录制帧率。当录制开始后,则将所要录制的视频的宽、高及录制帧率放入到预先创建的头文件中。102、周期性的从所述消息队列中读取节点数据;在本步骤中具体可每隔10~50ms读取一次节点数据。更优选的可每隔20ms读取一次节点数据,这样不易漏读数据,还会使插入的音频与视频同步播放效果好。103、将读取到的节点数据转换成相应的二进制数据流。在本步骤中,可每隔一定的时间优选为100ms将时间戳加在相应的二进制数据流的后面,用于使插入的音频和视频同步。104、将所述二进制数据流存储至录制文件中。通过将每一个操作以节点的形式添加到消息队列,再将节点数据转换成相应的二进制数据流,可大大缩小录制文件的大小,甚至可缩小到现有技术所录制视频文件的1/10。在本专利技术的实施例中,所述103将读取到的节点数据转换成相应的二进制数据流之后还包括以下步骤:将转换的二进制数据流存储到缓冲内存中;所述将所述二进制数据流存储至录制文件中的步骤之后还包括:周期性的清除缓冲内存中所存储的二进制数据流。具体可每隔5s清除一次数据。通过周期清除存储空间,不会导致录制程序的崩溃。若不及时清除还可能会导致丢失数据。在本专利技术实施例中,所述102周期性的从所述消息队列中读取节点数据之后还包括以下步骤:将读取到的节点数据存储到缓冲内存中;当读取到的节点数据所占用的内存大小超过预先设置的阈值时,则清除缓冲内存中所存储的节点数据。效果通过及时清除存储空间,不会导致录制程序的崩溃,若不及时清除还会导致丢失数据,因此还可有效防止数据溢出。在本专利技术实施例中,所述方法还包括以下步骤:预先设置录制文件的格式。参照表1至表3及示例对文件的格式说明如下:表1头文件、头文件示例:0000000000000000000000000000000001000002000001305258B6513F35F1本文档来自技高网...
【技术保护点】
一种视频的录制方法,其特征在于,所述方法包括:将录制过程中的每一个操作以节点的形式添加到消息队列中;周期性的从所述消息队列中读取节点数据;将读取到的节点数据转换成相应的二进制数据流;将所述二进制数据流存储至录制文件中。
【技术特征摘要】
1.一种视频的录制方法,其特征在于,所述方法包括:将录制过程中的每一个操作以节点的形式添加到消息队列中;所述操作包括在视频录制的过程中,用户在画板上写字、擦除所写字、插入图片及清屏的操作;周期性的从所述消息队列中读取节点数据;将读取到的节点数据转换成相应的二进制数据流;将所述二进制数据流存储至录制文件中。2.如权利要求1所述的方法,其特征在于,所述将读取到的节点数据转换成相应的二进制数据流的步骤之后还包括以下步骤:将转换的二进制数据流存储到缓冲内存中;所述将所述二进制数据流存储至录制文件中的步骤之后还包括:周期性的清除缓冲内存中所存储的二进制数据流。3.如权利要求1或2所述的方法,其特征在于,所述周期性的从所述消息队列中读取节点数据的步骤之后还包括以下步骤:将读取到的节点数据存储到缓冲内存中;当读取到的节点数据所占用的内存大小超过预先设置的阈值时,则清除缓冲内存中所存储的节点数据。4.如权利要求1所述的方法,其特征在于,所述方法还包括以下步骤:预先设置录制文件的格式。5.如权利要求1所述的方法,其特征在于,所述将所述二进制数据流存储至录制文件中的步骤之后还包括以下步骤:将所述录制文件进行压缩。6.一种视频的播放方法,其特征在于,所述方法包括:读取录制文件;将录制文件中的二进制数据流转换成相应的节点数据;将转换后的节点数据添加到消息队列中;从消息队列中读取节点数据;将节点数...
【专利技术属性】
技术研发人员:刘志俊,
申请(专利权)人:深圳习习网络科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。