公开/公告号CN107613337A
专利类型发明专利
公开/公告日2018-01-19
原文格式PDF
申请/专利权人 深圳天珑无线科技有限公司;深圳市天珑移动技术有限公司;
申请/专利号CN201710855960.X
发明设计人 孙红辉;
申请日2017-09-19
分类号
代理机构深圳市威世博知识产权代理事务所(普通合伙);
代理人李庆波
地址 518053 广东省深圳市南山区华侨城东部工业区H3栋501B
入库时间 2023-06-19 04:24:42
法律状态公告日
法律状态信息
法律状态
2019-12-13
授权
授权
2019-12-06
专利申请权的转移 IPC(主分类):H04N21/41 登记生效日:20191119 变更前: 变更后: 申请日:20170919
专利申请权、专利权的转移
2019-07-23
专利申请权的转移 IPC(主分类):H04N21/41 登记生效日:20190703 变更前: 变更后: 申请日:20170919
专利申请权、专利权的转移
2018-02-13
实质审查的生效 IPC(主分类):H04N21/41 申请日:20170919
实质审查的生效
2018-01-19
公开
公开
技术领域
本申请涉及视频应用技术领域,特别是涉及一种分配视频缓冲内存空间大小的方法、移动终端及具有存储功能的装置。
背景技术
随着移动终端被越来越广泛的应用,用户使用电子设备观看视频已经成为习惯,视频播放过程为:服务器将编码后的视频数据封装成符合视频实时传输协议的数据包,并通过网络发送到移动终端的视频播放器,视频播放器按一定的速度接收数据包,并按一定速度播放数据包,从而播放视频文件。
在实际应用中,网络状况不稳定,容易引起服务器向视频播放器发送的数据包存在时延抖动,进而造成视频播放器的数据不同步。为了实现视频同步播放,目前使用缓存技术,在视频播放器中设置缓存用于存储服务器发送的数据包。
但是,本申请的发明人在长期的研发过程中发现,现有技术中视频文件下载缓冲内存空间和视频文件播放缓冲内存空间申请的大小是固定的,不能更改,如果大小设置过大,容易浪费系统资源,影响系统流畅性,如果大小设置过小,容易影响在线视频播放的流畅性。
发明内容
本申请主要解决的技术问题是提供一种分配视频缓冲内存空间大小的方法、移动终端及具有存储功能的装置,能够动态分配视频缓冲内存空间的大小。
为解决上述技术问题,本申请采用的一个技术方案是:提供一种分配视频缓冲内存空间大小的方法,所述方法包括:监控终端的系统内存空间的使用情况;根据所述系统内存空间的使用情况,动态分配视频缓冲内存空间的大小。
其中,所述根据所述系统内存空间的使用情况,动态分配视频缓冲内存空间的大小,包括:若监控到系统可用内存空间大于第一预设阈值,则增加所述视频缓冲内存空间的大小,若监控到所述系统可用内存空间小于第一预设阈值,则减少所述视频缓冲内存空间的大小。
其中,所述第一预设阈值为所述系统可用内存空间的大小的预设阈值或者为所述系统可用内存空间与系统总内存空间的比值的预设阈值。
其中,所述根据所述系统内存空间的使用情况,动态分配视频缓冲内存空间的大小,包括:当视频应用刚启动时,根据当前所述系统内存空间的使用情况,确定视频缓冲内存空间的大小。
其中,所述根据所述系统内存空间的使用情况,动态分配视频缓冲内存空间的大小,包括:若在视屏应用播放时,监控到当前系统可用内存空间小于第二预设阈值,则减少所述视频缓冲内存空间至第三预设阈值。
其中,所述根据所述系统内存空间的使用情况,动态分配视频缓冲内存空间的大小,包括:若在视屏应用播放时,监控到当前系统可用内存空间小于第四预设阈值,且所述视频缓冲内存空间已满,则暂停视频下载线程与视频解码线程;当监控到所述视频缓冲内存空间的视频数据被播放完毕后,回收所述视频缓冲区内存空间。
其中,所述当监控到所述视频缓冲内存空间的视频数据被播放完毕后,回收所述视频缓冲区内存空间,包括:当监控到所述视频缓冲内存空间中第一空间的视频数据被播放完毕后,回收所述第一空间。
其中,所述根据所述系统内存空间的使用情况,动态分配视频缓冲内存空间的大小,包括:若在视屏应用播放时,监控到当前系统可用内存空间大于第五预设阈值,则增加所述视频缓冲内存空间的大小,并将新增视频缓冲内存空间连接在原视频缓冲内存空间的后面,以供缓存视频文件。
为解决上述技术问题,本申请采用的另一个技术方案是:提供一种移动终端,所述移动终端包括:处理器、存储器、通信电路以及显示器,所述处理器分别耦接所述存储器、所述通信电路、所述显示器,所述处理器、所述存储器、所述通信电路、所述显示器在工作时能够实现如上任一项所述方法中的步骤。
为解决上述技术问题,本申请采用的另一个技术方案是:提供一种具有存储功能的装置,其上存储有程序数据,所述程序数据被处理器执行时实现如上任一项所述方法中的步骤。
本申请的有益效果是:区别于现有技术的情况,本申请监控终端的系统内存空间的使用情况;根据所述系统内存空间的使用情况,动态分配视频缓冲内存空间的大小。由于根据监控到的系统内存空间的使用情况,动态分配视频缓冲内存空间的大小,通过这种方式,动态分配视频缓冲内存空间的大小,以为既不浪费系统资源,又不影响视频播放流畅性提供技术支持。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请分配视频缓冲内存空间大小的方法一实施方式的流程图;
图2是本申请分配视频缓冲内存空间大小的方法另一实施方式的流程图;
图3是本申请移动终端一实施方式的结构示意图;
图4是本申请具有存储功能的装置一实施方式的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参阅图1,图1是本申请分配视频缓冲内存空间大小的方法一实施方式的流程图,该方法包括:
步骤S101:监控终端的系统内存空间的使用情况。
步骤S102:根据系统内存空间的使用情况,动态分配视频缓冲内存空间的大小。
不同的操作系统,均为应用提供了一些方法来实时查看当前系统可用内存空间的大小、系统总内存空间的大小。例如:安卓Android系统通过如下adb接口查看:
cat/proc/meminfo
MemTotal:1962172kB
MemFree:346500kB
其中,MemFree表示当前系统可用内存空间的大小,MemTotal表示系统总内存空间的大小,例如,在某一段时间,当前系统可用内存空间的大小为346500kB,系统总内存空间的大小为1962172kB。
获取这两个内存空间的大小,即可以评估当前系统内存空间的使用情况,进而决定如何动态分配视频缓冲内存空间的大小,例如:增加或者减少视频缓冲内存空间的大小;或者,增加或者减少视频缓冲内存空间的大小到什么程度;或者,如何增加或者减少视频缓冲内存空间的大小,等等。
本申请实施方式监控终端的系统内存空间的使用情况;根据所述系统内存空间的使用情况,动态分配视频缓冲内存空间的大小。由于根据监控到的系统内存空间的使用情况,动态分配视频缓冲内存空间的大小,通过这种方式,动态分配视频缓冲内存空间的大小,以为既不浪费系统资源,又不影响视频播放流畅性提供技术支持。例如,如果当前系统内存空间比较多,可以增加视频缓冲内存空间的大小;如果当前系统内存空间比较少,可以减少视频缓冲内存空间的大小,等等。
在一实施方式中,步骤S102具体可以包括:
若监控到系统可用内存空间大于第一预设阈值,则增加视频缓冲内存空间的大小,若监控到系统可用内存空间小于第一预设阈值,则减少视频缓冲内存空间的大小。
第一预设阈值是指在保证系统正常运行的情况下,系统可用空间可接受的数值。第一预设阈值可以根据终端的使用情况进行设定,也可以定期或者不定期重新设定第一预设阈值。例如,在某一段时间,终端有多个应用同时在使用过程中,系统内存空间占用的比较多,系统可用内存空间比较小,为保证多个应用的正常使用,需要保证系统被占用的内存空间,而分配给视频缓冲内存空间小一些,此时,第一预设阈值可以设置的大一些,这样系统可用内存空间很容易小于第一预设阈值,则可以减少视频缓冲内存空间的大小,以保证系统被占用的内存空间的大小。在另一段时间,终端只有一个视频应用在使用过程中个,系统被占用的内存空间比较小,系统可用内存空间比较大,可以多分配给视频缓冲内存空间,此时,第一预设阈值可以设置的小一些,这样系统可用内存空间很容易大于第一预设阈值,则可以增加视频缓冲内存空间的大小,一方面不浪费系统资源,另一方面,视频播放也流畅。
进一步,第一预设阈值为系统可用内存空间的大小的预设阈值或者为系统可用内存空间与系统总内存空间的比值的预设阈值。
也就是说,第一预设阈值可以直接是系统可用内存空间的大小的预设阈值,或者,取系统可用内存空间与系统总内存空间的比值,设置这个比值的阈值。
在一实施方式中,步骤S102还可以具体包括:
当视频应用刚启动时,根据当前系统内存空间的使用情况,确定视频缓冲内存空间的大小。
当视频应用刚刚启动时,根据当前系统内存空间的使用情况,合理分配视频缓冲内存空间的大小,以保证系统被占用的内存空间够当前使用。通过这种方式,可以保证不影响系统的正常运行。
在一实施方式中,步骤S102还可以具体包括:
若在视屏应用播放时,监控到当前系统可用内存空间小于第二预设阈值,则减少视频缓冲内存空间至第三预设阈值。
其中,第二预设阈值是指在保证系统正常运行的情况下,在视屏应用播放时系统可用空间可接受的数值。第三预设阈值是指在保证视屏应用播放正常运行的情况下,视频缓冲内存空间可接受的数值。第二预设阈值和第三预设阈值可以根据终端的使用情况进行设定,也可以定期或者不定期重新设定。
在视频应用播放过程中,监控到当前系统可用内存空间小于第二预设阈值,例如:用户打开新应用进行使用;或者,用户在原打开的应用中打开新的页面;等等,此时系统比较繁忙,这些情况均会新增占用系统可用内存空间,使得当前系统可用内存空间变小,在第二预设阈值不变的情况下,进而使得当前系统可用内存空间小于第二预设阈值。优先保证系统的正常运行,需要增加系统可用内存空间,因此,在此时减少视频缓冲内存空间至第三预设阈值,以保证视频应用的正常运行。通过这种方式,可以既保证系统的正常运行,又保证视频应用的正常运行。
在一实施方式中,视频缓冲内存空间包括视频文件下载缓冲内存空间和视频文件播放缓冲内存空间。在视频文件播放缓冲内存空间,视频文件播放后,可以将播放后视频文件删除,以回收这部分视频文件播放缓冲内存空间。
在实际应用中,终端在监控终端的系统内存空间的使用情况的时候,可以监控网络状况,如果当前网络状况很好,网速很高,可以减少视频缓冲内存空间,如果当前网络状况不好,网速不稳定,可以增加视频缓冲内存空间。也就是说,可以将系统内存空间的使用情况与网络状况结合起来一起考虑,以进一步优化和调节视频缓冲内存空间。特别是在终端同时运行多个应用,系统可用内存空间不多的情况下,如果当前网络状况很好,网速很高,可以减少视频缓冲内存空间而增援系统内存空间,以保证系统内存空间够用,运行正常。
另外,在实际应用中,如果终端在监控终端的系统内存空间的使用情况的时候,可以监控网络状况,如果当前网络状况很好,网速很高,且根据用户的使用习惯确定用户当前只会打开视频文件,系统可用内存空间很多,可以在用户在线观看视频应用的时候,同时进行其他视频数据的下载,预先进行缓存,后续根据情况,可以将视频文件下载缓冲内存空间调整为视频文件播放缓冲内存空间。也就是说,根据监控到的系统内存空间的使用情况以及网络状况,可以进一步对视频缓冲内存空间进行微调整,以充分合理地利用系统资源和网络资源。
在另一实施方式中,参见图2,步骤S102还可以具体包括:子步骤S1021和子步骤S1022。
子步骤S1021:若在视屏应用播放时,监控到当前系统可用内存空间小于第四预设阈值,且视频缓冲内存空间已满,则暂停视频下载线程与视频解码线程。
子步骤S1022:当监控到视频缓冲内存空间的视频数据被播放完毕后,回收视频缓冲区内存空间。
其中,第四预设阈值是指在保证系统正常运行的情况下,在视屏应用播放时系统可用空间可接受的数值。第四预设阈值可以根据终端的使用情况进行设定,也可以定期或者不定期重新设定。
视频缓冲内存空间已满,表明视频缓冲内存空间内缓存的都是待播放的视频数据和没有播放完的视频数据。
在视频应用播放过程中,监控到当前系统可用内存空间小于第四预设阈值,例如:用户打开新应用进行使用;或者,用户在原打开的应用中打开新的页面;等等,此时系统比较繁忙,这些情况均会新增占用系统可用内存空间,使得当前系统可用内存空间变小,在第四预设阈值不变的情况下,进而使得当前系统可用内存空间小于第四预设阈值。优先保证系统的正常运行,需要增加系统可用内存空间。但是此时视频缓冲内存空间已满,所以暂停视频下载线程(可以控制视频文件下载缓冲内存空间)与视频解码线程(可以控制视频文件播放缓冲内存空间)。
当监控到视频缓冲内存空间的视频数据被播放完毕后,回收视频缓冲区内存空间。例如,可以将播放后的视频数据删除(全部删除或者部分删除),等等。
进一步,当监控到视频缓冲内存空间中第一空间的视频数据被播放完毕后,回收第一空间。也就是说,一边播放,一边回收。在其他实施方式中,也可以全部播放完毕后,再一起回收。
在一实施方式中,步骤S102还可以具体包括:
若在视屏应用播放时,监控到当前系统可用内存空间大于第五预设阈值,则增加视频缓冲内存空间的大小,并将新增视频缓冲内存空间连接在原视频缓冲内存空间的后面,以供缓存视频文件。
在视频应用播放时,监控到当前系统可用内存空间大于第五预设阈值,表明当前系统比较闲,系统可用内存空间有闲置,可以增加视频缓冲内存空间的大小,在一实施方式中个,这部分新增视频缓冲内存空间的大小可以根据实际应用情况确定。同时可以将新增视频缓冲内存空间连接在原视频缓冲内存空间的后面,以供缓存视频文件。
本申请的上述实施方式,通过根据系统内存空间的使用情况动态调整视频缓冲内存空间的大小,可以提高系统性能,同时也提升用户体验。
参见图3,图3是本申请移动终端一实施方式的结构示意图,本实施方式的移动终端包括:处理器11、存储器12、通信电路13以及显示器14,处理器11分别耦接存储器12、通信电路13以及显示器14,其中,处理器11、存储器12、通信电路13以及显示器14在工作时能够实现如上任一项方法中的步骤。相关内容的详细说明请参见上述方法部分,在此不再赘叙。
参见图4,图4是本申请具有存储功能的装置一实施方式的结构示意图,该装置10上存储有程序数据100,该程序数据100被处理器执行时实现如上任一项方法中的步骤。相关内容的详细说明请参见上述方法部分,在此不再赘叙。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
机译: 用于多格式视频处理的可重构缓冲区分配,用于动态确定对应于数量和大小的缓冲区区域的共享类型缓冲区大小
机译: 缓冲器大小确定装置,系统,缓冲器大小确定方法,视频数据再现方法和程序
机译: 缓冲区大小确定装置,系统,缓冲区大小确定方法,视频数据再现方法和程序