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

技术编号:21975025 阅读:39 留言:0更新日期:2019-08-28 02:14
本申请公开了一种移动终端及其录屏中的音视频丢帧方法、计算机存储介质,该音视频丢帧方法包括:获取录屏产生的音频帧和视频帧,并获取当时的终端性能和/或网络状态;判断终端性能和/或网络状态是否满足音视频传输条件;若否,则基于终端性能和/或网络状态按照预设规则丢弃音频帧和/或视频帧。通过上述音视频丢帧方法,能够在终端设备性能不足和/或网络状态不足的情况下丢弃部分视频帧,以使后续的音视频帧能够及时发送。

Audio and Video Frame Loss Method and Computer Storage Media in Mobile Terminal and Its Recording Screen

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

【技术保护点】
1.一种录屏中的音视频丢帧方法,其特征在于,所述音视频丢帧方法包括:获取录屏产生的音频帧和视频帧,并获取当时的终端性能和/或网络状态;判断所述终端性能和/或所述网络状态是否满足音视频传输条件;若否,则基于所述终端性能和/或所述网络状态按照预设规则丢弃所述音频帧和/或所述视频帧。

【技术特征摘要】
1.一种录屏中的音视频丢帧方法,其特征在于,所述音视频丢帧方法包括:获取录屏产生的音频帧和视频帧,并获取当时的终端性能和/或网络状态;判断所述终端性能和/或所述网络状态是否满足音视频传输条件;若否,则基于所述终端性能和/或所述网络状态按照预设规则丢弃所述音频帧和/或所述视频帧。2.根据权利要求1所述的音视频丢帧方法,其特征在于,所述终端性能包括CPU使用率;所述判断终端性能和/或网络状态是否满足音视频传输条件的步骤,包括:判断所述CPU使用率是否大于CPU使用率阈值;若是,则基于所述视频帧的帧间间隔丢弃预设跨度的视频帧,其中,所述视频帧为编码前的裸视频帧。3.根据权利要求1所述的音视频丢帧方法,其特征在于,所述终端性能包括内存占用大小;所述判断终端性能和/或网络状态是否满足音视频传输条件的步骤,包括:判断所述内存占用大小是否大于内存占用阈值;若是,则基于所述视频帧的帧间间隔丢弃预设跨度的视频帧,其中,所述视频帧为编码前的裸视频帧。4.根据权利要求1所述的音视频丢帧方法,其特征在于,所述终端性能包括CPU使用率;所述判断终端性能和/或网络状态是否满足音视频传输条件的步骤,包括:判断所述CPU使用率是否大于CPU使用率阈值;若是,则基于所述音频帧的帧间间隔丢弃预设跨度的音频帧,其中,所述音频帧为编码后的音频帧。5.根据权利要求1所述的音视频丢帧方法,其特征在于,所述网络状态包括网络带宽大小;所述判断终端性能和/或网络状态是否满足音视频传输条件的步骤,包括:判断所述网络带宽大小是否小于第一网络带宽阈值;若是,根据预设规则丢弃编码后的所述视频帧和/或编码后的所述...

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

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

1