一种视频动态编码方法及系统技术方案

技术编号:37352710 阅读:13 留言:0更新日期:2023-04-27 07:04
本发明专利技术涉及视频编码技术领域,提供了一种视频动态编码方法,包括以下步骤:S1:建立编码任务,设置动态编码参数;S2:编码服务后台启动编码引擎并传递动态编码参数;S3:编码引擎根据动态编码参数对待编码视频进行包括场景检测、根据场景切换对待编码视频进行分片、对每一个分片进行CRF编码后计算分片的复杂度指标,根据每一个分片的复杂度指标筛选对应的编码速度参数preset、每一个分片根据筛选出的对应的编码速度参数preset进行编码、将编码后的分片进行合片在内的操作后,输出编码后的视频。根据场景对视频分片并提取分片的视频复杂度,对不同复杂度设置不同preset编码预设值,兼顾编码效率与质量实现动态编码,满足对视频画质与编码处理速度的需求。画质与编码处理速度的需求。画质与编码处理速度的需求。

【技术实现步骤摘要】
一种视频动态编码方法及系统


[0001]本专利技术涉及视频编码的
,尤其涉及一种视频动态编码方法及系统。

技术介绍

[0002]当前视频产业发展飞速,观看视频的用户对视频画质要求越来越高,各视频编码厂商为了更好的画质一般只能选择牺牲编码处理速度预设更慢的编码参数preset。
[0003]一个视频不同场景内容复杂程度不同,对场景复杂的部分使用更慢的编码参数编码获取更好的画质是合理的,但是对场景简单的部分使用更慢的编码参数对输出画质上变化并不明显却明显降低了编码处理速度,显然会造成处理时间的浪费。如果处理大批量的视频,这种浪费累加起来对业务效率影响会非常大。

技术实现思路

[0004]针对上述问题,本专利技术的目的在于提供一种视频动态编码方法及系统,以编码能力为核心,根据场景对视频分片并提取分片的视频复杂度,对不同视频复杂度分片设置不同Preset编码预设值,旨在兼顾编码效率与质量实现动态编码,更好的满足用户对视频画质与编码处理速度的需求。
[0005]本专利技术的上述专利技术目的是通过以下技术方案得以实现的:
[0006]一种视频动态编码方法,包括以下步骤:
[0007]S1:建立编码任务,并设置包括场景检测阈值、固定码率系数CRF值、复杂度阈值和编码速度参数preset在内的动态编码参数;
[0008]S2:编码服务后台接收到所述编码任务之后,启动编码引擎并传递所述动态编码参数到所述编码引擎;
[0009]S3:所述编码引擎根据所述动态编码参数对待编码视频进行包括场景检测、根据场景切换对所述待编码视频进行分片、对每一个分片进行CRF编码后计算所述分片的复杂度指标,根据每一个所述分片的所述复杂度指标筛选对应的所述编码速度参数preset、每一个所述分片根据筛选出的对应的所述编码速度参数preset进行编码、将编码后的所述分片进行合片在内的操作后,输出编码后的视频。
[0010]进一步地,在步骤S1中,所述动态编码参数,具体为:
[0011]所述场景检测阈值,用于筛选是否发生场景切换,记录发生场景切换的时间戳进行打点分片;
[0012]所述固定码率系数CRF值,用于计算不同的所述分片的所述复杂度指标设置的编码参数;
[0013]所述复杂度阈值,用于筛选不同的所述分片经过CRF编码后复杂度对应的档次;
[0014]所述编码速度参数preset,用于设置不同档次的所述复杂度指标对应的所述编码速度参数preset。
[0015]进一步地,在步骤S3中,所述场景检测,具体为:
[0016]输入所述待编码视频,对所述待编码视频中的每一个视频帧进行遍历;
[0017]当所述视频帧为所述待编码视频的首帧时,拷贝并保留所述视频帧作为参照帧;
[0018]当所述视频帧不为所述待编码视频的首帧时,根据设置的所述场景检测阈值及筛选分量参数筛选当前所述视频帧相对于所述参照帧是否发生了场景切换,当筛选出当前所述视频帧发生了场景切换时,记录当前所述视频帧的时间戳或帧数,用于当根据场景切换对所述待编码视频进行分片时进行打点定位,将当前所述视频帧的数据覆盖所述参照帧的数据;
[0019]继续对所述待编码视频中的每一个所述视频帧进行遍历,直至剩余的所述待编码视频的长度小于一预设时间长度。
[0020]进一步地,根据设置的所述场景检测阈值及所述筛选分量参数筛选当前所述视频帧相对于所述参照帧是否发生了场景切换,具体为:
[0021]将当前所述视频帧的亮度分量Y、色度分量U和色度分量V与保留的所述参照帧的所有像素的所述亮度分量Y、所述色度分量U和所述色度分量V计算绝对差值和SAD,得到SAD

Y、SAD

U和SAD

V,然后对一帧的所述亮度分量Y、所述色度分量U和所述色度分量V总像素进行平均计算平均绝对差值MAD,得到MAD

Y、MAD

U和MAD

V;
[0022]选择包括MAD

Y、MAD

U和MAD

V在内的一个或多个分量作为所述筛选分量参数与所述场景检测阈值进行对比,当相应分量的MAD超过所述场景检测阈值时,认为发生了场景切换,否则认为未发生场景切换。
[0023]进一步地,在步骤S3中,根据场景切换对所述待编码视频进行分片,具体为:
[0024]根据在所述场景检测中记录的发生了场景切换的时间戳或帧数对所述待编码视频进行分片;分片后每个所述分片内部认为属于相同场景。
[0025]进一步地,在步骤S3中,对每一个所述分片进行CRF编码后计算所述分片的所述复杂度指标,根据每一个所述分片的所述复杂度指标筛选对应的所述编码速度参数preset,具体为:
[0026]对每一个所述分片进行CRF编码,其中,CRF编码的所述固定码率系数CRF值取在设置所述动态编码参数时设置的值,且不同分片的所述固定码率系数CRF值相同;
[0027]取每个所述分片编码后视频的平均码率作为所述分片的所述复杂度指标,根据所述复杂度阈值及每个所述分片的所述复杂度指标确定每个所述分片对应的所述编码速度参数preset的档次。
[0028]进一步地,在步骤S3中,所述编码引擎,还包括:
[0029]在所述编码任务启动成功后,所述编码引擎返回给所述编码服务后台编码运行中的消息,所述编码服务后台将动态编码进行中的进度消息返回给创建所述编码任务的用户;
[0030]在所述编码任务完成后,所述编码引擎将编码成功的消息返回给所述编码服务后台,所述编码服务后台将动态编码成功的消息返回给创建所述编码任务的用户。
[0031]一种用于执行如上述的视频动态编码方法的视频动态编码系统,包括:
[0032]编码任务建立模块,用于建立编码任务,并设置包括场景检测阈值、固定码率系数CRF值、复杂度阈值和编码速度参数preset在内的动态编码参数;
[0033]编码引擎启动模块,用于提供给编码服务后台接收到所述编码任务之后,启动编
码引擎并传递所述动态编码参数到所述编码引擎;
[0034]编码模块,用于提供给所述编码引擎根据所述动态编码参数对待编码视频进行包括场景检测、根据场景切换对所述待编码视频进行分片、对每一个分片进行CRF编码后计算所述分片的复杂度指标,根据每一个所述分片的所述复杂度指标筛选对应的所述编码速度参数preset、每一个所述分片根据筛选出的对应的所述编码速度参数preset进行编码、将编码后的所述分片进行合片在内的操作后,输出编码后的视频。
[0035]一种计算机设备,包括存储器和一个或多个处理器,所述存储器中存储有计算机代码,所述计算机代码被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上述的方法。
[0036]一种计算机可读存储介质,所述计算机可读存储介质存储有计算本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种视频动态编码方法,其特征在于,包括以下步骤:S1:建立编码任务,并设置包括场景检测阈值、固定码率系数CRF值、复杂度阈值和编码速度参数preset在内的动态编码参数;S2:编码服务后台接收到所述编码任务之后,启动编码引擎并传递所述动态编码参数到所述编码引擎;S3:所述编码引擎根据所述动态编码参数对待编码视频进行包括场景检测、根据场景切换对所述待编码视频进行分片、对每一个分片进行CRF编码后计算所述分片的复杂度指标,根据每一个所述分片的所述复杂度指标筛选对应的所述编码速度参数preset、每一个所述分片根据筛选出的对应的所述编码速度参数preset进行编码、将编码后的所述分片进行合片在内的操作后,输出编码后的视频。2.根据权利要求1所述的视频动态编码方法,其特征在于,在步骤S1中,所述动态编码参数,具体为:所述场景检测阈值,用于筛选是否发生场景切换,记录发生场景切换的时间戳进行打点分片;所述固定码率系数CRF值,用于计算不同的所述分片的所述复杂度指标设置的编码参数;所述复杂度阈值,用于筛选不同的所述分片经过CRF编码后复杂度对应的档次;所述编码速度参数preset,用于设置不同档次的所述复杂度指标对应的所述编码速度参数preset。3.根据权利要求1所述的视频动态编码方法,其特征在于,在步骤S3中,所述场景检测,具体为:输入所述待编码视频,对所述待编码视频中的每一个视频帧进行遍历;当所述视频帧为所述待编码视频的首帧时,拷贝并保留所述视频帧作为参照帧;当所述视频帧不为所述待编码视频的首帧时,根据设置的所述场景检测阈值及筛选分量参数筛选当前所述视频帧相对于所述参照帧是否发生了场景切换,当筛选出当前所述视频帧发生了场景切换时,记录当前所述视频帧的时间戳或帧数,用于当根据场景切换对所述待编码视频进行分片时进行打点定位,将当前所述视频帧的数据覆盖所述参照帧的数据;继续对所述待编码视频中的每一个所述视频帧进行遍历,直至剩余的所述待编码视频的长度小于一预设时间长度。4.根据权利要求3所述的视频动态编码方法,其特征在于,根据设置的所述场景检测阈值及所述筛选分量参数筛选当前所述视频帧相对于所述参照帧是否发生了场景切换,具体为:将当前所述视频帧的亮度分量Y、色度分量U和色度分量V与保留的所述参照帧的所有像素的所述亮度分量Y、所述色度分量U和所述色度分量V计算绝对差值和SAD,得到SAD

Y、SAD

U和SAD

V,然后对一帧的所述亮度分量Y、所述色度分量U和所述色度分量V总像素进行平均计算平均绝对差值MAD,得到MAD

Y、MAD

U和MAD

V;选择包括MAD

Y、MAD

U和MAD...

【专利技术属性】
技术研发人员:唐杰杨天使李庆瑜戴立言
申请(专利权)人:上海网达软件股份有限公司
类型:发明
国别省市:

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

1