移动终端及其基于录屏的视频补帧方法、计算机存储介质技术

技术编号:21917723 阅读:29 留言:0更新日期:2019-08-21 13:36
本申请公开了一种移动终端及其基于录屏的视频补帧方法、计算机存储介质,该视频补帧方法包括:将录屏API生成的视频帧写入内存缓存列表;在设定时间内,根据内存缓存列表中的视频帧数量,判断屏幕画面状态;当屏幕画面状态处于画面完全静止状态时,则重复发送内存缓存列表表头的视频帧;当屏幕画面状态处于第一画面状态时,则按照视频帧写入内存缓存列表的时序发送视频帧。通过上述方式,能够在录制视频中视频帧返回不恒定时进行补帧,以防止画面跳跃的问题。

Mobile Terminal and Video Filling Method Based on Video Recording and Computer Storage Media

【技术实现步骤摘要】
移动终端及其基于录屏的视频补帧方法、计算机存储介质
本申请涉及视频处理
,特别是涉及一种移动终端及其基于录屏的视频补帧方法、计算机存储介质。
技术介绍
IOS(原名iPhoneOS,自IOS4后改名为IOS)是为一些移动设备所开发的专有移动操作系统,所支持的设备包括iPhone、iPodtouch和iPad。ReplayKit是IOS对屏幕进行直播推出的框架,ReplayKit框架作用是从屏幕录制或流式传输视频,以及来自应用和麦克风的音频。使用ReplayKit框架,用户可以从屏幕录制视频,从应用程序和麦克风录制音频。由于ReplayKit每秒返回的视频帧数量不恒定,会出现视频帧漏掉导致画面跳跃的问题。
技术实现思路
为解决上述问题,本申请提供了一种移动终端及其基于录屏的视频补帧方法、计算机存储介质,能够在视频帧返回不恒定时进行补帧,以防止画面跳跃的问题。本申请采用的一个技术方案是:将录屏API生成的视频帧写入内存缓存列表;在设定时间内,根据所述内存缓存列表中的视频帧数量,判断屏幕画面状态;当所述屏幕画面状态处于画面完全静止状态时,则重复发送所述内存缓存列表表头的视频帧;当所述屏幕画面状态处于第一画面状态时,则按照所述视频帧写入所述内存缓存列表的时序发送所述视频帧。其中,所述重复发送所述内存缓存列表表头的视频帧的步骤,进一步包括:保存初始获取的第一视频帧;创建定时器;利用所述定时器按照预设频率重复发送所述第一视频帧。其中,所述按照所述视频帧写入所述内存缓存列表的时序发送所述视频帧的步骤,进一步包括:将初始获取的第一视频帧写入所述内存缓存列表,其中,所述内存缓存列表的列表头中至少保存有所述第一视频帧;按照时序获取所述录屏产生的第二视频帧时,将所述第一视频帧存储到所述内存缓存列表中除列表头外的列表位置,并将所述第二视频帧插入所述内存缓存列表的列表头。其中,所述按照预设频率发送所述内存缓存列表的列表头对应的所述第二视频帧的步骤,包括:创建定时器;利用所述定时器按照所述预设频率发送所述内存缓存列表的列表头对应的所述第一视频帧和所述第二视频帧;其中,所述预设频率为每秒30次。其中,所述利用所述定时器按照所述预设频率发送所述内存缓存列表的列表头对应的所述第一视频帧或所述第二视频帧的步骤之后,还包括:判断所述内存缓存列表中的视频帧的数量是否大于或等于2;若是,则删除所述内存缓存列表中除列表头外的列表位置的视频帧。其中,所述第一画面状态为画面非完全静止状态;所述在设定时间内,根据所述内存缓存列表中的视频帧数量,判断屏幕画面状态的步骤,进一步包括:计算录屏产生的所述视频帧数量;判断所述视频帧数量是否大于1且小于预设视频帧数量;若是,则确定所述屏幕画面状态处于所述画面非完全静止状态。其中,所述判断屏幕画面状态的步骤,进一步包括:计算录屏产生的所述视频帧数量;判断所述视频帧数量是否为1;若是,则确定所述屏幕画面状态处于画面完全静止状态。本申请采用的另一个技术方案是:提供一种移动终端,所述移动终端包括:获取模块,用于将录屏API生成的视频帧写入内存缓存列表;处理模块,用于在设定时间内,根据所述内存缓存列表中的视频帧数量,判断屏幕画面状态;视频帧发送模块,用于当所述屏幕画面状态处于画面完全静止状态时,则重复发送所述内存缓存列表表头的视频帧;所述视频帧发送模块,还用于当所述屏幕画面状态处于第一画面状态时,则按照所述视频帧写入所述内存缓存列表的时序发送所述视频帧。本申请采用的另一个技术方案是:提供一种移动终端,该移动终端包括处理器、存储器以及显示屏;其中,显示屏用于显示画面,存储器用于存储程序数据,处理器用于执行程序数据以实现如上述的视频补帧方法。本申请采用的另一个技术方案是:提供一种计算机存储介质,其特征在于,计算机存储介质存储有程序数据,程序数据在被处理器执行时,用以实现如上述的视频补帧方法。本申请提供的一种录屏中的视频补帧方法包括:将录屏API生成的视频帧写入内存缓存列表;在设定时间内,根据内存缓存列表中的视频帧数量,判断屏幕画面状态;当屏幕画面状态处于画面完全静止状态时,则重复发送内存缓存列表表头的视频帧;当屏幕画面状态处于第一画面状态时,则按照视频帧写入内存缓存列表的时序发送视频帧。通过在录制视频中出现视频帧返回不恒定的情况时,对视频帧进行补帧处理,使得最终的视频能够连续播放,而不会出现由于漏掉视频帧导致的画面跳跃的问题,为视频录制、网络直播等产品提供底层技术支持。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:图1是本申请基于录屏API的视频补帧方法第一实施例的流程示意图;图2是图1中完全静止状态的视频补帧方法的流程示意图;图3是本申请基于录屏API的视频补帧方法第二实施例的流程示意图;图4是本申请基于录屏API的视频补帧方法第三实施例的流程示意图;图5是本申请基于录屏API的视频补帧方法第四实施例的流程示意图;图6是本申请移动终端第一实施例的结构示意图;图7是本申请移动终端第二实施例的结构示意图;图8是本申请计算机存储介质一实施例的结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。请参阅图1,图1是本申请基于录屏API的视频补帧方法第一实施例的流程示意图,本实施例的视频补帧方法应用于一种具有视频帧收发功能和处理功能的移动终端或者电子设备。S101:将录屏API生成的视频帧写入内存缓存列表。其中,本申请的移动终端可以搭载IOS操作系统,并可以通过IOS操作系统上的ReplayKit框架从屏幕录制或流式传输视频,以从直播屏幕录制视频。具体地,移动终端通过ReplayKit(直播录屏)开发工具箱的数据返回视频帧,其中,视频帧,即RPSampleBufferTypeVideo,为裸视频帧数据内容。移动终端可以通过ReplayKit的线程读取和写入视频帧,并在将视频帧插入视频线程安全本文档来自技高网...

【技术保护点】
1.一种基于录屏API的视频补帧方法,其特征在于将录屏API生成的视频帧写入内存缓存列表;在设定时间内,根据所述内存缓存列表中的视频帧数量,判断屏幕画面状态;当所述屏幕画面状态处于画面完全静止状态时,则重复发送所述内存缓存列表表头的视频帧;当所述屏幕画面状态处于第一画面状态时,则按照所述视频帧写入所述内存缓存列表的时序发送所述视频帧。

【技术特征摘要】
1.一种基于录屏API的视频补帧方法,其特征在于将录屏API生成的视频帧写入内存缓存列表;在设定时间内,根据所述内存缓存列表中的视频帧数量,判断屏幕画面状态;当所述屏幕画面状态处于画面完全静止状态时,则重复发送所述内存缓存列表表头的视频帧;当所述屏幕画面状态处于第一画面状态时,则按照所述视频帧写入所述内存缓存列表的时序发送所述视频帧。2.根据权利要求1所述的视频补帧方法,其特征在于,所述重复发送所述内存缓存列表表头的视频帧的步骤,进一步包括:保存初始获取的第一视频帧;创建定时器;利用所述定时器按照预设频率重复发送所述第一视频帧。3.根据权利要求1所述的视频补帧方法,其特征在于,所述按照所述视频帧写入所述内存缓存列表的时序发送所述视频帧的步骤,进一步包括:将初始获取的第一视频帧写入所述内存缓存列表,其中,所述内存缓存列表的列表头中至少保存有所述第一视频帧;按照时序获取所述录屏产生的第二视频帧时,将所述第一视频帧存储到所述内存缓存列表中除列表头外的列表位置,并将所述第二视频帧插入所述内存缓存列表的列表头。4.根据权利要求3所述的视频补帧方法,其特征在于,所述按照所述视频帧写入所述内存缓存列表的时序发送所述视频帧的步骤,进一步包括:创建定时器;利用所述定时器按照所述预设频率发送所述内存缓存列表的列表头对应的所述第一视频帧或所述第二视频帧;其中,所述预设频率为每秒30次。5.根据权利要求4所述的视频补帧方法,其特征在于,所述利用所述定时器按照所述预设频率发送所述内存缓存列表的列表头对应的所述第一视频帧或所述第二视频帧的步骤之后,还包括:判断所述内存缓存列表中的...

【专利技术属性】
技术研发人员:胡超
申请(专利权)人:广州虎牙信息科技有限公司
类型:发明
国别省市:广东,44

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

1