CN115225911A - 一种码率自适应方法、装置、计算机设备和存储介质 - Google Patents

一种码率自适应方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN115225911A
CN115225911A CN202210997303.XA CN202210997303A CN115225911A CN 115225911 A CN115225911 A CN 115225911A CN 202210997303 A CN202210997303 A CN 202210997303A CN 115225911 A CN115225911 A CN 115225911A
Authority
CN
China
Prior art keywords
video
global
dimension
information
complexity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210997303.XA
Other languages
English (en)
Other versions
CN115225911B (zh
Inventor
韩海旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210997303.XA priority Critical patent/CN115225911B/zh
Publication of CN115225911A publication Critical patent/CN115225911A/zh
Application granted granted Critical
Publication of CN115225911B publication Critical patent/CN115225911B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请实施例公开了一种码率自适应方法、装置、计算机设备和存储介质;本申请实施例可以获取视频的全局视频属性信息,以及视频中个视频片段对应的局部视频属性信息;根据视频片段对应的局部视频属性信息,在视频片段中筛选出参考视频片段;根据视频的全局视频属性信息,对视频进行复杂度预估,得到视频的全局内容复杂度信息;根据参考视频片段的局部视频属性信息,对参考视频片段进行复杂度预估,得到参考视频片段的局部内容复杂度信息;根据全局内容复杂度信息和局部内容复杂度信息,生成视频对应的目标调整码率;根据目标调整码率,对视频进行转码操作,可以提高视频转码的质量。

Description

一种码率自适应方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,具体涉及一种码率自适应方法、装置、计算机设备和存储介质。
背景技术
视频转码,是指将已经压缩编码的视频码流按照某一编码标准、码率等条件转换为另一个视频码流,即为一个对视频文件先解码后编码的过程。现有的视频转码方案针对码率设定可以分为两大类,第一类是固定码率的转码方法,另外一类是自适应码率的转码方法。码率自适应技术(Adaptive Bitrate Streaming,ABR)是一种视频码率可以根据网络状况自动调整的视频传输技术。本申请的发明人通过对现有技术进行实践发现,现有的码率适应性技术存在视频转码质量不高的问题。
发明内容
本申请实施例提出了一种码率自适应方法、装置、计算机设备和存储介质,可以提高视频转码的质量。
本申请实施例提供了一种码率自适应方法,包括:
获取视频的全局视频属性信息,以及所述视频中至少一个视频片段对应的局部视频属性信息;
根据每个视频片段对应的局部视频属性信息,在所述视频片段中筛选出作为码率生成依据的参考视频片段;
根据所述视频的全局视频属性信息,从至少一个维度对所述视频进行复杂度预估,得到所述视频在至少一个维度上的全局内容复杂度信息;
根据所述参考视频片段的局部视频属性信息,从至少一个维度对所述参考视频片段进行复杂度预估,得到所述参考视频片段在至少一个维度上的局部内容复杂度信息;
根据所述至少一个维度上的全局内容复杂度信息和所述至少一个维度上的局部内容复杂度信息,生成所述视频对应的目标调整码率;
根据所述目标调整码率,对所述视频进行转码操作。
相应的,本申请实施例还提供了一种码率自适应装置,包括:
获取单元,用于获取视频的全局视频属性信息,以及所述视频中至少一个视频片段对应的局部视频属性信息;
筛选单元,用于根据每个视频片段对应的局部视频属性信息,在所述视频片段中筛选出作为码率生成依据的参考视频片段;
第一复杂度预估单元,用于根据所述视频的全局视频属性信息,从至少一个维度对所述视频进行复杂度预估,得到所述视频在至少一个维度上的全局内容复杂度信息;
第二复杂度预估单元,用于根据所述参考视频片段的局部视频属性信息,从至少一个维度对所述参考视频片段进行复杂度预估,得到所述参考视频片段在至少一个维度上的局部内容复杂度信息;
生成单元,用于根据所述至少一个维度上的全局内容复杂度信息和所述至少一个维度上的局部内容复杂度信息,生成所述视频对应的目标调整码率;
转码单元,用于根据所述目标调整码率,对所述视频进行转码操作。
在一实施例中,所述第一复杂度预估单元,可以包括:
第一解析子单元,用于对所述全局视频属性信息进行解析,得到所述视频的全局量化参数和全局编码模式信息;
第一预估子单元,用于根据所述视频的全局量化参数,预估所述视频在场景维度上的全局内容复杂度信息;
第二预估子单元,用于根据所述视频的全局编码模式信息,预估所述视频在纹理维度上的全局内容复杂度信息。
在一实施例中,所述第一预估子单元,可以包括:
第一预估模块,用于根据所述全局量化参数,预估所述视频对应的全局码率;
第一计算模块,用于计算所述视频的全局码率和所述视频的实时码率之间的码率差异信息;
第二计算模块,用于计算所述码率差异信息和所述实时码率之间的差异比率,得到所述视频在场景维度上的全局内容复杂度信息。
在一实施例中,所述第二预估子单元,可以包括:
第一解析模块,用于对所述全局编码模式信息进行解析,得到所述视频的全局帧间模式比例、全局帧内模式比例、全局跳过模式比例和全局运动矢量残差;
第三计算模块,用于根据所述全局帧间模式比例、全局帧内模式比例和全局跳过模式比例,计算所述视频的全局编码模式比率;
第一融合模块,用于将所述全局编码模式比率和所述全局运动矢量残差进行融合,得到所述视频在纹理维度上的全局内容复杂度信息。
在一实施例中,所述第二复杂度预估单元,可以包括:
第二解析子单元,用于对所述局部视频属性信息进行解析,得到所述参考视频片段的局部量化参数和局部编码模式信息;
第三预估子单元,用于根据所述参考视频片段的局部量化参数,预估所述参考视频片段在场景维度上的局部内容复杂度信息;
第四预估子单元,用于根据所述参考视频片段的局部编码模式信息,预设所述参考视频片段在纹理维度上的局部内容复杂度信息。
在一实施例中,所述生成单元,可以包括:
第一生成子单元,用于根据所述场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息,生成所述视频的第一调整码率;
第二生成子单元,用于根据所述场景维度的局部内容复杂度信息和纹理维度的局部内容复杂度信息,生成所述视频的第二调整码率;
第一筛选子单元,用于在所述第一调整码率和所述第二调整码率中筛选出所述目标调整码率。
在一实施例中,所述第一生成子单元,可以包括:
第一比较模块,用于将所述场景维度的全局内容复杂度信息和预设场景维度复杂度阈值进行比较,得到第一全局比较结果;
第二比较模块,用于将所述纹理维度的全局内容复杂度信息和预设纹理维度复杂度阈值进行比较,得到第二全局比较结果;
第一生成模块,用于根据所述第一全局比较结果和所述第二全局比较结果,生成所述视频的第一调整码率。
在一实施例中,所述第一生成模块,可以包括:
第一算术运算子模块,用于当所述场景维度的全局内容复杂度信息小于所述预设场景维度复杂度阈值的预设场景维度复杂度下界值时,将所述场景维度的全局内容复杂度信息、所述预设场景维度复杂度下界值以及预设参考码率进行算术运算,得到所述视频对应的第一调整码率;
第二算术运算子模块,用于当所述纹理维度的全局内容复杂度信息大于所述预设纹理维度复杂度阈值的预设纹理维度复杂度上界值时,将所述纹理维度的全局内容复杂度信息、所述预设纹理维度复杂度上界值以及所述预设参考码率进行算术运算,得到所述视频对应的第一调整码率。
在一实施例中,所述第一算术运算子模块,可以用于:
当所述场景维度的全局内容复杂度信息小于所述预设场景维度复杂度阈值的预设场景维度复杂度下界值时,计算所述场景维度的全局内容复杂度信息和所述预设场景维度复杂度下界值之间的全局场景阈值差异信息;
对所述全局场景阈值差异信息进行对数运算,得到运算后差异信息;
将所述运算后差异信息和所述预设参考码率进行相乘处理,得到所述视频对应的第一调整码率。
在一实施例中,所述第一生成模块,可以包括:
计算子模块,用于当所述场景维度的全局内容复杂度信息大于所述预设场景维度复杂度阈值的预设场景维度复杂度上界值,以及所述纹理维度的全局内容复杂度信息小于所述预设纹理维度复杂度阈值的预设纹理维度复杂度下界值时,计算所述场景维度的全局内容复杂度信息和所述预设场景维度复杂度上界值之间的全局场景阈值差异信息;
限制调整子模块,用于对所述全局场景阈值差异信息进行限制调整,得到调整后差异信息;
相乘子模块,用于将所述调整后差异信息和预设参考码率进行相乘,得到所述第一调整码率。
在一实施例中,所述筛选单元,可以包括:
计算子单元,用于根据所述每个视频片段对应的局部视频属性信息,计算每个视频片段在纹理维度上的局部内容复杂度信息;
排序子单元,用于将视频片段在纹理维度上的局部内容复杂度信息进行排序,得到排序结果;
第二筛选子单元,用于根据所述排序结果,在所述视频片段中筛选出作为码率生成依据的参考视频片段。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面的各种可选方式中提供的方法。
相应的,本申请实施例还提供一种存储介质,所述存储介质存储有指令,所述指令被处理器执行时实现本申请实施例任一提供的码率自适应方法。
本申请实施例可以获取视频的全局视频属性信息,以及视频中至少一个视频片段对应的局部视频属性信息;根据每个视频片段对应的局部视频属性信息,在视频片段中筛选出作为码率生成依据的参考视频片段;根据视频的全局视频属性信息,从至少一个维度视频进行复杂度预估,得到视频在至少一个维度上的全局内容复杂度信息;根据参考视频片段的局部视频属性信息,从至少一个维度对参考视频片段进行复杂度预估,得到参考视频片段在至少一个维度上的局部内容复杂度信息;根据至少一个维度上的全局内容复杂度信息和至少一个维度上的局部内容复杂度信息,生成视频对应的目标调整码率;根据目标调整码率,对视频进行转码操作,可以提高视频转码的质量。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的码率自适应方法的场景示意图;
图2是本申请实施例提供的码率自适应方法的流程示意图;
图3是本申请实施例提供的码率自适应方法的又一流程示意图;
图4是本申请实施例提供的码率自适应装置的结构示意图;
图5是本申请实施例提供的计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,然而,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提出了一种码率自适应方法,该码率自适应方法可以由码率自适应装置执行,该码率自适应装置可以集成在计算机设备中。其中,该计算机设备可以包括终端以及服务器等中的至少一个。即,本申请实施例提出的码率自适应方法即可以由终端执行,还可以由服务器执行,还可以由能够进行互相通信的终端和服务器共同执行。
其中,终端可以包括但不限于智能手机、平板电脑、笔记本电脑、个人电脑(Personal Computer,PC)、智能家电、可穿戴电子设备、VR/AR设备、车载终端、智能语音交互设备等等。
服务器可以为多个异构系统之间的互通服务器或者后台服务器,还可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、以及大数据和人工智能平台等基础云计算服务的云服务器等等。
需要说明的是,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
在一实施例中,如图1所述,码率自适应装置可以集成在终端或服务器等计算机设备上,以实施本申请实施例提出的码率自适应方法。具体地,终端10可以通过服务器11获取视频的全局视频属性信息,以及视频中至少一个视频片段对应的局部视频属性信息;根据每个视频片段对应的局部视频属性信息,在视频片段中筛选出作为码率生成依据的参考视频片段;根据视频的全局视频属性信息,从至少一个维度对视频进行复杂度预估,得到视频在至少一个维度上的全局内容复杂度信息;根据参考视频片段的局部视频属性信息,从至少一个维度对参考视频片段进行复杂度预估,得到参考视频片段在至少一个维度上的局部内容复杂度信息;根据至少一个维度上的全局内容复杂度信息和至少一个维度上的局部内容复杂度信息,生成视频对应的目标调整码率;根据目标调整码率,对视频进行转码操作。
以下分别进行详细说明,需要说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
本申请实施例将从码率自适应装置的角度进行描述,该码率自适应装置可以集成在计算机设备中,该计算机设备可以是服务器,也可以是终端等设备。
如图2所述,提供了一种码率自适应方法,具体流程包括:
101、获取视频的全局视频属性信息,以及视频中至少一个视频片段对应的局部视频属性信息。
其中,视频的全局视频属性信息可以包括对视频整体进行说明的信息。例如,通过视频的全局视频属性信息,可以知道视频的图像空间细节的压缩情况、视频的分辨率、质量、大小,等等,从而可以根据视频的全局视频属性信息对视频的目标调整码率进行决策。例如,视频的全局属性信息可以包括全局量化参数、全局编码预测模式、全局运动矢量残差等信息。
其中,全局量化参数(Quantizer Parameter,QF)可以用于说明视频中图像空间细节的压缩情况。全局量化参数在一定程度上决定了视频的图像质量。一般情况下,若全局量化参数越小,更多的图像细节就会被保留,视频的图像质量会越高。反之,若全局量化参数越大,则图像细节会被忽略地更多,视频的图像质量会越低。
其中,全局编码预测模型可以包括全局帧内模式、全局帧间模式、全局跳过模式。
其中,全局帧内模式可以指频编码过程中,利用当前图像中已编码像素来预测当前编码块,从而有效去除空间冗余度的编码模式。
其中,全局帧间模式可以指视频编码过程中,利用相邻帧中已编码像素来预测当前编码块,从而有效去除时域冗余度的编码模式。
其中,全局运动矢量残差是指视频编码采用帧间预测时,表征当前编码块和相邻帧预测块之间相对关系的运动矢量与运动矢量预测值的差。
在一实施例中,在获取到视频之后,可以利用相应的解码器对视频进行信息提取,保存和统计解码过程中得到的信息。例如,通过利用解码器对视频进行信息提取,可以得到视频的实时码率
Figure DEST_PATH_IMAGE001
、视频中每一视频帧对应的平均量化参数
Figure DEST_PATH_IMAGE002
、视频中每帧对应的运动矢量残差
Figure DEST_PATH_IMAGE003
、视频中每帧的帧内模式比例
Figure DEST_PATH_IMAGE004
、每帧的帧间模式比例
Figure 157131DEST_PATH_IMAGE004
和跳过模式比例
Figure DEST_PATH_IMAGE005
,其中,n表示帧序号。
然后,可以根据视频中每帧对应的属性信息计算视频全局视频属性信息。例如,可以将视频中视频帧的平均量化参数进行平均,得到视频的全局量化参数。例如,假设视频包括M个视频帧,则视频的全局量化参数可以表示为
Figure DEST_PATH_IMAGE006
。同理,可以利用求平均的方式,计算得到视频的全局帧间模式比例
Figure DEST_PATH_IMAGE007
、全局帧内模式比例
Figure DEST_PATH_IMAGE008
、全局跳过模式比例
Figure DEST_PATH_IMAGE009
和全局运动矢量残差
Figure DEST_PATH_IMAGE010
在一实施例中,同一视频不同的片段的内容和复杂度可能会不同。若仅用全局信息决策目标调整码率,可能会导致转码出来的部分视频片段质量差。为了视频整体的转码质量,本申请实施例还可以获取视频中至少一个视频片段对应的局部视频属性信息,通过视频片段对应的局部视频属性信息,可以从更细的维度决策视频的目标调整码率,使得目标调整码率既可以兼顾视频的整体质量,还可以兼顾视频中视频片段质量。
其中,视频片段的局部视频属性信息可以包括对视频片段进行说明的信息。例如,通过视频片段的局部视频属性信息,可以知道视频片段的图像空间细节的压缩情况、视频片段的分辨率、质量、大小,等等,从而可以根据视频片段的局部视频属性信息对视频的目标调整码率进行决策。例如,视频片段的局部属性信息可以包括局部量化参数、局部编码预测模式、局部运动矢量残差等信息。
例如,可以将视频按照每隔N秒分成若干个视频片段,统计视频片段的局部量化参数
Figure DEST_PATH_IMAGE011
、局部运动矢量残差
Figure DEST_PATH_IMAGE012
、局部帧间模式比例
Figure DEST_PATH_IMAGE013
、局部帧内模式比例
Figure DEST_PATH_IMAGE014
、局部跳过模式比例
Figure DEST_PATH_IMAGE015
和局部运动矢量残差
Figure 109825DEST_PATH_IMAGE012
。其中,k可以表示视频中第k个视频片段。
例如,可以根据视频片段中每一帧对应的属性信息进行求平均,得到视频片段对应的局部视频属性信息。例如,可以将视频片段中每一帧对应的平均量化参数求平均,得到视频片段对应的局部量化参数
Figure DEST_PATH_IMAGE016
在一实施例中,本申请实施例中的视频可以是各种类型的视频,且本申请实施例所提及的视频既可以是长视频也可以是短视频。例如,视频可以是电影、短视频、综艺片段,等等,本申请实施例对此并无限制。
在一实施例中,本申请实施中的视频可以是基于各种传输协议进行传输的视频。例如,本申请实施中的视频可以是AVC/H.264或HEVC等视频码流。
102、根据每个视频片段对应的局部视频属性信息,在视频片段中筛选出作为码率生成依据的参考视频片段。
在一实施例中,为了更好地保证视频质量,可以根据每个视频片段对应的局部视频属性信息,在视频片段中筛选出作为码率生成依据的参考视频片段。
例如,假设将视频拆分成了5个视频片段,会在这5个视频片段中筛选出其中一个片段作为参考视频片段。然后,可以根据该参考视频片段计算视频的目标调整码率。
其中,由于参考视频片段是作为码率生成的依据,所以,为了更好地保证质量,可以选择视频复杂度最高的片段作为局部挑食视频码率的依据。具体的,步骤“根据每个视频片段对应的局部视频属性信息,在视频片段中筛选出作为码率生成依据的参考视频片段”,可以包括:
根据每个视频片段对应的局部视频属性信息,计算每个视频片段在纹理维度上的局部内容复杂度信息;
将视频片段在纹理维度上的局部内容复杂度信息进行排序,得到排序结果;
根据排序结果,在视频片段中筛选出作为码率生成依据的参考视频片段。
其中,纹理维度上的局部内容复杂度信息可以用于描述视频片段中画面的复杂度。例如,当视频片段中画面的内容很多时,则视频片段的画面复杂度较高。又例如,当视频片段中画面的内容较少时,则视频片段的画面复杂度较低。例如,假设视频片段的画面包括多个人物时,则视频片段的画面复杂度较高。若视频片段的画面中仅包括一个人物时,则视频片段的画面复杂度较低。
在一实施例中,可以根据每个视频片段对应的局部属性信息,计算每个视频片段在纹理维度上的局部内容复杂度信息。
其中,视频片段的局部属性信息可以包括视频片段的局部帧间模式比例、局部帧内模式比例、局部跳过模式比例和局部运动矢量残差。
其中,局部帧间模式比例、局部帧内模式比例和局部跳过模式比例可以反馈出视频片段中视频帧使用的编码模式的比例。例如,当视频片段的局部帧间模式比例为1/5时,可以说明视频片段的视频帧中有1/5的宏块是采用了帧间模式进行编码。
一般情况下,视频片段的局部帧间模式比例、局部帧内模式比例、局部跳过模式比例和局部运动矢量残差也可以反馈视频片段的复杂程度。例如,当局部帧内模式的比例更高时,可以说明视频片段的视频帧中较多的宏块采用了帧内模式进行编码,视频片段的复杂度较高。而当局部帧间模式比例和局部跳过模式比例更高时,可以说明视频片段的视频帧中较多的宏块采用了帧间模式和跳过模式进行编码,视频片段的复杂度较低。其中,由于这些编码模式都是对视频帧的宏块进行处理,所以编码模式可以说明视频片段在纹理维度上的局部内容复杂度信息,因此,可以通过视频片段的局部编码模式信息预估视频在纹理维度上的局部内容复杂度信息。
具体的,步骤“根据每个视频片段对应的局部属性信息,计算每个视频片段在纹理维度上的局部内容复杂度信息”,可以包括:
对视频片段的局部属性信息进行解析,得到视频片段的局部帧间模式比例、局部帧内模式比例、局部跳过模式比例和局部运动矢量残差;
根据局部帧间模式比例、局部帧内模式比例和局部跳过模式比例,计算视频片段的局部编码模式比率;
将局部编码模式比率和局部运动矢量残差进行融合,得到视频片段在纹理维度上的局部内容复杂度信息。
其中,局部编码模式比率可以用于衡量视频片段中采用帧内模式进行编码和采用帧内模式以及跳过模式进行编码的比率,从而说明视频片段的画面复杂度。例如,第k个视频片段对应的局部编码模式比率可以如下表示:
Figure DEST_PATH_IMAGE017
其中,
Figure DEST_PATH_IMAGE018
可以指第k个视频片段对应的局部编码模式比率,α、β可以指常数参数,用于调节局部编码模式比例的大小,从而避免局部编码模式比率异常。例如,可以令α=1.5,β=1.0。一般情况下,
Figure 30507DEST_PATH_IMAGE018
越大,说明视频片段中采用帧内模式进行编码的比率更高,则视频画面复杂度越高。反之,若
Figure 894558DEST_PATH_IMAGE018
越小,说明视频片段中采用帧内模式以及跳过模式进行编码的比率更高,视频的画面复杂度越低。
然后,可以将局部编码模式比率和局部运动矢量残差进行融合,得到视频片段在纹理维度上的局部内容复杂度信息。例如,可以将局部编码模式比率和局部运动矢量残差进行相乘,得到视频片段在纹理维度上的局部内容复杂度信息。
在一实施例中,可以按照下列公式预估视频在纹理维度上的全局内容复杂度信息:
Figure DEST_PATH_IMAGE019
其中,
Figure DEST_PATH_IMAGE020
可以指第k个视频片段在纹理维度上的全局内容复杂度信息,
Figure DEST_PATH_IMAGE021
可以是常数参数,用于调节
Figure 82832DEST_PATH_IMAGE020
的大小,避免
Figure 498770DEST_PATH_IMAGE020
出现异常。例如,可以令
Figure DEST_PATH_IMAGE022
在一实施例中,通过上述步骤,可以计算得到每个视频片段在纹理维度上的局部内容复杂度信息。然后,可以将视频片段在纹理维度上的局部内容复杂度信息进行排序,得到排序结果,并根据排序结果,在视频片段中筛选出作为码率生成依据的参考视频片段。
例如,将视频按照每隔N秒分成P个视频片段。然后,可以将这P个视频片段在纹理维度上的局部内容复杂度信息进行排序,得到排序结果。然后,可以根据排序结果,在P个视频片段中筛选出作为码率生成依据的参考视频片段。例如,可以在这个P个视频片段中筛选出画面复杂度最高的视频片段作为参考视频片段。
在一实施例中,同一个视频不同的视频片段的内容与复杂度可能不同,仅用全局信息决策的目标码率可能造成转码出来的部分片段视频质量较差,因此还可以利用视频中局部片段信息进行码率调整。将视频按照每隔N秒分成若干片,统计每个视频片段中的平均量化参数
Figure DEST_PATH_IMAGE023
,平均运动矢量残差
Figure DEST_PATH_IMAGE024
、平均帧内模式比例
Figure DEST_PATH_IMAGE025
、平均帧间模式比例
Figure DEST_PATH_IMAGE026
和平均跳过模式比例
Figure DEST_PATH_IMAGE027
。其中k表示第k个视频片段。为了更好的保证视频质量,可以选择视频复杂度最高的片段作为局部调整视频码率的依据,具体目标函数如下:
Figure DEST_PATH_IMAGE028
即找到使得其中目标函数
Figure DEST_PATH_IMAGE029
最小的视频片段作为参考视频片段。
103、根据视频的全局视频属性信息,从至少一个维度对视频进行复杂度预估,得到视频在至少一个维度上的全局内容复杂度信息。
在一实施例中,现有的码率自适应技术仅依据分辨率和帧率信息等简单参数信息生成视频的码率。而仅依据分辨率和帧率信息并不能有效地表征视频的复杂度,会造成生成的码率无法完全满足不同场景的视频指令需求。为此,本申请实施例可以根据视频的全局视频属性信息,从至少一个维度对视频进行复杂度评估,得到视频在至少一个维度上的全局内容复杂度信息。
其中,全局内容复杂度信息可以用于说明视频的内容复杂度。其中,不同维度的全局内容复杂度信息对视频复杂度的描述角度不同。例如,不同维度的全局内容复杂度信息可以包括纹理维度的全局内容复杂度信息和场景维度的全局内容复杂度信息。
其中,场景维度的全局内容复杂度信息可以用于描述视频的场景复杂度。例如,当视频中有多个场景进行切换时,可以说明视频的场景复杂度较高。而当视频中只有单一一个场景时,可以说明视频的场景复杂度较低。例如,假设视频仅包括运动场一个场景,则视频的场景复杂度较低。又例如,假设视频中包括运动场、教室、医务室和电影院等多个场景,则视频的场景复杂度较高。
其中,纹理维度的全局内容复杂度信息可以用于描述视频中画面的复杂度。例如,当视频中画面的内容很多时,则视频的画面复杂度较高。又例如,当视频中画面的内容较少时,则视频的画面复杂度较低。例如,假设视频的画面包括多个人物时,则视频的画面复杂度较高。若视频的画面中仅包括一个人物时,则视频的画面复杂度较低。
在一实施例中,全局视频属性信息可以包括全局量化参数、全局帧间模式比例、全局运动矢量残差等信息。可以根据这些信息预估视频在至少一个维度上的全局内容复杂度信息。具体的,步骤“根据每个视频片段对应的局部视频属性信息,在视频片段中筛选出作为码率生成依据的参考视频片段”,可以包括:
对全局视频属性信息进行解析,得到视频的全局量化参数和全局编码模式信息;
根据视频的全局量化参数,预估视频在场景维度上的全局内容复杂度信息;
根据视频的全局编码模式信息,预估视频在纹理维度上的全局内容复杂度信息。
其中,视频的全局编码模式信息可以包括视频的全局帧间模式比例、全局帧内模式比例、全局跳过模式比例和全局运动矢量残差。
在一实施例中,视频的量化参数可以反馈视频的码率,而视频的码率可以反应视频的复杂度,因此,可以根据视频的全局量化参数,预估视频在场景维度上的全局内容复杂度信息。例如,可以根据视频的全局量化参数,预估视频的全局码率。然后,根据全局码率计算视频在场景维度上的全局内容复杂度信息。
具体的,步骤“根据视频的全局量化参数,预估视频在场景维度上的全局内容复杂度信息”,可以包括:
根据全局量化参数,预估视频对应的全局码率;
计算视频的全局码率和视频的实时码率之间的码率差异信息;
计算码率差异信息和实时码率之间的差异比率,得到视频在场景维度上的全局内容复杂度信息。
其中,全局码率可以用于说明视频估计得到的码率。该全局码率是一个预估数值,表示视频所需要的码率的大概值。
其中,视频的实时码率可以指视频实际上所需的码率。
在一实施例中,一般情况下,视频的量化参数越大,视频的码率会越低,导致视频的质量越差。反之,若视频的量化参数越小,视频的码率会越高,从而使得视频的质量越高。可见,视频的量化参数和码率之间是存在关联关系,因此,可以基于量化参数和码率之间的关联关系,根据全局量化参数,预估视频对应的全局码率。
例如,量化参数和码率之间的关联关系可以是指数关系。例如,全局量化参数和码率之间的关联关系可以为下述公式所述,所以可以根据全局量化参数预估视频对应的全局码率:
Figure DEST_PATH_IMAGE030
其中,
Figure DEST_PATH_IMAGE031
可以指预估的全局码率,K、B以及
Figure DEST_PATH_IMAGE032
可以是常数系数,可以根据具体场景进行细微调整。例如,假设K=0.25,B=5000,λ=5.8。
然后,可以计算视频的全局码率和视频的实时码率之间的码率差异信息。然后,计算码率差异信息和实时码率之间的差异比率,得到视频在场景维度上的全局内容复杂度信息。例如,可以将视频的全局码率和实时码率进行相减,得到码率差异信息。然后,可以将码率差异信息除以视频的实时码率,得到视频在场景维度上的全局内容复杂度信息。
在一实施例中,可以按照下列公式计算视频在场景维度上的全局内容复杂度信息:
Figure DEST_PATH_IMAGE033
其中,
Figure DEST_PATH_IMAGE034
可以表示视频在场景维度上的全局内容复杂度信息。一般情况下,
Figure 624857DEST_PATH_IMAGE034
越小,可以表示视频场景越复杂。若
Figure 660641DEST_PATH_IMAGE034
越大,可以表示视频场景约简单。
在一实施例中,视频的全局编码模式信息可以包括视频的全局帧间模式比例、全局帧内模式比例、全局跳过模式比例和全局运动矢量残差。
其中,全局帧间模式比例、全局帧内模式比例和全局跳过模式比例可以反馈出视频中视频帧使用的编码模式的比例。例如,当视频的全局帧间模式比例为1/5时,可以说明视频的视频帧中有1/5的宏块是采用了帧间模式进行编码。
一般情况下,视频的全局帧间模式比例、全局帧内模式比例、全局跳过模式比例和全局运动矢量残差也可以反馈视频的复杂程度。例如,当全局帧内模式的比例更高时,可以说明视频的视频帧较多的宏块采用了帧内模式进行编码,视频的复杂度较高。而当全局帧间模式比例和全局跳过模式比例更高时,可以说明视频的视频帧较多的宏块采用了帧间模式和跳过模式进行编码,视频的复杂度较低。其中,由于这些编码模式都是对视频帧的宏块进行处理,所以编码模式可以说明视频在纹理维度上的全局内容复杂度信息,因此,可以通过视频的全局编码模式信息预估视频在纹理维度上的全局内容复杂度信息。
具体的,步骤“根据视频的全局编码模式信息,预估视频在纹理维度上的全局内容复杂度信息”,可以包括:
对全局编码模式信息进行解析,得到视频的全局帧间模式比例、全局帧内模式比例、全局跳过模式比例和全局运动矢量残差;
根据全局帧间模式比例、全局帧内模式比例和全局跳过模式比例,计算视频的全局编码模式比率;
将全局编码模式比率和全局运动矢量残差进行融合,得到视频在纹理维度上的全局内容复杂度信息。
其中,全局编码模式比率可以衡量视频中采用帧内模式进行编码和采用帧内模式以及跳过模式进行编码的比率,从而说明视频的画面复杂度。例如,全局编码模式比率可以如下表示:
Figure DEST_PATH_IMAGE035
其中,
Figure DEST_PATH_IMAGE036
可以指全局编码模式比率,α、β可以指常数参数,用于调节全局编码模式比例的大小,从而避免全局编码模式比率异常。例如,可以令α=1.5,β=1.0。一般情况下,
Figure 860678DEST_PATH_IMAGE036
越大,说明视频中采用帧内模式进行编码的比率更高,则视频画面复杂度越高。反之,若
Figure 198250DEST_PATH_IMAGE036
越小,说明视频中采用帧内模式以及跳过模式进行编码的比率更高,视频的画面复杂度越低。
然后,可以将全局编码模式比率和全局运动矢量残差进行融合,得到视频在纹理维度上的全局内容复杂度信息。例如,可以将全局编码模式比率和全局运动矢量残差进行相乘,得到视频在纹理维度上的全局内容复杂度信息。
在一实施例中,可以按照下列公式预估视频在纹理维度上的全局内容复杂度信息:
Figure DEST_PATH_IMAGE037
其中,
Figure DEST_PATH_IMAGE038
可以指视频在纹理维度上的全局内容复杂度信息,
Figure DEST_PATH_IMAGE039
可以是常数参数,用于调节
Figure 218159DEST_PATH_IMAGE038
的大小,避免
Figure 797913DEST_PATH_IMAGE038
出现异常。例如,可以令
Figure DEST_PATH_IMAGE040
在一实施例中,现有的码率自适应方法往往是依据视频的分辨率和帧率信息生成视频片段码率,并无法有效地表征视频的内容复杂度。而在本申请实施例中,可以通过视频的全局量化参数,预估视频在场景维度上的全局内容复杂度信息,以及根据视频的全局编码模式信息,预估视频在纹理维度上的全局内容复杂度信息。通过场景维度上的全局内容复杂度信息,可以知道视频的场景复杂度。通过纹理维度上的全局内容复杂度信息,可以知道视频的画面复杂度。通过结合视频的场景复杂度和画面复杂度,可以知道视频的内容复杂度,从而可以根据视频的内容复杂度生成视频的目标调整码率,使得目标调整码率可以更好地适配视频,提高了视频转码的质量。
104、根据参考视频片段的局部视频属性信息,从至少一个维度对参考视频片段进行复杂度预估,得到参考视频片段在至少一个维度上的局部内容复杂度信息。
在一实施例中,本申请实施例是基于对待转码视频的预分析,提取相应的码率、量化参数、编码模式比例、运动矢量残差等视频属性信息,然后基于这些信息评价视频的复杂度。此外,本申请实施例还会对视频的不同视频片段进行局部复杂度评价,最后融合全局和局部的码率判断结果完成自适应目标码率调整,最后完成视频的转码。
因此,还可以根据参考视频片段的局部视频属性信息,从至少一个维度对所述参考视频片段进行复杂度预估,得到参考视频片段在至少一个维度上的局部内容复杂度信息。
其中,预估参考视频片段在至少一个维度上的局部内容复杂度可以参考预估视频在至少一个维度上的全局内容复杂度。具体的,步骤“根据参考视频片段的局部视频属性信息,从至少一个维度对参考视频片段进行复杂度预估,得到参考视频片段在至少一个维度上的局部内容复杂度信息”,可以包括:
对局部视频属性信息进行解析,得到参考视频片段的局部量化参数和局部编码模式信息;
根据参考视频片段的局部量化参数,预估参考视频片段在场景维度上的局部内容复杂度信息;
根据参考视频片段的局部编码模式信息,预设参考视频片段在纹理维度上的局部内容复杂度信息。
在一实施例中,步骤“根据参考视频片段的局部量化参数,预估参考视频片段在场景维度上的局部内容复杂度信息”,可以参考步骤“根据视频的全局量化参数,预估视频在场景维度上的全局内容复杂度信息”。
例如,假设参考视频片段的局部量化参数为
Figure DEST_PATH_IMAGE041
。然后,可以按照下列公式计算参考视频片段在场景维度上的局部内容复杂度信息:
Figure DEST_PATH_IMAGE042
其中,
Figure DEST_PATH_IMAGE043
可以表示视频片段在场景维度上的局部内容复杂度信息。
在一实施例中,步骤“根据参考视频片段的局部编码模式信息,预设参考视频片段在纹理维度上的局部内容复杂度信息”,可以参考步骤“根据视频的全局编码模式信息,预估视频在纹理维度上的全局内容复杂度信息”。
例如,假设参考视频片段的局部编码模式信息包括局部运动矢量残差
Figure DEST_PATH_IMAGE044
、局部帧间模式比例
Figure DEST_PATH_IMAGE045
、局部帧内模式比例
Figure DEST_PATH_IMAGE046
、局部跳过模式比例
Figure DEST_PATH_IMAGE047
和局部运动矢量残差
Figure 632883DEST_PATH_IMAGE044
。可以按照下列公式预估参考视频片段在纹理维度上的局部内容复杂度信息:
Figure DEST_PATH_IMAGE048
其中,
Figure DEST_PATH_IMAGE049
可以指参考视频片段在纹理维度上的局部内容复杂度信息。
105、根据至少一个维度上的全局内容复杂度信息和至少一个维度上的局部内容复杂度信息,生成视频对应的目标调整码率。
在一实施例中,在计算视频的调整码率时,可以根据主观经验或者视频传输的基本需求,确定视频转码的预设参考码率
Figure DEST_PATH_IMAGE050
,从而可以使得该预设参考码率作为依据生成目标调整码率。例如,当视频的分辨率比较小时,可以设置一个较小的预设参考码率。而当视频的分辨率较大时,可以设置一个较大的预设参考码率,等等。然后,若视频的复杂度较高,预设参考码率不满足需求时,可以根据视频参考码率生成较大的目标调整码率,等等。
在一实施例中,可以根据至少一个维度上的全局内容复杂度信息和至少一个维度上的局部内容复杂度信息,生成视频对应的目标调整码率。例如,可以根据至少一个维度上的全局内容复杂度信息,生成第一调整码率。可以根据至少一个维度上的局部内容复杂度信息,生成第二调整码率。然后,在第一调整码率和第二调整码率中筛选出目标调整码率。
又例如,当至少一个维度上的全局内容复杂度信息包括场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息时,可以根据场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息,生成视频对应的第一调整码率。又例如,当至少一个维度上的局部内容复杂度信息包括场景维度的局部内容复杂度信息和纹理维度的局部内容复杂度信息时,可以根据场景维度的局部内容复杂度信息和纹理维度的局部内容复杂度信息,生成视频的第二调整码率。然后,可以在第一调整码率和第二调整码率中筛选出目标调整码率。
具体的,步骤“根据至少一个维度上的全局内容复杂度信息和至少一个维度上的局部内容复杂度信息,生成视频对应的目标调整码率”,可以包括:
根据场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息,生成视频对应的第一调整码率;
根据场景维度的局部内容复杂度信息和纹理维度的局部内容复杂度信息,生成视频的第二调整码率;
在第一调整码率和第二调整码率中筛选出目标调整码率。
在一实施例中,由于场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息都可以反馈视频的复杂度。当视频的复杂度过高时,便对视频的实时码率进行调整,得到调整码率。因此,可以在生成视频的调整码率时,可以根据复杂度信息判断视频的复杂度,然后根据判断结果调整码率。
具体的,步骤“根据场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息,生成视频对应的第一调整码率”,可以包括:
将场景维度的全局内容复杂度信息和预设场景维度复杂度阈值进行比较,得到第一全局比较结果;
将纹理维度的全局内容复杂度信息和预设纹理维度复杂度阈值进行比较,得到第二全局比较结果;
根据第一全局比较结果和第二全局比较结果,生成视频对应的第一调整码率。
其中,预设场景维度复杂度阈值可以是预先设置好的,用于衡量视频在场景维度上的复杂度的参考阈值。其中,预设场景维度复杂度阈值可以包括预设场景维度复杂度上界值和预设场景维度复杂度下界值。例如,当场景维度的全局内容复杂度信息小于该预设场景维度复杂度下界值时,可能说明视频的场景复杂度较高,需要上调预设参考码率。
其中,预设纹理维度复杂度阈值可以是预先设置好的,用于衡量视频在纹理维度上的复杂度的参考阈值。其中,预设纹理维度复杂度阈值可以包括预设纹理维度复杂度上界值和预设纹理维度复杂度下界值。例如,当纹理维度的全局内容复杂度信息大于预设纹理维度复杂度上界值,可能说明视频的画面复杂度较高,需要上调预设参考码率。
在一实施例中,当场景维度的全局内容复杂度信息小于预设场景维度复杂度下界值时或当纹理维度的全局内容复杂度信息大于预设纹理维度复杂度上界值时,可以说明视频的复杂度较高,视频现在的码率可能会不满足视频的需求。此时,可以根据场景维度的全局内容复杂度信息或根据纹理维度的全局内容复杂度信息生成第一调整码率,使得第一调整码率适配视频的复杂度。
具体的,步骤“根据第一全局比较结果和第二全局比较结果,生成视频对应的第一调整码率”,可以包括:
当场景维度的全局内容复杂度信息小于预设场景维度复杂度下界值时,将场景维度的全局内容复杂度信息、预设场景维度复杂度阈值以及预设参考码率进行算术运算,得到视频对应的第一调整码率;
或当纹理维度的全局内容复杂度信息大于预设纹理维度复杂度上界值时,将纹理维度的全局内容复杂度信息、预设场景维度复杂度下界值以及预设参考码率进行算术运算,得到视频对应的第一调整码率。
在一实施例中,当场景维度的全局内容复杂度信息小于预设场景维度复杂度下界值时,可以说明视频的场景复杂度较高,视频的预设参考码率可能会不符合需求,因此可以将场景维度的全局内容复杂度信息、预设场景维度复杂度下界值以及预设参考码率进行算术运算,得到视频对应的第一调整码率。
具体的,步骤“当场景维度的全局内容复杂度信息小于预设场景维度复杂度下界值时,将场景维度的全局内容复杂度信息、预设场景维度复杂度下界值和预设参考码率进行算术运算,得到视频对应的第一调整码率”,可以包括:
当场景维度的全局内容复杂度信息小于预设场景维度复杂度下界值时,计算场景维度的全局内容复杂度信息和预设场景维度复杂度下界值之间的全局场景阈值差异信息;
对全局场景阈值差异信息进行对数运算,得到运算后差异信息;
将运算后差异信息和预设参考码率进行相乘处理,得到视频对应的第一调整码率。
例如,当场景维度的全局内容复杂度信息小于预设场景维度复杂度下界值时,可以计算场景维度的全局内容复杂度信息和预设场景维度复杂度下界值之间的全局场景阈值差异信息。例如,可以将预设场景维度复杂度下界值减去场景维度的全局内容复杂度信息,得到全局场景阈值差异信息。
然后,为了避免全局场景阈值差异信息过大,从而导致第一调整码率过大,使得视频的码率变化过大,可以对全局场景阈值差异信息进行对数运算,以控制视频的码率变化。然后,可以将运算后差异信息和视频的实时码率进行相乘处理,得到视频对应的第一调整码率。
例如,可以按照下列公式计算第一调整码率:
Figure DEST_PATH_IMAGE051
其中,
Figure DEST_PATH_IMAGE052
可以指第一调整码率。
Figure DEST_PATH_IMAGE053
可以指预设场景维度复杂度下界值。
Figure DEST_PATH_IMAGE054
可以是常数,也是用于调整第一调整码率。
在一实施例中,当纹理维度的全局内容复杂度信息大于预设纹理维度复杂度上界值时,也可以说明视频的场景复杂度较高。因此当纹理维度的全局内容复杂度信息大于预设纹理维度复杂度上界值时,因此,可以将纹理维度的全局内容复杂度信息、预设纹理维度复杂度上界值以及预设参考码率进行算术运算,得到视频对应的第一调整码率。
例如,可以计算纹理维度的全局内容复杂度信息和预设纹理维度复杂度上界值之间的全局纹理阈值差异信息。然后,对全局纹理阈值差异信息进行对数运算,得到运算后差异信息。然后,将运算后差异信息和预设参考码率进行相乘处理,得到视频对应的第一调整码率。
例如,可以按照下列公式计算第一调整码率:
Figure DEST_PATH_IMAGE055
其中,
Figure DEST_PATH_IMAGE056
可以指预设纹理维度复杂度上界值。
在一实施例中,当场景维度的全局内容复杂度信息大于预设场景维度复杂度上界值,以及纹理维度的全局内容复杂度信息小于预设纹理维度复杂度下界值时,可以说明视频的复杂度较低,视频的预设参考码率可以满足需求。而为了节约资源,可以适当地降低视频的码率,得到第一调整码率,使得可以在节约资源的同时,使得第一调整码率满足视频的需求。
具体的,步骤“根据第一全局比较结果和第二全局比较结果,生成视频对应的第一调整码率”,可以包括:
当场景维度的全局内容复杂度信息大于预设场景维度复杂度上界值,以及纹理维度的全局内容复杂度信息小于预设场景维度复杂度下界值时,计算场景维度的全局内容复杂度信息和预设场景维度复杂度上界值之间的全局场景阈值差异信息;
对全局场景阈值差异信息进行限制调整,得到调整后差异信息;
将调整后差异信息和预设参考码率进行相乘,得到第一调整码率。
例如,可以将场景维度的全局内容复杂度信息减去预设场景维度复杂度上界值,得到全局场景阈值差异信息。然后,对全局场景阈值差异信息进行限制调整,得到调整后差异信息。其中,对全局场景阈值差异信息进行限制调整可以指限制全局场景阈值差异信息的大小,避免第一调整码率异常。例如,令全局场景阈值差异信息乘以预设分数,得到调整后差异信息。然后,可以将调整后差异信息和预设参考码率进行相乘,得到第一调整码率。
例如,可以按照下列公式计算第一调整码率:
Figure DEST_PATH_IMAGE057
其中,C可以指预设场景维度复杂度上界值,
Figure DEST_PATH_IMAGE058
可以指预设场景维度复杂度下界值。
在一实施例中,可以根据差异比率
Figure DEST_PATH_IMAGE059
和纹理复杂度
Figure DEST_PATH_IMAGE060
进行码率调整。
例如,若
Figure 921782DEST_PATH_IMAGE059
小于T或者若
Figure 746430DEST_PATH_IMAGE060
大于
Figure DEST_PATH_IMAGE061
时,第一调整码率可以按照下列公式计算得到:
Figure DEST_PATH_IMAGE062
又例如,若
Figure DEST_PATH_IMAGE063
小于C以及
Figure DEST_PATH_IMAGE064
小于
Figure 631341DEST_PATH_IMAGE058
时,第一调整码率可以按照下列公式计算得到:
Figure DEST_PATH_IMAGE065
其他情况可以令第一调整码率等于预设参考码率:
Figure DEST_PATH_IMAGE066
在一实施例中,可以根据场景维度的局部内容复杂度信息和纹理维度的局部内容复杂度信息生成视频的第二调整码率。其中,步骤“根据场景维度的局部内容复杂度信息和纹理维度的局部内容复杂度信息生成视频的第二调整码率”,可以参考步骤“根据场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息,生成视频对应的第一调整码率”,此处不再重复阐述。
然后,可以在第一调整码率和第二调整码率中筛选出目标调整码率。例如,基于保证视频质量的原则,选取其中最大值作为码率调整的依据。例如,第一调整码率为
Figure DEST_PATH_IMAGE067
,第二调整码率为
Figure DEST_PATH_IMAGE068
,目标调整码率可以为:
Figure DEST_PATH_IMAGE069
其中,
Figure DEST_PATH_IMAGE070
可以表示目标调整码率。
106、根据目标调整码率,对视频进行转码操作。
在一实施例中,在得到目标调整码率之后,可以根据目标调整码率,对视频进行转码操作。
本申请实施例中,可以获取视频的全局视频属性信息,以及视频中至少一个视频片段对应的局部视频属性信息;根据每个视频片段对应的局部视频属性信息,在视频片段中筛选出作为码率生成依据的参考视频片段;根据视频的全局视频属性信息,从至少一个维度对视频进行复杂度预估,得到视频在至少一个维度上的全局内容复杂度信息;根据参考视频片段的局部视频属性信息,从至少一个维度对参考视频片段进行复杂度预估,得到参考视频片段在至少一个维度上的局部内容复杂度信息;根据至少一个维度上的全局内容复杂度信息和至少一个维度上的局部内容复杂度信息,生成视频对应的目标调整码率;根据目标调整码率,对视频进行转码操作。本申请实施例首先从多个不同的维度评估视频的复杂度,然后根据视频的复杂度生成视频对应的目标调整码率,使得目标调整码率和视频的复杂度可以相适应,从而提高视频转码的质量。例如,本申请实施例通过视频的场景复杂度和画面复杂度生成视频的目标调整码率。本申请实施例通过将视频的场景复杂度和画面复杂度作为考量,能有效地保证视频转码的质量。此外,本申请实施还从全局和局部两个角度评估视频的复杂度,使得目标调整码率即兼顾了视频整体的质量,也兼顾了视频局部的质量,提高了提高视频转码的质量。
本申请实施例可以用于视频文件在不同的设备间共享、交换或者播放,能够在网络情况对平均传输码率的限制的约束下,自适应完成视频码率调整,有效改善用户的视频观看体验。
根据上面实施例所描述的方法,以下将举例作进一步详细说明。
本申请实施例将以码率自适应方法集成在终端上为例来介绍本申请实施例方法。
在一实施例中,如图3所示,一种码率自适应方法,具体流程如下:
201、终端获取视频的全局视频属性信息,以及视频中至少一个视频片段对应的局部视频属性信息。
例如,对于输入的AVC/H.264或HEVC等视频码流,终端利用相应的解码器进行视频属性信息的提取,保存和统计解码过程中的量化参数、预测模式等信息,具体包括:视频的实时码率
Figure DEST_PATH_IMAGE071
、视频中每一视频帧对应的平均量化参数
Figure DEST_PATH_IMAGE072
、视频中每帧对应的运动矢量残差
Figure DEST_PATH_IMAGE073
、视频中每帧的帧内模式比例
Figure DEST_PATH_IMAGE074
、每帧的帧间模式比例
Figure DEST_PATH_IMAGE075
和跳过模式比例
Figure DEST_PATH_IMAGE076
,其中,n表示帧序号。
然后,可以根据视频中每帧对应的属性信息计算视频全局视频属性信息。例如,可以将视频中视频帧的平均量化参数进行平均,得到视频的全局量化参数。例如,假设视频包括M个视频帧,则视频的全局量化参数可以表示为
Figure DEST_PATH_IMAGE077
。同理,可以利用求平均的方式,计算得到视频的全局帧间模式比例
Figure DEST_PATH_IMAGE078
、全局帧内模式比例
Figure DEST_PATH_IMAGE079
、全局跳过模式比例
Figure DEST_PATH_IMAGE080
和全局运动矢量残差
Figure DEST_PATH_IMAGE081
又例如,可以将视频按照每隔N秒分成若干个视频片段,统计视频片段的局部量化参数
Figure DEST_PATH_IMAGE082
、局部运动矢量残差
Figure DEST_PATH_IMAGE083
、局部帧间模式比例
Figure DEST_PATH_IMAGE084
、局部帧内模式比例
Figure DEST_PATH_IMAGE085
、局部跳过模式比例
Figure DEST_PATH_IMAGE086
和局部运动矢量残差
Figure DEST_PATH_IMAGE087
。其中,k可以表示视频中第k个视频片段。
202、终端根据每个视频片段对应的局部视频属性信息,在视频片段中筛选出作为码率生成依据的参考视频片段。
在一实施例中,同一个视频不同的视频片段的内容与复杂度可能不同,仅用全局信息决策的目标码率可能造成转码出来的部分片段视频质量较差,因此还可以利用视频中局部片段信息进行码率调整。将视频按照每隔N秒分成若干片,统计每个视频片段中的平均量化参数
Figure DEST_PATH_IMAGE088
,平均运动矢量残差
Figure DEST_PATH_IMAGE089
、平均帧内模式比例
Figure DEST_PATH_IMAGE090
、平均帧间模式比例
Figure DEST_PATH_IMAGE091
和平均跳过模式比例
Figure DEST_PATH_IMAGE092
。其中k表示第k个视频片段。为了更好的保证视频质量,可以选择视频复杂度最高的片段作为局部调整视频码率的依据,具体目标函数如下:
Figure DEST_PATH_IMAGE093
即找到使得其中目标函数
Figure DEST_PATH_IMAGE094
最小的视频片段作为参考视频片段。
203、终端根据视频的全局视频属性信息,从至少一个维度对视频进行复杂度预估,得到视频在至少一个维度上的全局内容复杂度信息。
在一实施例中,可以按照下列公式计算视频在场景维度上的全局内容复杂度信息:
Figure DEST_PATH_IMAGE095
其中,
Figure DEST_PATH_IMAGE096
可以表示视频在场景维度上的全局内容复杂度信息。一般情况下,
Figure 820619DEST_PATH_IMAGE096
越小,可以表示视频场景越复杂。若
Figure 890206DEST_PATH_IMAGE096
越大,可以表示视频场景约简单。
在一实施例中,可以按照下列公式预估视频在纹理维度上的全局内容复杂度信息:
Figure DEST_PATH_IMAGE097
其中,
Figure DEST_PATH_IMAGE098
可以指视频在纹理维度上的全局内容复杂度信息,
Figure DEST_PATH_IMAGE099
可以是常数参数,用于调节
Figure 993029DEST_PATH_IMAGE098
的大小,避免
Figure 806264DEST_PATH_IMAGE098
出现异常。例如,可以令
Figure DEST_PATH_IMAGE100
204、终端根据参考视频片段的局部视频属性信息,从至少一个维度对参考视频片段进行复杂度预估,得到参考视频片段在至少一个维度上的局部内容复杂度信息。
在一实施例中,假设参考视频片段的局部属性信息包括局部运动矢量残差
Figure DEST_PATH_IMAGE101
、局部帧间模式比例
Figure DEST_PATH_IMAGE102
、局部帧内模式比例
Figure DEST_PATH_IMAGE103
、局部跳过模式比例
Figure DEST_PATH_IMAGE104
和局部运动矢量残差
Figure DEST_PATH_IMAGE105
。然后,可以参考步骤205预估参考视频片段在至少一个维度上的局部内容复杂度信息。
205、终端根据至少一个维度上的全局内容复杂度信息和至少一个维度上的局部内容复杂度信息,生成视频对应的目标调整码率。
在一实施例中,在计算视频的调整码率时,可以根据主观经验或者视频传输的基本需求,确定视频转码的预设参考码率
Figure DEST_PATH_IMAGE106
,从而可以使得该预设参考码率作为依据生成目标调整码率。例如,当视频的分辨率比较小时,可以设置一个较小的预设参考码率。而当视频的分辨率较大时,可以设置一个较大的预设参考码率,等等。然后,若视频的复杂度较高,预设参考码率不满足需求时,可以根据视频参考码率生成较大的目标调整码率,等等。
在一实施例中,可以根据差异比率
Figure DEST_PATH_IMAGE107
和纹理复杂度
Figure DEST_PATH_IMAGE108
进行码率调整。
例如,若
Figure DEST_PATH_IMAGE109
于T或者若
Figure DEST_PATH_IMAGE110
大于
Figure DEST_PATH_IMAGE111
时,第一调整码率可以按照下列公式计算得到:
Figure DEST_PATH_IMAGE112
又例如,若
Figure DEST_PATH_IMAGE113
小于C以及
Figure DEST_PATH_IMAGE114
小于
Figure DEST_PATH_IMAGE115
时,第一调整码率可以按照下列公式计算得到:
Figure DEST_PATH_IMAGE116
其他情况可以令第一调整码率等于预设参考码率:
Figure DEST_PATH_IMAGE117
同理,可以按照上述方式生成第二调整码率为
Figure DEST_PATH_IMAGE118
然后,可以在第一调整码率和第二调整码率中筛选出目标调整码率。例如,基于保证视频质量的原则,选取其中最大值作为码率调整的依据。例如,第一调整码率为
Figure DEST_PATH_IMAGE119
,第二调整码率为
Figure 943722DEST_PATH_IMAGE118
,目标调整码率可以为:
Figure DEST_PATH_IMAGE120
其中,
Figure DEST_PATH_IMAGE121
可以表示目标调整码率。
206、终端根据目标调整码率,对视频进行转码操作。
本申请实施例中,终端可以获取视频的全局视频属性信息,以及视频中至少一个视频片段对应的局部视频属性信息;终端根据每个视频片段对应的局部视频属性信息,在视频片段中筛选出作为码率生成依据的参考视频片段;终端根据视频的全局视频属性信息,从至少一个维度对视频进行复杂度预估,得到视频在至少一个维度上的全局内容复杂度信息;终端根据参考视频片段的局部视频属性信息,从至少一个维度对参考视频片段进行复杂度预估,得到参考视频片段在至少一个维度上的局部内容复杂度信息;终端根据至少一个维度上的全局内容复杂度信息和至少一个维度上的局部内容复杂度信息,生成视频对应的目标调整码率;终端根据目标调整码率,对视频进行转码操作,可以提高转码质量。
为了更好地实施本申请实施例提供的码率自适应方法,在一实施例中还提供了一种码率自适应装置,该码率自适应装置可以集成于计算机设备中。其中名词的含义与上述码率自适应方法中相同,具体实现细节可以参考方法实施例中的说明。
在一实施例中,提供了一种码率自适应装置,该码率自适应装置具体可以集成在计算机设备中,如图4所示,该码率自适应装置包括:获取单元301、筛选单元302、第一复杂度预估单元303、第二复杂度预估单元304、生成单元305和转码单元306,具体如下:
获取单元301,用于获取视频的全局视频属性信息,以及所述视频中至少一个视频片段对应的局部视频属性信息;
筛选单元302,用于根据每个视频片段对应的局部视频属性信息,在所述视频片段中筛选出作为码率生成依据的参考视频片段;
第一复杂度预估单元303,用于根据所述视频的全局视频属性信息,从至少一个维度对所述视频进行复杂度预估,得到所述视频在至少一个维度上的全局内容复杂度信息;
第二复杂度预估单元304,用于根据所述参考视频片段的局部视频属性信息,从至少一个维度对所述参考视频片段进行复杂度预估,得到所述参考视频片段在至少一个维度上的局部内容复杂度信息;
生成单元305,用于根据所述至少一个维度上的全局内容复杂度信息和所述至少一个维度上的局部内容复杂度信息,生成所述视频对应的目标调整码率;
转码单元306,用于根据所述目标调整码率,对所述视频进行转码操作。
在一实施例中,所述第一复杂度预估单元303,可以包括:
第一解析子单元,用于对所述全局视频属性信息进行解析,得到所述视频的全局量化参数和全局编码模式信息;
第一预估子单元,用于根据所述视频的全局量化参数,预估所述视频在场景维度上的全局内容复杂度信息;
第二预估子单元,用于根据所述视频的全局编码模式信息,预估所述视频在纹理维度上的全局内容复杂度信息。
在一实施例中,所述第一预估子单元,可以包括:
第一预估模块,用于根据所述全局量化参数,预估所述视频对应的全局码率;
第一计算模块,用于计算所述视频的全局码率和所述视频的实时码率之间的码率差异信息;
第二计算模块,用于计算所述码率差异信息和所述实时码率之间的差异比率,得到所述视频在场景维度上的全局内容复杂度信息。
在一实施例中,所述第二预估子单元,可以包括:
第一解析模块,用于对所述全局编码模式信息进行解析,得到所述视频的全局帧间模式比例、全局帧内模式比例、全局跳过模式比例和全局运动矢量残差;
第三计算模块,用于根据所述全局帧间模式比例、全局帧内模式比例和全局跳过模式比例,计算所述视频的全局编码模式比率;
第一融合模块,用于将所述全局编码模式比率和所述全局运动矢量残差进行融合,得到所述视频在纹理维度上的全局内容复杂度信息。
在一实施例中,所述第二复杂度预估单元304,可以包括:
第二解析子单元,用于对所述局部视频属性信息进行解析,得到所述参考视频片段的局部量化参数和局部编码模式信息;
第三预估子单元,用于根据所述参考视频片段的局部量化参数,预估所述参考视频片段在场景维度上的局部内容复杂度信息;
第四预估子单元,用于根据所述参考视频片段的局部编码模式信息,预设所述参考视频片段在纹理维度上的局部内容复杂度信息。
在一实施例中,所述生成单元305,可以包括:
第一生成子单元,用于根据所述场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息,生成所述视频的第一调整码率;
第二生成子单元,用于根据所述场景维度的局部内容复杂度信息和纹理维度的局部内容复杂度信息,生成所述视频的第二调整码率;
第一筛选子单元,用于在所述第一调整码率和所述第二调整码率中筛选出所述目标调整码率。
在一实施例中,所述第一生成子单元,可以包括:
第一比较模块,用于将所述场景维度的全局内容复杂度信息和预设场景维度复杂度阈值进行比较,得到第一全局比较结果;
第二比较模块,用于将所述纹理维度的全局内容复杂度信息和预设纹理维度复杂度阈值进行比较,得到第二全局比较结果;
第一生成模块,用于根据所述第一全局比较结果和所述第二全局比较结果,生成所述视频的第一调整码率。
在一实施例中,所述第一生成模块,可以包括:
第一算术运算子模块,用于当所述场景维度的全局内容复杂度信息小于所述预设场景维度复杂度阈值的预设场景维度复杂度下界值时,将所述场景维度的全局内容复杂度信息、所述预设场景维度复杂度下界值以及预设参考码率进行算术运算,得到所述视频对应的第一调整码率;
第二算术运算子模块,用于当所述纹理维度的全局内容复杂度信息大于所述预设纹理维度复杂度阈值的预设纹理维度复杂度上界值时,将所述纹理维度的全局内容复杂度信息、所述预设纹理维度复杂度上界值以及所述预设参考码率进行算术运算,得到所述视频对应的第一调整码率。
在一实施例中,所述第一算术运算子模块,可以用于:
当所述场景维度的全局内容复杂度信息小于所述预设场景维度复杂度阈值的预设场景维度复杂度下界值时,计算所述场景维度的全局内容复杂度信息和所述预设场景维度复杂度下界值之间的全局场景阈值差异信息;
对所述全局场景阈值差异信息进行对数运算,得到运算后差异信息;
将所述运算后差异信息和所述预设参考码率进行相乘处理,得到所述视频对应的第一调整码率。
在一实施例中,所述第一生成模块,可以包括:
计算子模块,用于当所述场景维度的全局内容复杂度信息大于所述预设场景维度复杂度阈值的预设场景维度复杂度上界值,以及所述纹理维度的全局内容复杂度信息小于所述预设纹理维度复杂度阈值的预设纹理维度复杂度下界值时,计算所述场景维度的全局内容复杂度信息和所述预设场景维度复杂度上界值之间的全局场景阈值差异信息;
限制调整子模块,用于对所述全局场景阈值差异信息进行限制调整,得到调整后差异信息;
相乘子模块,用于将所述调整后差异信息和预设参考码率进行相乘,得到所述第一调整码率。
在一实施例中,所述筛选单元302,可以包括:
计算子单元,用于根据所述每个视频片段对应的局部视频属性信息,计算每个视频片段在纹理维度上的局部内容复杂度信息;
排序子单元,用于将视频片段在纹理维度上的局部内容复杂度信息进行排序,得到排序结果;
第二筛选子单元,用于根据所述排序结果,在所述视频片段中筛选出作为码率生成依据的参考视频片段。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
通过上述的码率自适应装置可以提高视频转码的质量。
本申请实施例还提供一种计算机设备,该计算机设备可以包括终端或服务器,比如,计算机设备可以作为码率自适应终端,该终端可以为手机、平板电脑等等;又比如计算机设备可以为服务器,如码率自适应服务器等。如图5所示,其示出了本申请实施例所涉及的终端的结构示意图,具体来讲:
该计算机设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图5中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器401是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行计算机设备的各种功能和处理数据。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户页面和应用程序等,调制解调处理器主要处理无线通讯。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
计算机设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该计算机设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,计算机设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,计算机设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
获取视频的全局视频属性信息,以及所述视频中至少一个视频片段对应的局部视频属性信息;
根据每个视频片段对应的局部视频属性信息,在所述视频片段中筛选出作为码率生成依据的参考视频片段;
根据所述视频的全局视频属性信息,从至少一个维度对所述视频进行复杂度预估,得到所述视频在至少一个维度上的全局内容复杂度信息;
根据所述参考视频片段的局部视频属性信息,从至少一个维度对所述参考视频片段进行复杂度预估,得到所述参考视频片段在至少一个维度上的局部内容复杂度信息;
根据所述至少一个维度上的全局内容复杂度信息和所述至少一个维度上的局部内容复杂度信息,生成所述视频对应的目标调整码率;
根据所述目标调整码率,对所述视频进行转码操作。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中各种可选实现方式中提供的方法。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过计算机程序来完成,或通过计算机程序控制相关的硬件来完成,该计算机程序可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例还提供一种存储介质,其中存储有计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种码率自适应方法中的步骤。例如,该计算机程序可以执行如下步骤:
获取视频的全局视频属性信息,以及所述视频中至少一个视频片段对应的局部视频属性信息;
根据每个视频片段对应的局部视频属性信息,在所述视频片段中筛选出作为码率生成依据的参考视频片段;
根据所述视频的全局视频属性信息,从至少一个维度对所述视频进行复杂度预估,得到所述视频在至少一个维度上的全局内容复杂度信息;
根据所述参考视频片段的局部视频属性信息,从至少一个维度对所述参考视频片段进行复杂度预估,得到所述参考视频片段在至少一个维度上的局部内容复杂度信息;
根据所述至少一个维度上的全局内容复杂度信息和所述至少一个维度上的局部内容复杂度信息,生成所述视频对应的目标调整码率;
根据所述目标调整码率,对所述视频进行转码操作。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种码率自适应方法中的步骤,因此,可以实现本申请实施例所提供的任一种码率自适应方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种码率自适应方法、装置、计算机设备和存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (15)

1.一种码率自适应方法,其特征在于,包括:
获取视频的全局视频属性信息,以及所述视频中至少一个视频片段对应的局部视频属性信息;
根据每个视频片段对应的局部视频属性信息,在所述视频片段中筛选出作为码率生成依据的参考视频片段;
根据所述视频的全局视频属性信息,从至少一个维度对所述视频进行复杂度预估,得到所述视频在至少一个维度上的全局内容复杂度信息;
根据所述参考视频片段的局部视频属性信息,从至少一个维度对所述参考视频片段进行复杂度预估,得到所述参考视频片段在至少一个维度上的局部内容复杂度信息;
根据所述至少一个维度上的全局内容复杂度信息和所述至少一个维度上的局部内容复杂度信息,生成所述视频对应的目标调整码率;
根据所述目标调整码率,对所述视频进行转码操作。
2.根据权利要求1所述的方法,其特征在于,所述维度包括场景维度和纹理维度;所述根据所述视频的全局视频属性信息,从至少一个维度对所述视频进行复杂度预估,得到所述视频在至少一个维度上的全局内容复杂度信息,包括:
对所述全局视频属性信息进行解析,得到所述视频的全局量化参数和全局编码模式信息;
根据所述视频的全局量化参数,预估所述视频在场景维度上的全局内容复杂度信息;
根据所述视频的全局编码模式信息,预估所述视频在纹理维度上的全局内容复杂度信息。
3.根据权利要求2所述的方法,其特征在于,所述根据所述视频的全局量化参数,预估所述视频在场景维度上的全局内容复杂度信息,包括:
根据所述全局量化参数,预估所述视频对应的全局码率;
计算所述视频的全局码率和所述视频的实时码率之间的码率差异信息;
计算所述码率差异信息和所述实时码率之间的差异比率,得到所述视频在场景维度上的全局内容复杂度信息。
4.根据权利要求2所述的方法,其特征在于,所述根据所述视频的全局编码模式信息,预估所述视频在纹理维度上的全局内容复杂度信息,包括:
对所述全局编码模式信息进行解析,得到所述视频的全局帧间模式比例、全局帧内模式比例、全局跳过模式比例和全局运动矢量残差;
根据所述全局帧间模式比例、全局帧内模式比例和全局跳过模式比例,计算所述视频的全局编码模式比率;
将所述全局编码模式比率和所述全局运动矢量残差进行融合,得到所述视频在纹理维度上的全局内容复杂度信息。
5.根据权利要求1所述的方法,其特征在于,所述维度包括场景维度和纹理维度;所述根据所述参考视频片段的局部视频属性信息,从至少一个维度对所述参考视频片段进行复杂度预估,得到所述参考视频片段在至少一个维度上的局部内容复杂度信息,包括:
对所述局部视频属性信息进行解析,得到所述参考视频片段的局部量化参数和局部编码模式信息;
根据所述参考视频片段的局部量化参数,预估所述参考视频片段在场景维度上的局部内容复杂度信息;
根据所述参考视频片段的局部编码模式信息,预设所述参考视频片段在纹理维度上的局部内容复杂度信息。
6.根据权利要求1所述的方法,其特征在于,所述至少一个维度上的全局内容复杂度信息包括场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息;所述至少一个维度上的局部内容复杂度信息包括场景维度的局部内容复杂度信息和纹理维度的局部内容复杂度信息;
所述根据所述至少一个维度上的全局内容复杂度信息和所述至少一个维度上的局部内容复杂度信息,生成所述视频对应的目标调整码率,包括:
根据所述场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息,生成所述视频的第一调整码率;
根据所述场景维度的局部内容复杂度信息和纹理维度的局部内容复杂度信息,生成所述视频的第二调整码率;
在所述第一调整码率和所述第二调整码率中筛选出所述目标调整码率。
7.根据权利要求6所述的方法,其特征在于,所述根据所述场景维度的全局内容复杂度信息和纹理维度的全局内容复杂度信息,生成所述视频的第一调整码率,包括:
将所述场景维度的全局内容复杂度信息和预设场景维度复杂度阈值进行比较,得到第一全局比较结果;
将所述纹理维度的全局内容复杂度信息和预设纹理维度复杂度阈值进行比较,得到第二全局比较结果;
根据所述第一全局比较结果和所述第二全局比较结果,生成所述视频的第一调整码率。
8.根据权利要求7所述的方法,其特征在于,所述根据所述第一全局比较结果和所述第二全局比较结果,生成所述视频对应的第一调整码率,包括:
当所述场景维度的全局内容复杂度信息小于所述预设场景维度复杂度阈值的预设场景维度复杂度下界值时,将所述场景维度的全局内容复杂度信息、所述预设场景维度复杂度下界值以及预设参考码率进行算术运算,得到所述视频对应的第一调整码率;
或当所述纹理维度的全局内容复杂度信息大于所述预设纹理维度复杂度阈值的预设纹理维度复杂度上界值时,将所述纹理维度的全局内容复杂度信息、所述预设纹理维度复杂度上界值以及所述预设参考码率进行算术运算,得到所述视频对应的第一调整码率。
9.根据权利要求8所述的方法,其特征在于,所述当所述场景维度的全局内容复杂度信息小于所述预设场景维度复杂度阈值的预设场景维度复杂度下界值时,将所述场景维度的全局内容复杂度信息、所述预设场景维度复杂度下界值和预设参考码率进行算术运算,得到所述视频对应的第一调整码率,包括:
当所述场景维度的全局内容复杂度信息小于所述预设场景维度复杂度阈值的预设场景维度复杂度下界值时,计算所述场景维度的全局内容复杂度信息和所述预设场景维度复杂度下界值之间的全局场景阈值差异信息;
对所述全局场景阈值差异信息进行对数运算,得到运算后差异信息;
将所述运算后差异信息和所述预设参考码率进行相乘处理,得到所述视频对应的第一调整码率。
10.根据权利要求7所述的方法,其特征在于,所述根据所述第一全局比较结果和所述第二全局比较结果,生成所述视频对应的第一调整码率,包括:
当所述场景维度的全局内容复杂度信息大于所述预设场景维度复杂度阈值的预设场景维度复杂度上界值,以及所述纹理维度的全局内容复杂度信息小于所述预设纹理维度复杂度阈值的预设纹理维度复杂度下界值时,计算所述场景维度的全局内容复杂度信息和所述预设场景维度复杂度上界值之间的全局场景阈值差异信息;
对所述全局场景阈值差异信息进行限制调整,得到调整后差异信息;
将所述调整后差异信息和预设参考码率进行相乘,得到所述第一调整码率。
11.根据权利要求1所述的方法,其特征在于,所述根据每个视频片段对应的局部视频属性信息,在所述视频片段中筛选出作为码率生成依据的参考视频片段,包括:
根据所述每个视频片段对应的局部视频属性信息,计算每个视频片段在纹理维度上的局部内容复杂度信息;
将视频片段在纹理维度上的局部内容复杂度信息进行排序,得到排序结果;
根据所述排序结果,在所述视频片段中筛选出作为码率生成依据的参考视频片段。
12.一种码率自适应装置,其特征在于,包括:
获取单元,用于获取视频的全局视频属性信息,以及所述视频中至少一个视频片段对应的局部视频属性信息;
筛选单元,用于根据每个视频片段对应的局部视频属性信息,在所述视频片段中筛选出作为码率生成依据的参考视频片段;
第一复杂度预估单元,用于根据所述视频的全局视频属性信息,从至少一个维度对所述视频进行复杂度预估,得到所述视频在至少一个维度上的全局内容复杂度信息;
第二复杂度预估单元,用于根据所述参考视频片段的局部视频属性信息,从至少一个维度对所述参考视频片段进行复杂度预估,得到所述参考视频片段在至少一个维度上的局部内容复杂度信息;
生成单元,用于根据所述至少一个维度上的全局内容复杂度信息和所述至少一个维度上的局部内容复杂度信息,生成所述视频对应的目标调整码率;
转码单元,用于根据所述目标调整码率,对所述视频进行转码操作。
13.一种计算机设备,其特征在于,包括存储器和处理器;所述存储器存储有应用程序,所述处理器用于运行所述存储器内的应用程序,以执行权利要求1至11任一项所述的码率自适应方法中的操作。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至11任一项所述的码率自适应方法中的步骤。
15.一种计算机程序产品,包括计算机程序或指令,其特征在于,该计算机程序或指令被处理器执行时实现权利要求1至11任一项所述的码率自适应方法中的步骤。
CN202210997303.XA 2022-08-19 2022-08-19 一种码率自适应方法、装置、计算机设备和存储介质 Active CN115225911B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210997303.XA CN115225911B (zh) 2022-08-19 2022-08-19 一种码率自适应方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210997303.XA CN115225911B (zh) 2022-08-19 2022-08-19 一种码率自适应方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN115225911A true CN115225911A (zh) 2022-10-21
CN115225911B CN115225911B (zh) 2022-12-06

Family

ID=83615215

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210997303.XA Active CN115225911B (zh) 2022-08-19 2022-08-19 一种码率自适应方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN115225911B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5986712A (en) * 1998-01-08 1999-11-16 Thomson Consumer Electronics, Inc. Hybrid global/local bit rate control
US20030185299A1 (en) * 2001-11-30 2003-10-02 Taro Takita Program, recording medium, and image encoding apparatus and method
CN105430422A (zh) * 2015-11-06 2016-03-23 济南草履虫电子科技有限公司 一种防止医学影像重建视频闪烁的方法
WO2017173817A1 (zh) * 2016-04-06 2017-10-12 华为技术有限公司 视频显示质量的计算方法及设备
WO2019047664A1 (zh) * 2017-09-06 2019-03-14 浙江宇视科技有限公司 码率控制方法、装置、图像采集设备及可读存储介质
US20190253704A1 (en) * 2017-03-21 2019-08-15 Tencent Technology (Shenzhen) Company Limited Video encoding method, video decoding method, computer device and storage medium
CN110650370A (zh) * 2019-10-18 2020-01-03 北京达佳互联信息技术有限公司 一种视频编码参数确定方法、装置、电子设备及存储介质
CN111372123A (zh) * 2020-03-03 2020-07-03 南京信息工程大学 基于从局部到全局的视频时序片段提取方法
US20200288143A1 (en) * 2018-03-28 2020-09-10 Tencent Technology (Shenzhen) Company Limited Video encoding code rate control method, apparatus, and device, and storage medium
US20210409724A1 (en) * 2018-08-31 2021-12-30 Wangsu Science & Technology Co., Ltd. Method and device for bitrate adjustment in encoding process

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5986712A (en) * 1998-01-08 1999-11-16 Thomson Consumer Electronics, Inc. Hybrid global/local bit rate control
US20030185299A1 (en) * 2001-11-30 2003-10-02 Taro Takita Program, recording medium, and image encoding apparatus and method
CN105430422A (zh) * 2015-11-06 2016-03-23 济南草履虫电子科技有限公司 一种防止医学影像重建视频闪烁的方法
WO2017173817A1 (zh) * 2016-04-06 2017-10-12 华为技术有限公司 视频显示质量的计算方法及设备
US20190253704A1 (en) * 2017-03-21 2019-08-15 Tencent Technology (Shenzhen) Company Limited Video encoding method, video decoding method, computer device and storage medium
WO2019047664A1 (zh) * 2017-09-06 2019-03-14 浙江宇视科技有限公司 码率控制方法、装置、图像采集设备及可读存储介质
US20200288143A1 (en) * 2018-03-28 2020-09-10 Tencent Technology (Shenzhen) Company Limited Video encoding code rate control method, apparatus, and device, and storage medium
US20210409724A1 (en) * 2018-08-31 2021-12-30 Wangsu Science & Technology Co., Ltd. Method and device for bitrate adjustment in encoding process
CN110650370A (zh) * 2019-10-18 2020-01-03 北京达佳互联信息技术有限公司 一种视频编码参数确定方法、装置、电子设备及存储介质
CN111372123A (zh) * 2020-03-03 2020-07-03 南京信息工程大学 基于从局部到全局的视频时序片段提取方法

Also Published As

Publication number Publication date
CN115225911B (zh) 2022-12-06

Similar Documents

Publication Publication Date Title
US20220030244A1 (en) Content adaptation for streaming
Vetro et al. Object-based transcoding for adaptable video content delivery
CN113766226A (zh) 图像编码方法、装置、设备及存储介质
US20050180502A1 (en) Rate control for video coder employing adaptive linear regression bits modeling
US20050175091A1 (en) Rate and quality controller for H.264/AVC video coder and scene analyzer therefor
CN114554211A (zh) 内容自适应视频编码方法、装置、设备和存储介质
CN110418177A (zh) 视频编码方法、装置、设备和存储介质
US10623744B2 (en) Scene based rate control for video compression and video streaming
CN103493481A (zh) 基于场景的适应性比特率控制
WO2021129007A1 (zh) 视频码率的确定方法、装置、计算机设备及存储介质
CN112672149B (zh) 一种视频处理方法、装置、存储介质及服务器
WO2021238546A1 (zh) 视频编码方法、视频播放方法、相关设备及介质
CN109089121A (zh) 一种基于视频编码的运动估计方法、装置及电子设备
US7986731B2 (en) H.264/AVC coder incorporating rate and quality controller
CN110708570A (zh) 视频的编码码率确定方法、装置、设备及存储介质
JP2006524460A (ja) 符号化されたビデオデータのコンテンツ分析
Kannangara et al. Computational complexity management of a real-time H. 264/AVC encoder
CN117014659B (zh) 一种视频转码方法、装置、电子设备和存储介质
Wei et al. Recent advances in rate control: From optimization to implementation and beyond
CN115225911B (zh) 一种码率自适应方法、装置、计算机设备和存储介质
Seeling et al. Evaluating multimedia networking mechanisms using video traces
WO2021007702A1 (en) Video encoding method, video decoding method, video encoding device, and video decoding device
CN106254873B (zh) 一种视频编码方法及视频编码装置
CN116827921A (zh) 一种流媒体的音视频处理方法、装置及设备
JP3560958B2 (ja) 動画符号化制御方法および装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40074531

Country of ref document: HK