一种抽帧的方法、装置、设备及计算机可读存储介质制造方法及图纸

技术编号:20050204 阅读:38 留言:0更新日期:2019-01-09 05:56
本申请实施例公开了一种抽帧的方法、装置、设备及计算机可读存储介质,包括:实时获取视频编码器接收到的适合当前网络环境的编码码率;根据编码码率和编码帧率的预置对应关系计算所述编码码率对应的编码帧率;根据所述编码帧率进行抽帧,以完成编码操作。解决了现有的抽帧方法在网络状况较差时会造成直播视频流畅度低的技术问题。

【技术实现步骤摘要】
一种抽帧的方法、装置、设备及计算机可读存储介质
本申请涉及通信
,尤其涉及一种抽帧的方法、装置、设备及计算机可读存储介质。
技术介绍
随着通信技术的发展,网络直播越来越受欢迎。网络直播是可以同一时间透过网络系统在不同的交流平台观看影片,是一种新兴的网络社交方式,网络直播主要分为实时直播游戏、电影、电视剧和才艺展示等。在网络直播中,直播视频的形成过程大致如下:视频采集设备在主播端不断采集视频帧,然后对采集到的视频帧进行抽帧处理,再通过视频编码器编码形成直播视频,最后将直播视频经服务器发送至各个终端以供观众观看。现有的抽帧方法是:预先设置固定的编码帧率,然后通过根据固定的编码帧率进行抽帧。然而,该抽帧方法没有考虑网络波动的情况,当网络状况较差时,会出现直播视频流畅度低的情况。
技术实现思路
本申请实施例提供了一种抽帧的方法、装置、设备及计算机可读存储介质,使得直播视频在网路状况较差的情况下流畅度也较高。有鉴于此,本申请第一方面提供了一种抽帧的方法,所述方法包括:实时获取视频编码器接收到的适合当前网络环境的编码码率;根据编码码率和编码帧率的预置对应关系计算所述编码码率对应的编码帧率;根据所述编码帧率进行抽帧,以完成编码操作。优选地,在实时获取视频编码器接收到的适合当前网络环境的编码码率之后,在根据编码码率和编码帧率的预置对应关系计算所述编码码率对应的编码帧率之前,还包括:判断所述编码码率是否超出预设的码率区间;若所述编码码率大于所述码率区间中的最大值,则将所述最大值赋给编码码率;若所述编码码率小于所述码率区间中的最小值,则将所述最小值赋给编码码率。优选地,根据编码码率和编码帧率的预置对应关系计算所述编码码率对应的编码帧率具体包括:获取所述编码码率与所述码率区间中的最小值的第一差值;获取所述第一差值与所述码率区间长度的第一比值;根据预置公式y=sin(πx/2)计算正弦参数,其中x代表第一比值,y代表正弦参数;将所述正弦参数乘以所述码率区间的长度,再加上所述码率区间的最小值,得到编码帧率。优选地,根据所述编码帧率进行抽帧,以完成编码操作具体包括:根据所述编码帧率计算相邻两次抽帧的时间间隔;按所述时间间隔对采集到的帧进行抽帧,以完成编码操作。优选地,根据所述编码帧率计算相邻两次抽帧的时间间隔具体包括:获取1000ms与所述编码帧率的第二比值,并将所述第二比值作为相邻两次抽帧的时间间隔。优选地,根据所述编码帧率计算相邻两次抽帧的时间间隔具体包括:获取图像采集设备的采集帧率与所述编码帧率的第二差值;获取1000ms与所述第二差值的第三比值,并将所述第三比值作为相邻两次抽帧的时间间隔。优选地,在获取图像采集设备的采集帧率与所述编码帧率的第二差值之前,还包括:实时获取图像采集设备的采集帧率。优选地,根据所述时间间隔进行抽帧,以完成编码操作具体包括:获取采集到当前帧的系统时间;判断是否存在上一次抽帧;若存在上一次抽帧,则获取所述上一次抽帧的理论系统时间,并将所述采集到当前帧的系统时间与所述上一次抽帧的理论系统时间的差值作为第三差值;若不存在上一次抽帧,则获取采集到第一帧的系统时间,并将所述采集到当前帧的系统时间与采集到第一帧的系统时间的差值作为第三差值;将所述第三差值与所述时间间隔比较,并根据比较结果进行抽帧编码或抽帧丢弃,以完成编码操作。优选地,若存在上一次抽帧,在获取所述上一次抽帧的理论系统时间,并将所述采集到当前帧的系统时间与所述上一次抽帧的理论系统时间的差值作为第三差值之后,还包括:获取上一次抽帧的实际系统时间,将上一次抽帧的实际系统时间与上一次抽帧的理论系统时间的差值作为时间残差,判断所述时间残差与采集时间间隔的大小,所述采集时间间隔为1000ms与所述采集帧率的第四比值;若所述时间残差大于所述采集时间间隔,则将所述第三差值的取值加上所述时间残差;若所述时间残差小于所述采集时间间隔,则不改变所述第三差值的取值。优选地,获取上一次抽帧的理论系统时间具体包括:判断所述上一次抽帧前是否存在再一次的抽帧,若存在,则获取所述上一次抽帧的前一次抽帧的理论系统时间作为基准时间,若不存在,则获取所述采集到第一帧的系统时间作为基准时间;将所述基准时间和与所述上一次抽帧前计算出的所述时间间隔的和作为上一次抽帧的理论系统时间。本申请第二方面提供了一种抽帧的装置,包括:编码码率获取单元,用于实时获取视频编码器接收到的适合当前网络环境的编码码率;编码帧率计算单元,用于根据编码码率和编码帧率的预置对应关系计算所述编码码率对应的编码帧率;抽帧单元,用于根据所述编码帧率进行抽帧,以完成编码操作。优选地,所述的装置还包括:编码码率控制单元,用于判断所述编码码率是否超出预设的码率区间;若所述编码码率大于所述码率区间中的最大值,则将所述最大值赋给编码码率;若所述编码码率小于所述码率区间中的最小值,则将所述最小值赋给编码码率。优选地,所述编码帧率计算单元具体用于:获取所述编码码率与所述码率区间中的最小值的第一差值;获取所述第一差值与所述码率区间长度的第一比值;根据预置公式y=sin(πx/2)计算正弦参数,其中x代表第一比值,y代表正弦参数;将所述正弦参数乘以所述码率区间的长度,再加上所述码率区间的最小值,得到编码帧率。优选地,所述抽帧单元具体包括:时间间隔确定子单元,用于根据所述编码帧率计算相邻两次抽帧的时间间隔;抽帧执行子单元,用于按所述时间间隔对采集到的帧进行抽帧,以完成编码操作。优选地,所述时间间隔确定子单元具体用于:获取1000ms与所述编码帧率的第二比值,并将所述第二比值作为相邻两次抽帧的时间间隔。优选地,所述时间间隔确定子单元具体用于:获取图像采集设备的采集帧率与所述编码帧率的第二差值;获取1000ms与所述第二差值的第三比值,并将所述第三比值作为相邻两次抽帧的时间间隔。优选地,所述的装置还包括:采集帧率获取单元,用于实时获取图像采集设备的采集帧率。优选地,所述抽帧执行子单元具体用于:获取采集到当前帧的系统时间;判断是否存在上一次抽帧;若存在上一次抽帧,则获取所述上一次抽帧的理论系统时间,并将所述采集到当前帧的系统时间与所述上一次抽帧的理论系统时间的差值作为第三差值;若不存在上一次抽帧,则获取采集到第一帧的系统时间,并将所述采集到当前帧的系统时间与采集到第一帧的系统时间的差值作为第三差值;将所述第三差值与所述时间间隔比较,并根据比较结果进行抽帧编码或抽帧丢弃,以完成编码操作。优选地,若存在上一次抽帧,所述抽帧执行子单元还用于:获取上一次抽帧的实际系统时间,将上一次抽帧的实际系统时间与上一次抽帧的理论系统时间的差值作为时间残差,判断所述时间残差与采集时间间隔的大小,所述采集时间间隔为1000ms与所述采集帧率的第四比值;若所述时间残差大于所述采集时间间隔,则将所述第三差值的取值加上所述时间残差;若所述时间残差小于所述采集时间间隔,则不改变所述第三差值的取值。本申请第三方面提供一种抽帧的设备,所述设备包括处理器以及存储器:所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;所述处理器用于根据所述程序代码中的指令执行上述第一方面所述的抽帧方法。本申请第四方面提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程本文档来自技高网...

【技术保护点】
1.一种抽帧的方法,其特征在于,包括:实时获取视频编码器接收到的适合当前网络环境的编码码率;根据编码码率和编码帧率的预置对应关系计算所述编码码率对应的编码帧率;根据所述编码帧率进行抽帧,以完成编码操作。

【技术特征摘要】
1.一种抽帧的方法,其特征在于,包括:实时获取视频编码器接收到的适合当前网络环境的编码码率;根据编码码率和编码帧率的预置对应关系计算所述编码码率对应的编码帧率;根据所述编码帧率进行抽帧,以完成编码操作。2.根据权利要求1所述的方法,其特征在于,在实时获取视频编码器接收到的适合当前网络环境的编码码率之后,在根据编码码率和编码帧率的预置对应关系计算所述编码码率对应的编码帧率之前,还包括:判断所述编码码率是否超出预设的码率区间;若所述编码码率大于所述码率区间中的最大值,则将所述最大值赋给编码码率;若所述编码码率小于所述码率区间中的最小值,则将所述最小值赋给编码码率。3.根据权利要求2所述的方法,其特征在于,根据编码码率和编码帧率的预置对应关系计算所述编码码率对应的编码帧率具体包括:获取所述编码码率与所述码率区间中的最小值的第一差值;获取所述第一差值与所述码率区间长度的第一比值;根据预置公式y=sin(πx/2)计算正弦参数,其中x代表第一比值,y代表正弦参数;将所述正弦参数乘以所述码率区间的长度,再加上所述码率区间的最小值,得到编码帧率。4.根据权利要求1所述的方法,其特征在于,根据所述编码帧率进行抽帧,以完成编码操作具体包括:根据所述编码帧率计算相邻两次抽帧的时间间隔;按所述时间间隔对采集到的帧进行抽帧,以完成编码操作。5.根据权利要求4所述的方法,其特征在于,根据所述编码帧率计算相邻两次抽帧的时间间隔具体包括:获取1000ms与所述编码帧率的第二比值,并将所述第二比值作为相邻两次抽帧的时间间隔。6.根据权利要求4所述的方法,其特征在于,根据所述编码帧率计算相邻两次抽帧的时间间隔具体包括:获取图像采集设备的采集帧率与所述编码帧率的第二差值;获取1000ms与所述第二差值的第三比值,并将所述第三比值作为相邻两次抽帧的时间间隔。7.根据权利要求6所述的方法,其特征在于,在获取图像采集设备的采集帧率与所述编码帧率的第二差值之前,还包括:实时获取图像采集设备的采集帧率。8.根据权利要求5至7中任意一项所述的方法,其特征在于,根据所述时间间隔进行抽帧,以完成编码操作具体包括:获取采集到当前帧的系统时间;判断是否存...

【专利技术属性】
技术研发人员:朱材源
申请(专利权)人:广州华多网络科技有限公司
类型:发明
国别省市:广东,44

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

1