CN113747160A - 视频编码配置方法、装置、设备及计算机可读存储介质 - Google Patents
视频编码配置方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113747160A CN113747160A CN202111044379.2A CN202111044379A CN113747160A CN 113747160 A CN113747160 A CN 113747160A CN 202111044379 A CN202111044379 A CN 202111044379A CN 113747160 A CN113747160 A CN 113747160A
- Authority
- CN
- China
- Prior art keywords
- video
- played
- type
- scene
- decoding
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/156—Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请实施例提供了一种视频编码配置方法、装置、设备及计算机可读存储介质,包括:获取待播放视频的场景类型、待播放视频的码率以及终端的解码能力;根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率。该方法针对云游戏的低带宽场景,即视频编码的低码率的情况,基于场景类型、码率以及终端的解码能力,确定最优的编码配置,基于该最优编码配置对待播放视频进行压缩,以实现在对应的终端上进行播放时获得最优的主观质量。
Description
技术领域
本申请涉及计算机技术领域,具体而言,本申请涉及一种视频编码配置方法、装置、设备及计算机可读存储介质。
背景技术
云游戏是一种以云计算技术为基础的在线游戏技术。在云游戏场景下,云游戏并不在玩家游戏终端,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。现有技术中针对云游戏场景中视频的低码率的情况,通常为了提升画质,当采用不同的低码率启动时,使用默认视频的编码配置,并提示用户网络环境较差,建议用户手动降低视频(画面)的分辨率以及视频的帧率;由于对于不同的低码率使用相同的编码配置,需要通过交互,提示用户手动修改编码配置,使用户去尝试确定最优的编码配置,从而导致用户体验感差,而且往往不能确定最优的编码配置。
发明内容
本申请针对现有的方式的缺点,提出一种视频编码配置方法、装置、设备及计算机可读存储介质,用以解决如何实现高效确定最优的视频的编码配置的问题。
第一方面,本申请提供了一种视频编码配置方法,包括:
获取待播放视频的场景类型、待播放视频的码率以及终端的解码能力;
根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率。
在一个实施例中,获取待播放视频的码率以及终端的解码能力,包括:
根据网络的带宽,确定待播放视频的码率;
并根据终端的硬件信息,确定终端的解码能力,解码能力包括终端支持的视频的解码类型,以及视频的解码类型对应的视频的最大分辨率。
在一个实施例中,根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率,包括:
根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率;
当终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率都相同,则将至少两种解码类型中、解码效率最大的解码类型对应的编码类型作为待播放视频的编码类型,并将最大分辨率作为待播放视频的分辨率;
其中,终端的解码能力包括终端支持的视频的至少两种解码类型,以及至少两种解码类型分别对应的视频的最大分辨率。
在一个实施例中,根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率,包括:
根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率;
当待播放视频的场景类型为第一场景类型,终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,则将各最大分辨率中的最大值的分辨率作为待播放视频的分辨率,并将最大值的分辨率对应的编码类型作为待播放视频的编码类型;
或,当待播放视频的场景类型为第二场景类型、第三场景类型和第四场景类型中的任一种,终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,且待播放视频的码率小于预设码率阈值,则将各最大分辨率中的最小值的分辨率作为待播放视频的分辨率,并将最小值的分辨率对应的编码类型作为待播放视频的编码类型;
或,当待播放视频的场景类型为第二场景类型和第三场景类型中的任一种,终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,且待播放视频的码率大于预设码率阈值,则将各最大分辨率中的最大值的分辨率作为待播放视频的分辨率,并将最大值的分辨率对应的编码类型作为待播放视频的编码类型。
在一个实施例中,根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率,包括:
根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率;
当终端支持视频的一种解码类型,一种解码类型对应视频的最大分辨率及其他分辨率,且待播放视频的码率小于预设码率阈值,则将其他分辨率作为待播放视频的分辨率,并将一种解码类型对应的编码类型作为待播放视频的编码类型;
或,当终端支持视频的一种解码类型,且一种解码类型对应视频的最大分辨率及其他分辨率,且待播放视频的码率大于预设码率阈值,则将一种解码类型对应视频的最大分辨率作为待播放视频的分辨率,并将一种解码类型对应的编码类型作为待播放视频的编码类型;
其中,其他分辨率小于最大分辨率。
在一个实施例中,根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率,帧率区间包括第一帧率和第二帧率,第一帧率小于所述第二帧率,包括以下至少一项:
当待播放视频的场景类型为第一场景类型,且待播放视频的码率小于预设码率阈值,则将第一帧率作为待播放视频的帧率;
当待播放视频的场景类型为第一场景类型,且待播放视频的码率大于预设码率阈值,则将第二帧率作为待播放视频的帧率;
当待播放视频的场景类型为第二场景类型、第三场景类型和第四场景类型中的任一种,则将第二帧率作为所述待播放视频的帧率。
在一个实施例中,待播放视频的场景类型,包括以下至少一项:
第一场景类型,第一场景类型包括第一2D游戏场景,第一2D游戏场景中画面内容的复杂度为一级复杂度,或第一2D游戏场景的场景切换频率为一级切换频率;
第二场景类型,第二场景类型包括第二2D游戏场景,第二2D游戏场景中画面内容的复杂度为三级复杂度,且第二2D游戏场景的场景切换频率为二级切换频率;
第三场景类型,第三场景类型包括第一3D游戏场景,第一3D游戏场景中画面内容的复杂度为二级复杂度,且第一3D游戏场景的场景切换频率为二级切换频率;
第四场景类型,第四场景类型包括第二3D游戏场景,第二3D游戏场景中画面内容的复杂度为四级复杂度,且第二3D游戏场景的场景切换频率为三级切换频率;
其中,一级复杂度小于二级复杂度,二级复杂度小于三级复杂度,三级复杂度小于四级复杂度;一级切换频率小于二级切换频率,二级切换频率小于三级切换频率。
第二方面,本申请提供了一种视频编码配置装置,包括:
第一处理模块,用于获取待播放视频的场景类型、待播放视频的码率以及终端的解码能力;
第二处理模块,用于根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率。
第三方面,本申请提供了一种电子设备,包括:处理器、存储器和总线;
总线,用于连接处理器和存储器;
存储器,用于存储操作指令;
处理器,用于通过调用操作指令,执行本申请第一方面的视频编码配置方法。
第四方面,本申请提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被用于执行本申请第一方面的视频编码配置方法。
第五方面,本申请提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现第一方面所述方法的步骤。
本申请实施例提供的技术方案,至少具有如下有益效果:
获取待播放视频的场景类型、待播放视频的码率以及终端的解码能力;根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率;如此,针对云游戏的低带宽场景,即视频编码的低码率的情况,基于场景类型、码率以及终端的解码能力,确定最优的编码配置,基于该最优编码配置对待播放视频进行压缩,以实现在对应的终端上进行播放时获得最优的主观质量。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的***架构的示意图;
图2为本申请实施例提供的一种视频编码配置方法的流程示意图;
图3为本申请实施例提供的另一种视频编码配置方法的流程示意图;
图4为本申请实施例提供的一种视频编码配置装置的结构示意图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使得本申请的发明目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面详细描述本申请的实施例,该实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本申请实施例是针对云技术领域中的云游戏提供的一种视频编码配置方法,该视频编码配置方法涉及云技术中的多种领域,例如云技术中的云计算、云服务等。
云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用***能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作***)、存储设备、网络设备。
按照逻辑功能划分,在IaaS(Infrastructure as a Service,基础设施即服务)层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、***器等。一般来说,SaaS和PaaS相对于IaaS是上层。
所谓人工智能云服务,一般也被称作是AIaaS(AIas a Service,中文为“AI即服务”)。这是目前主流的一种人工智能平台的服务方式,具体来说AIaaS平台会把几类常见的AI服务进行拆分,并在云端提供独立或者打包的服务。这种服务模式类似于开了一个AI主题商城:所有的开发者都可以通过API接口的方式来接入使用平台提供的一种或者是多种人工智能服务,部分资深的开发者还可以使用平台提供的AI框架和AI基础设施来部署和运维自已专属的云人工智能服务。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互***、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
云游戏(Cloud gaming)又可称为游戏点播(gaming on demand),是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备(thin client)能运行高品质游戏。在云游戏场景下,游戏并不在玩家游戏终端,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端服务器的能力即可。
为了更好的理解及说明本申请实施例的方案,下面对本申请实施例中所涉及到的一些技术用语进行简单说明。
帧率:帧率是图像领域中的定义,可以指画面每秒传输帧数,是指动画或视频的画面数,帧率的单位是FPS(fps)(每秒传输帧数,Frames Per Second),FPS是图像领域中的定义,是指画面每秒传输帧数,即动画或视频的画面数。帧率越大,画面越流畅,例如电影基本的帧率为24帧每秒,当大于24帧每秒时,用户肉眼看到的是流畅的视频;又例如二维动画的帧率为15帧每秒。
码率:码率是数据传输时单位时间传送的数据位数,码率的单位是kbps(千位每秒),例如,码率为2M,即2048kbps。码率可以是取样率,单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件。
分辨率:分辨率就是视频的尺寸大小,例如标准的720P视频就是每一横排有1280个像素,每一列有720个像素,总的像素就是1280x720个,这个乘积就是视频的分辨率。一般情况下,分辨率越大,视频就越清晰。
2D游戏:2D游戏是指二维交互式动画,即2D游戏中的美术资源,例如人物行走、人物状态、地图等,是以png或jpg的图形文件渲染而成,2D游戏是没办法完成视角转换。
3D游戏:3D游戏是使用空间立体计算技术实现操作的游戏。从编程实现角度来说游戏基础模型,例如游戏的人物、场景、基础地形等,是使用三维立体模型实现的,游戏的人物角色控制是使用空间立体编程算法实现的。
视频主观质量评价:视频主观质量评价就是选择一批非专家类型的受测者,让他们在一个特定的受控环境中,连续观看一系列的测试序列大约10至30分钟,然后采用不同方法让他们对视频序列的质量进行评分,最后求得MOS(Mean Opinion Score,平均意见分),并对所得数据进行分析。测试环境中的受控因素包括:观看距离、观测环境、测试序列的选择、序列的显示时间间隔等。
块效应(Blocking Artifact):块效应基于块的变换编码在图像压缩编码中得到广泛应用,随着码率的降低,量化变得粗糙,在块的边界会出现不连续,形成重建图像的明显缺陷,称为块效应。
H.264:H.264是由国际电联ITU-T视频编码专家组(VCEG)和国际标准化组织ISO/国际电工委员会IEC动态图像专家组(MPEG)联合组成的联合视频组(JVT,Joint VideoTeam)提出的高度压缩数字视频编解码器标准。
HEVC:HEVC是H.265,H.265是ITU-TVCEG继H.264之后所制定的新的视频编码标准。H.265标准围绕着现有的视频编码标准H.264,保留原来的某些技术,同时对一些相关的技术加以改进。
PSNR:PSNR(Peak Signal to Noise Ratio,峰值信噪比)是一种广泛使用的客观图像质量评价标准。
全参考客观视频质量评价方法:全参考客观视频质量评价方法是将原始参考视频与失真视频在每一个对应帧中的每一个对应像素之间进行比较。
本申请实施例提供的方案涉及云技术,下面以具体的实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请实施例所提供的方案可以适用于云技术领域中任意需要视频编码配置的应用场景。
为了更好的理解本申请实施例提供的方案,下面结合具体的一个应用场景对该方案进行说明。
在一个实施例中,图1中示出了本申请实施例所适用的一种视频编码配置的***架构示意图,可以理解的是,本申请实施例所提供的视频编码配置方法可以适用于但不限于应用于如图1所示的应用场景中。
本示例中,如图1所示,该示例中的视频编码配置的***架构可以包括但不限于终端110和服务器120,终端110和服务器120之间可以通过网络进行交互。服务器120获取待播放视频的场景类型、待播放视频的码率,以及终端110发送的终端110的解码能力;服务器120根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率;服务器120根据编码配置对待播放视频进行编码压缩,得到编码后的视频流,通过网络等方式将编码后的视频流传输给终端110;终端110进行解压缩后获得可播放的视频,并将可播放的视频进行播放。
可理解,上述仅为一种示例,本实施例在此不作限定。
其中,终端110是智能手机(如Android手机、iOS手机等)、手机模拟器、平板电脑、笔记本电脑、数字广播接收器、MID(Mobile Internet Devices,移动互联网设备)、PDA(个人数字助理)、台式计算机、车载终端(例如车载导航终端)、智能音箱、智能手表等。服务器120是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器或服务器集群。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、Wi-Fi及其他实现无线通信的网络。具体也可基于实际应用场景需求确定,在此不作限定。
参见图2,图2示出了本申请实施例提供的一种视频编码配置方法的流程示意图,其中,该方法可以由任一电子设备执行,如可以是服务器,作为一可选实施方式,该方法可以由服务器执行,为了描述方便,在下文的一些可选实施例的描述中,将以服务器作为该方法执行主体为例进行说明。如图2所示,本申请实施例提供的视频编码配置方法包括如下步骤:
S101,获取待播放视频的场景类型、待播放视频的码率以及终端的解码能力。
在一个实施例中,待播放视频的场景类型可以用于表征待播放视频的场景中画面内容的复杂程度和场景切换剧烈程度,待播放视频的场景类型可以对应游戏类型。服务器可以通过当前网络的带宽,获取待播放视频的码率。终端通过硬件接口获取终端的硬件参数信息,即终端的硬件信息;终端将硬件参数信息发送给服务器,服务器根据硬件参数信息,获取终端的解码能力,终端的解码能力包括解码器能力(终端支持的视频的解码类型)和视频的解码类型对应的视频的最大分辨率,终端支持的视频的解码类型可以是HEVC解码、H.264解码等。
在一个实施例中,服务器可以为云端服务器,待播放视频可以为云游戏视频,例如,云端服务器发送云游戏视频给终端,终端上播放云游戏视频。
在一个实施例中,待播放视频的场景类型,包括以下至少一项:
第一场景类型,第一场景类型包括第一2D游戏场景,第一2D游戏场景中画面内容的复杂度为一级复杂度,或第一2D游戏场景的场景切换频率为一级切换频率;
第二场景类型,第二场景类型包括第二2D游戏场景,第二2D游戏场景中画面内容的复杂度为三级复杂度,且第二2D游戏场景的场景切换频率为二级切换频率;
第三场景类型,第三场景类型包括第一3D游戏场景,第一3D游戏场景中画面内容的复杂度为二级复杂度,且第一3D游戏场景的场景切换频率为二级切换频率;
第四场景类型,第四场景类型包括第二3D游戏场景,第二3D游戏场景中画面内容的复杂度为四级复杂度,且第二3D游戏场景的场景切换频率为三级切换频率;
其中,一级复杂度小于二级复杂度,二级复杂度小于三级复杂度,三级复杂度小于四级复杂度;一级切换频率小于二级切换频率,二级切换频率小于三级切换频率。
在一个实施例中,一级复杂度、二级复杂度和三级复杂度可以用于表征画面内容的复杂程度,例如,一级复杂度可以用于表征画面内容简单,二级复杂度可以用于表征画面内容复杂度一般,三级复杂度可以用于表征画面内容很复杂。一级切换频率、二级切换频率和三级切换频率可以用于表征场景切换剧烈程度或运动剧烈程度,例如,一级切换频率可以用于表征场景切换缓慢,二级切换频率可以用于表征场景切换剧烈,三级切换频率可以用于表征场景切换很剧烈。
举例说明,针对云游戏场景,3D游戏的镜头可以不断变换角度,通常场景切换或运动是较为剧烈的,各个画面复杂度不相同;2D游戏的镜头角度固定单一,场景切换、运动剧烈程度以及画面复杂度没有明显规律。云游戏的场景类型可以包括第一场景类型、第二场景类型、第三场景类型和第四场景类型。第一场景类型可以为第一2D游戏场景,第一2D游戏场景中的画面内容简单或第一2D游戏场景的场景切换缓慢;第一2D游戏场景对应的游戏类型包括策略类的2D游戏、解密类的2D游戏、休闲类的2D游戏等,即第一场景类型对应的游戏类型包括策略类的2D游戏、解密类的2D游戏、休闲类的2D游戏等。第二场景类型可以为第二2D游戏场景,第二2D游戏场景中的画面内容复杂且第二2D游戏场景的场景切换剧烈;第二2D游戏场景对应的游戏类型包括PVP(Player Versus Player,指玩家对战玩家)类的2D游戏、冒险类的2D游戏等,即第二场景类型对应的游戏类型包括PVP类的2D游戏、冒险类的2D游戏等。第三场景类型可以为第一3D游戏场景,第一3D游戏场景的场景切换剧烈且第一3D游戏场景中的画面内容复杂度一般;第一3D游戏场景对应的游戏类型包括休闲运动类的3D游戏,即第三场景类型对应的游戏类型包括休闲运动类的3D游戏。第四场景类型可以为第二3D游戏场景,第二3D游戏场景的场景切换很剧烈且第二3D游戏场景中的画面内容很复杂;第二3D游戏场景对应的游戏类型包括开放世界类的3D游戏、PVP类的3D游戏、冒险类的3D游戏等,即第四场景类型对应的游戏类型包括开放世界类的3D游戏、PVP类的3D游戏、冒险类的3D游戏等。
S102,根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率。
在一个实施例中,待播放视频的场景类型可以对应游戏类型,服务器可以根据游戏类型、待播放视频的码率以及终端的解码能力,确定待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率。例如,针对各种类型的云游戏,待播放视频的编码类型可以是HEVC编码、H.264编码等;待播放视频的帧率可以是50fps、60fps等;待播放视频的分辨率可以是720p、1080p等。
本申请实施例中,针对云游戏的低带宽场景,即视频编码的低码率的情况,基于场景类型、码率以及终端的解码能力,确定最优的编码配置,基于该最优编码配置对待播放视频进行压缩,以实现在对应的终端上进行播放时获得最优的主观质量。
在一个实施例中,获取待播放视频的码率以及终端的解码能力,包括:
根据网络的带宽,确定待播放视频的码率;
并根据终端的硬件信息,确定终端的解码能力,解码能力包括终端支持的视频的解码类型,以及视频的解码类型对应的视频的最大分辨率。
在一个实施例中,待播放视频的码率可以为编码待播放视频使用的码率,待播放视频的码率为低码率,例如待播放视频的码率小于8M,待播放视频的码率可以为2M、4M、6M等。终端通过硬件接口获取终端的硬件参数信息,即终端的硬件信息。终端将硬件参数信息发送给服务器,服务器根据硬件参数信息,确定终端的解码能力,终端的解码能力包括解码器能力(终端支持的视频的解码类型)和视频的解码类型对应的视频的最大分辨率,终端支持的视频的解码类型可以是HEVC解码、H.264解码等。例如,解码器能力是终端同时支持H.264解码和HEVC解码,H.264解码对应的视频的最大分辨率为1080p,HEVC解码对应的视频的最大分辨率为1080p。又例如,解码器能力是终端同时支持H.264解码和HEVC解码,H.264解码对应的视频的最大分辨率为1080p,HEVC解码对应的视频的最大分辨率为720p。
在一个实施例中,根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率,包括:
根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率;
当终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率都相同,则将至少两种解码类型中、解码效率最大的解码类型对应的编码类型作为待播放视频的编码类型,并将最大分辨率作为待播放视频的分辨率;
其中,终端的解码能力包括终端支持的视频的至少两种解码类型,以及至少两种解码类型分别对应的视频的最大分辨率。
在一个实施例中,HEVC编码在编码效率上优于H.264编码,即对于同一视频序列,在相同码率的情况下,使用HEVC编码后得到的视频主观质量更优;在低码率下,用H.264编码器对画面复杂或场景切换剧烈的游戏场景进行编码时,容易出现明显的块效应,但是HEVC编码器由于编码效率更高且存在编码后处理模块,一般没有类似现象。因此,当终端支持HEVC解码且支持720p和1080p,同时终端支持H.264解码且支持720p和1080p,则服务器在各个分辨率都优先使用HEVC编码。例如,当终端支持的视频的两种解码类型(HEVC解码和H.264解码)分别对应的视频的最大分辨率都相同,最大分辨率都为1080p,则将两种解码类型中、解码效率最大的解码类型(HEVC解码)对应的编码类型(HEVC编码)作为待播放视频的编码类型,并将最大分辨率1080p作为待播放视频的分辨率。
在一个实施例中,根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率,包括:
根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率;
当待播放视频的场景类型为第一场景类型,终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,则将各最大分辨率中的最大值的分辨率作为待播放视频的分辨率,并将最大值的分辨率对应的编码类型作为待播放视频的编码类型;
或,当待播放视频的场景类型为第二场景类型、第三场景类型和第四场景类型中的任一种,终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,且待播放视频的码率小于预设码率阈值,则将各最大分辨率中的最小值的分辨率作为待播放视频的分辨率,并将最小值的分辨率对应的编码类型作为待播放视频的编码类型;
或,当待播放视频的场景类型为第二场景类型和第三场景类型中的任一种,终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,且待播放视频的码率大于预设码率阈值,则将各最大分辨率中的最大值的分辨率作为待播放视频的分辨率,并将最大值的分辨率对应的编码类型作为待播放视频的编码类型。
举例说明,当待播放视频的场景类型为第一场景类型,终端支持的视频的两种解码类型(HEVC解码和H.264解码)分别对应的视频的最大分辨率不相同,其中,HEVC解码对应的视频的最大分辨率为720p,H.264解码对应的视频的最大分辨率为1080p;则将各最大分辨率(1080p和720p)中的最大值的分辨率1080p作为待播放视频的分辨率,并将最大值的分辨率1080p对应的编码类型(H.264编码)作为待播放视频的编码类型。
举例说明,待播放视频的场景类型为第二场景类型、第三场景类型和第四场景类型中的任一种,终端支持的视频的两种解码类型(HEVC解码和H.264解码)分别对应的视频的最大分辨率不相同,其中,HEVC解码对应的视频的最大分辨率为720p,H.264解码对应的视频的最大分辨率为1080p;且待播放视频的码率小于预设码率阈值。
第二场景类型对应的待播放视频的码率小于4M,预设码率阈值为4M,即第二场景类型对应的待播放视频的码率小于预设码率阈值4M,各最大分辨率(H.264解码对应的1080p和HEVC解码对应的720p)中的最小值为HEVC解码对应的720p,将720p作为待播放视频的分辨率,并将HEVC编码作为待播放视频的编码类型。
第三场景类型对应的待播放视频的码率小于6M,预设码率阈值为6M,即第二场景类型对应的待播放视频的码率小于预设码率阈值6M,各最大分辨率(H.264解码对应的1080p和HEVC解码对应的720p)中的最小值为HEVC解码对应的720p,将720p作为待播放视频的分辨率,并将HEVC编码作为待播放视频的编码类型。
第四场景类型对应的待播放视频的码率小于8M,预设码率阈值为8M,即第二场景类型对应的待播放视频的码率小于预设码率阈值8M,各最大分辨率(H.264解码对应的1080p和HEVC解码对应的720p)中的最小值为HEVC解码对应的720p,将720p作为待播放视频的分辨率,并将HEVC编码作为待播放视频的编码类型。
举例说明,待播放视频的场景类型为第二场景类型和第三场景类型中的任一种,终端支持的视频的两种解码类型(HEVC解码和H.264解码))分别对应的视频的最大分辨率不相同,其中,HEVC解码对应的视频的最大分辨率为720p,H.264解码对应的视频的最大分辨率为1080p;且待播放视频的码率大于预设码率阈值。
第二场景类型对应的待播放视频的码率大于4M且小于8M,预设码率阈值为4M,即第二场景类型对应的待播放视频的码率大于预设码率阈值4M,各最大分辨率(H.264解码对应的1080p和HEVC解码对应的720p)中的最大值为H.264解码对应的1080p,将1080p作为待播放视频的分辨率,并将H.264编码作为待播放视频的编码类型。
第三场景类型对应的待播放视频的码率大于6M且小于8M,预设码率阈值为6M,即第三场景类型对应的待播放视频的码率大于预设码率阈值6M,各最大分辨率(H.264解码对应的1080p和HEVC解码对应的720p)中的最大值为H.264解码对应的1080p,将1080p作为待播放视频的分辨率,并将H.264编码作为待播放视频的编码类型。
在一个实施例中,根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率,包括:
根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率;
当终端支持视频的一种解码类型,一种解码类型对应视频的最大分辨率及其他分辨率,且待播放视频的码率小于预设码率阈值,则将其他分辨率作为待播放视频的分辨率,并将一种解码类型对应的编码类型作为待播放视频的编码类型;
或,当终端支持视频的一种解码类型,且一种解码类型对应视频的最大分辨率及其他分辨率,且待播放视频的码率大于预设码率阈值,则将一种解码类型对应视频的最大分辨率作为待播放视频的分辨率,并将一种解码类型对应的编码类型作为待播放视频的编码类型;
其中,其他分辨率小于最大分辨率。
举例说明,当终端支持视频的一种解码类型H.264解码,H.264解码对应视频的最大分辨率1080p及其他分辨率720p,且待播放视频的码率小于预设码率阈值,则将720p作为待播放视频的分辨率,并将H.264解码对应的H.264编码作为待播放视频的编码类型。其中,第二场景类型对应的待播放视频的码率小于4M,预设码率阈值为4M,即第二场景类型对应的待播放视频的码率小于预设码率阈值4M;第三场景类型对应的待播放视频的码率小于6M,预设码率阈值为6M,即第三场景类型对应的待播放视频的码率小于预设码率阈值6M;第四场景类型对应的待播放视频的码率小于8M,预设码率阈值为8M,即第二场景类型对应的待播放视频的码率小于预设码率阈值8M。
需要说明的是,在低码率下,用H.264编码器对画面复杂或场景切换剧烈的游戏场景进行编码时,容易出现明显的块效应,但是HEVC编码器由于编码效率更高且存在编码后处理模块,一般没有类似现象。在低码率下,对于H.264编码,降低分辨率可以较好的消除编码引入的主观感知明显的损失,例如块效应,并且相比下采样引入的质量损失,人眼对于编码引入的质量损失更加敏感。因此,在低码率下,对于H.264编码,降低画面复杂或场景切换剧烈的游戏场景的分辨率可以较好地改善主观质量。H.264编码存在对应的码率阈值,当码率小于预设码率阈值,可以从1080p切换为720p,例如,第二场景类型对应的待播放视频的码率小于4M,使用H.264编码以及1080p会有明显的块效应,但是切换为H.264编码以及720p,块效应可以基本消失。
举例说明,当终端支持视频的一种解码类型H.264解码,H.264解码对应视频的最大分辨率1080p及其他分辨率720p,且待播放视频的码率大于预设码率阈值,则将1080p作为待播放视频的分辨率,并将H.264解码对应的H.264编码作为待播放视频的编码类型。其中,第一场景类型对应的待播放视频的码率大于2M且小于8M,预设码率阈值为2M,即第一场景类型对应的待播放视频的码率大于预设码率阈值2M;第二场景类型对应的待播放视频的码率大于4M且小于8M,预设码率阈值为4M,即第二场景类型对应的待播放视频的码率大于预设码率阈值4M;第三场景类型对应的待播放视频的码率大于6M且小于8M,预设码率阈值为6M,即第三场景类型对应的待播放视频的码率大于预设码率阈值6M。
在一个实施例中,根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率,帧率区间包括第一帧率和第二帧率,第一帧率小于第二帧率,包括以下至少一项:
当待播放视频的场景类型为第一场景类型,且待播放视频的码率小于预设码率阈值,则将第一帧率作为待播放视频的帧率;
当待播放视频的场景类型为第一场景类型,且待播放视频的码率大于预设码率阈值,则将第二帧率作为待播放视频的帧率;
当待播放视频的场景类型为第二场景类型、第三场景类型和第四场景类型中的任一种,则将第二帧率作为所述待播放视频的帧率。
在一个实施例中,考虑到大部分终端机器的能力和人类视觉感知门限,待播放视频的帧率设置范围为30fps~60fps,即预设的视频的帧率区间为30fps~60fps,但考虑到云游戏屏幕刷新的特性,无法保证帧率稳定在40fps,以及对于场景切换剧烈的场景,降低帧率至30fps会明显影响画面流畅度,极大的降低了用户体验感。因此,适合云游戏场景的待播放视频的帧率可以是第一帧率50fps和第二帧率60fps。由于降低帧率对于视频整体主观质量并没有明显提升,所以调整帧率的优先级较低,仅对于场景切换缓慢的游戏类型考虑调整帧率。例如:对于第一场景类型对应的游戏类型,当待播放视频的码率小于预设码率阈值2M,可以将待播放视频的帧率调整为第一帧率50fps。
本申请实施例中,针对云游戏的低带宽场景,即视频编码的低码率的情况,基于场景类型、码率以及终端的解码能力,确定最优的编码配置,基于该最优编码配置对待播放视频进行压缩,以实现在对应的终端上进行播放时获得最优的主观质量。
为了更好的理解本申请实施例所提供的方法,下面结合具体应用场景的示例对本申请实施例的方案进行进一步说明。
参见图3,图3示出了本申请实施例提供的一种视频编码配置方法的流程示意图,其中,该方法可以由任一电子设备执行,如可以是服务器,作为一可选实施方式,该方法可以由服务器执行,为了描述方便,在下文的一些可选实施例的描述中,将以服务器作为该方法执行主体为例进行说明。如图3所示,本申请实施例提供的视频编码配置方法包括如下步骤:
S201,获取游戏类型、待播放视频的码率以及终端的解码能力。
在一个实施例中,游戏类型包括第一游戏类型、第二游戏类型、第三游戏类型和第四游戏类型;其中,第一游戏类型为第一场景类型对应的游戏类型,第一游戏类型包括策略类的2D游戏、解密类的2D游戏和休闲类的2D游戏;第二游戏类型为第二场景类型对应的游戏类型,第二游戏类型包括PVP类的2D游戏和冒险类的2D游戏;第三游戏类型为第三场景类型对应的游戏类型,第三游戏类型包括休闲运动类的3D游戏;第四游戏类型为第四场景类型对应的游戏类型,第四游戏类型包括开放世界类的3D游戏、PVP类的3D游戏和冒险类的3D游戏。
S202,根据游戏类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率。
举例说明,待播放视频的编码配置如表1所示:
表1待播放视频的编码配置
例如,如表1中所示,对于第三游戏类型,待播放视频的码率小于6M,解码器能力是终端同时支持H.264解码和HEVC解码,H.264解码对应的视频的最大分辨率为1080p,HEVC解码对应的视频的最大分辨率为1080p,服务器可以确定待播放视频的帧率为60fps、待播放视频的编码类型为HEVC编码和待播放视频的分辨率为1080p。
S203,根据编码配置对待播放视频进行编码压缩,得到编码后的视频流,并将编码后的视频流传输给终端,以用于使终端基于编码后的视频流进行解压缩后获得可播放的视频,并将可播放的视频进行播放。
S204,对待播放视频的编码配置进行评价,并根据评价结果,将编码配置推荐给不同游戏。
在一个实施例中,待播放视频的编码配置包括H.264编码、1080p和60fps,将该编码配置进行测试。将块效应基本消失时的码率作为分界点码率,即预设码率阈值;例如,分界点码率可以为2M、4M、6M和8M,分别对应第一游戏类型、第二游戏类型、第三游戏类型和第四游戏类型。
在一个实施例中,基于客观质量评价模型,对待播放视频的编码配置进行评价,客观质量评价模型的打分结果为评价结果,根据评价结果,自动化推荐编码配置给不同游戏。客观质量评价模型可以采用全参考客观视频质量评价方法。例如,当待播放视频的编码配置包括H.264编码和1080p,分界点码率为2M,PSNR大于36,则对应第一游戏类型;当待播放视频的编码配置包括H.264编码和1080p,分界点码率为8M,PSNR小于30,则对应第四游戏类型;当待播放视频的编码配置包括H.264编码和1080p,分界点码率为4M,PSNR等于33左右,则对应第二游戏类型;当待播放视频的编码配置包括H.264编码和1080p,分界点码率为6M,PSNR等于33左右,则对应第三游戏类型。
本申请实施例中,针对云游戏的低带宽场景,即视频编码的低码率的情况,服务器基于游戏类型、码率以及终端的解码能力,确定最优的编码配置,基于该最优编码配置对待播放视频进行压缩,以实现在对应的终端上进行播放时获得最优的主观质量。
基于相同的发明构思,本申请实施例还提供了一种视频编码配置装置,该装置的结构示意图如图4所示,视频编码配置装置40,包括第一处理模块401和第二处理模块402。
第一处理模块401,用于获取待播放视频的场景类型、待播放视频的码率以及终端的解码能力;
第二处理模块402,用于根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率。
在一个实施例中,第一处理模块401,具体用于:
根据网络的带宽,确定待播放视频的码率;
并根据终端的硬件信息,确定终端的解码能力,解码能力包括终端支持的视频的解码类型,以及视频的解码类型对应的视频的最大分辨率。
在一个实施例中,第二处理模块402,具体用于:
根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率;
当终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率都相同,则将至少两种解码类型中、解码效率最大的解码类型对应的编码类型作为待播放视频的编码类型,并将最大分辨率作为待播放视频的分辨率;
其中,终端的解码能力包括终端支持的视频的至少两种解码类型,以及至少两种解码类型分别对应的视频的最大分辨率。
在一个实施例中,第二处理模块402,具体用于:
根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率;
当待播放视频的场景类型为第一场景类型,终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,则将各最大分辨率中的最大值的分辨率作为待播放视频的分辨率,并将最大值的分辨率对应的编码类型作为待播放视频的编码类型;
或,当待播放视频的场景类型为第二场景类型、第三场景类型和第四场景类型中的任一种,终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,且待播放视频的码率小于预设码率阈值,则将各最大分辨率中的最小值的分辨率作为待播放视频的分辨率,并将最小值的分辨率对应的编码类型作为待播放视频的编码类型;
或,当待播放视频的场景类型为第二场景类型和第三场景类型中的任一种,终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,且待播放视频的码率大于预设码率阈值,则将各最大分辨率中的最大值的分辨率作为待播放视频的分辨率,并将最大值的分辨率对应的编码类型作为待播放视频的编码类型。
在一个实施例中,第二处理模块402,具体用于:
根据预设的视频的帧率区间、待播放视频的场景类型和待播放视频的码率,确定待播放视频的帧率;
当终端支持视频的一种解码类型,一种解码类型对应视频的最大分辨率及其他分辨率,且待播放视频的码率小于预设码率阈值,则将其他分辨率作为待播放视频的分辨率,并将一种解码类型对应的编码类型作为待播放视频的编码类型;
或,当终端支持视频的一种解码类型,且一种解码类型对应视频的最大分辨率及其他分辨率,且待播放视频的码率大于预设码率阈值,则将一种解码类型对应视频的最大分辨率作为待播放视频的分辨率,并将一种解码类型对应的编码类型作为待播放视频的编码类型;
其中,其他分辨率小于最大分辨率。
在一个实施例中,第二处理模块402,具体用于以下至少一项:
当待播放视频的场景类型为第一场景类型,且待播放视频的码率小于预设码率阈值,则将第一帧率作为待播放视频的帧率;
当待播放视频的场景类型为第一场景类型,且待播放视频的码率大于预设码率阈值,则将第二帧率作为待播放视频的帧率;
当待播放视频的场景类型为第二场景类型、第三场景类型和第四场景类型中的任一种,则将第二帧率作为所述待播放视频的帧率。
在一个实施例中,待播放视频的场景类型,包括以下至少一项:
第一场景类型,第一场景类型包括第一2D游戏场景,第一2D游戏场景中画面内容的复杂度为一级复杂度,或第一2D游戏场景的场景切换频率为一级切换频率;
第二场景类型,第二场景类型包括第二2D游戏场景,第二2D游戏场景中画面内容的复杂度为三级复杂度,且第二2D游戏场景的场景切换频率为二级切换频率;
第三场景类型,第三场景类型包括第一3D游戏场景,第一3D游戏场景中画面内容的复杂度为二级复杂度,且第一3D游戏场景的场景切换频率为二级切换频率;
第四场景类型,第四场景类型包括第二3D游戏场景,第二3D游戏场景中画面内容的复杂度为四级复杂度,且第二3D游戏场景的场景切换频率为三级切换频率;
其中,一级复杂度小于二级复杂度,二级复杂度小于三级复杂度,三级复杂度小于四级复杂度;一级切换频率小于二级切换频率,二级切换频率小于三级切换频率。
应用本申请实施例,至少具有如下有益效果:
获取待播放视频的场景类型、待播放视频的码率以及终端的解码能力;根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率;如此,针对云游戏的低带宽场景,即视频编码的低码率的情况,基于场景类型、码率以及终端的解码能力,确定最优的编码配置,基于该最优编码配置对待播放视频进行压缩,以实现在对应的终端上进行播放时获得最优的主观质量。
基于相同的发明构思,本申请实施例还提供了一种电子设备,该电子设备的结构示意图如图5所示,该电子设备9000包括至少一个处理器9001、存储器9002和总线9003,至少一个处理器9001均与存储器9002电连接;存储器9002被配置用于存储有至少一个计算机可执行指令,处理器9001被配置用于执行该至少一个计算机可执行指令,从而执行如本申请中任意一个实施例或任意一种可选实施方式提供的任意一种视频编码配置方法的步骤。
进一步,处理器9001可以是FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其它具有逻辑处理能力的器件,如MCU(Microcontroller Unit,微控制单元)、CPU(Central Process Unit,中央处理器)。
应用本申请实施例,至少具有如下有益效果:
获取待播放视频的场景类型、待播放视频的码率以及终端的解码能力;根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率;如此,针对云游戏的低带宽场景,即视频编码的低码率的情况,基于场景类型、码率以及终端的解码能力,确定最优的编码配置,基于该最优编码配置对待播放视频进行压缩,以实现在对应的终端上进行播放时获得最优的主观质量。
基于相同的发明构思,本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序用于被处理器执行时实现本申请中任意一个实施例或任意一种可选实施方式提供的任意一种视频编码配置方法的步骤。
本申请实施例提供的计算机可读存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(RandomAccess Memory,随即存储器)、EPROM(Erasable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读存储介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
应用本申请实施例,至少具有如下有益效果:
获取待播放视频的场景类型、待播放视频的码率以及终端的解码能力;根据待播放视频的场景类型、待播放视频的码率以及终端的解码能力,确定待播放视频的编码配置,待播放视频的编码配置包括待播放视频的帧率、待播放视频的编码类型和待播放视频的分辨率;如此,针对云游戏的低带宽场景,即视频编码的低码率的情况,基于场景类型、码率以及终端的解码能力,确定最优的编码配置,基于该最优编码配置对待播放视频进行压缩,以实现在对应的终端上进行播放时获得最优的主观质量。
本申请实施例提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现上述各个方法实施例所提供的视频编码配置方法的步骤。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机设备上运行时,使得计算机设备执行上述各个方法实施例所提供的视频编码配置方法。
本技术领域技术人员可以理解,可以用计算机程序来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序产品提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本申请公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (11)
1.一种视频编码配置方法,其特征在于,包括:
获取待播放视频的场景类型、所述待播放视频的码率以及终端的解码能力;
根据所述待播放视频的场景类型、所述待播放视频的码率以及所述终端的解码能力,确定所述待播放视频的编码配置,所述待播放视频的编码配置包括所述待播放视频的帧率、所述待播放视频的编码类型和所述待播放视频的分辨率。
2.根据权利要求1所述的方法,其特征在于,所述获取所述待播放视频的码率以及终端的解码能力,包括:
根据网络的带宽,确定所述待播放视频的码率;
并根据终端的硬件信息,确定所述终端的解码能力,所述解码能力包括所述终端支持的视频的解码类型,以及所述视频的解码类型对应的视频的最大分辨率。
3.根据权利要求1所述的方法,其特征在于,所述根据所述待播放视频的场景类型、所述待播放视频的码率以及所述终端的解码能力,确定所述待播放视频的编码配置,所述待播放视频的编码配置包括所述待播放视频的帧率、所述待播放视频的编码类型和所述待播放视频的分辨率,包括:
根据预设的视频的帧率区间、所述待播放视频的场景类型和所述待播放视频的码率,确定所述待播放视频的帧率;
当所述终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率都相同,则将所述至少两种解码类型中、解码效率最大的解码类型对应的编码类型作为所述待播放视频的编码类型,并将所述最大分辨率作为所述待播放视频的分辨率;
其中,所述终端的解码能力包括所述终端支持的视频的至少两种解码类型,以及所述至少两种解码类型分别对应的视频的最大分辨率。
4.根据权利要求1所述的方法,其特征在于,所述根据所述待播放视频的场景类型、所述待播放视频的码率以及所述终端的解码能力,确定所述待播放视频的编码配置,所述待播放视频的编码配置包括所述待播放视频的帧率、所述待播放视频的编码类型和所述待播放视频的分辨率,包括:
根据预设的视频的帧率区间、所述待播放视频的场景类型和所述待播放视频的码率,确定所述待播放视频的帧率;
当所述待播放视频的场景类型为第一场景类型,所述终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,则将各最大分辨率中的最大值的分辨率作为所述待播放视频的分辨率,并将所述最大值的分辨率对应的编码类型作为所述待播放视频的编码类型;
或,当所述待播放视频的场景类型为第二场景类型、第三场景类型和第四场景类型中的任一种,所述终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,且所述待播放视频的码率小于预设码率阈值,则将各最大分辨率中的最小值的分辨率作为所述待播放视频的分辨率,并将所述最小值的分辨率对应的编码类型作为所述待播放视频的编码类型;
或,当所述待播放视频的场景类型为所述第二场景类型和所述第三场景类型中的任一种,所述终端支持的视频的至少两种解码类型分别对应的视频的最大分辨率不相同,且所述待播放视频的码率大于预设码率阈值,则将各最大分辨率中的最大值的分辨率作为所述待播放视频的分辨率,并将所述最大值的分辨率对应的编码类型作为所述待播放视频的编码类型。
5.根据权利要求1所述的方法,其特征在于,所述根据所述待播放视频的场景类型、所述待播放视频的码率以及所述终端的解码能力,确定所述待播放视频的编码配置,所述待播放视频的编码配置包括所述待播放视频的帧率、所述待播放视频的编码类型和所述待播放视频的分辨率,包括:
根据预设的视频的帧率区间、所述待播放视频的场景类型和所述待播放视频的码率,确定所述待播放视频的帧率;
当所述终端支持视频的一种解码类型,所述一种解码类型对应视频的最大分辨率及其他分辨率,且所述待播放视频的码率小于预设码率阈值,则将所述其他分辨率作为所述待播放视频的分辨率,并将所述一种解码类型对应的编码类型作为所述待播放视频的编码类型;
或,当所述终端支持视频的一种解码类型,且所述一种解码类型对应视频的最大分辨率及其他分辨率,且所述待播放视频的码率大于预设码率阈值,则将所述一种解码类型对应视频的最大分辨率作为所述待播放视频的分辨率,并将所述一种解码类型对应的编码类型作为所述待播放视频的编码类型;
其中,所述其他分辨率小于所述最大分辨率。
6.根据权利要求3-5所述的方法,其特征在于,所述根据预设的视频的帧率区间、所述待播放视频的场景类型和所述待播放视频的码率,确定所述待播放视频的帧率,所述帧率区间包括第一帧率和第二帧率,所述第一帧率小于所述第二帧率,包括以下至少一项:
当所述待播放视频的场景类型为第一场景类型,且所述待播放视频的码率小于预设码率阈值,则将所述第一帧率作为所述待播放视频的帧率;
当所述待播放视频的场景类型为第一场景类型,且所述待播放视频的码率大于预设码率阈值,则将所述第二帧率作为所述待播放视频的帧率;
当所述待播放视频的场景类型为第二场景类型、第三场景类型和第四场景类型中的任一种,则将所述第二帧率作为所述待播放视频的帧率。
7.根据权利要求1-5中任一项所述的方法,其特征在于,所述待播放视频的场景类型,包括以下至少一项:
第一场景类型,所述第一场景类型包括第一2D游戏场景,所述第一2D游戏场景中画面内容的复杂度为一级复杂度,或所述第一2D游戏场景的场景切换频率为一级切换频率;
第二场景类型,所述第二场景类型包括第二2D游戏场景,所述第二2D游戏场景中画面内容的复杂度为三级复杂度,且所述第二2D游戏场景的场景切换频率为二级切换频率;
第三场景类型,所述第三场景类型包括第一3D游戏场景,所述第一3D游戏场景中画面内容的复杂度为二级复杂度,且所述第一3D游戏场景的场景切换频率为二级切换频率;
第四场景类型,所述第四场景类型包括第二3D游戏场景,所述第二3D游戏场景中画面内容的复杂度为四级复杂度,且所述第二3D游戏场景的场景切换频率为三级切换频率;
其中,所述一级复杂度小于所述二级复杂度,所述二级复杂度小于所述三级复杂度,所述三级复杂度小于所述四级复杂度;所述一级切换频率小于所述二级切换频率,所述二级切换频率小于所述三级切换频率。
8.一种视频编码配置装置,其特征在于,包括:
第一处理模块,用于获取待播放视频的场景类型、所述待播放视频的码率以及终端的解码能力;
第二处理模块,用于根据所述待播放视频的场景类型、所述待播放视频的码率以及所述终端的解码能力,确定所述待播放视频的编码配置,所述待播放视频的编码配置包括所述待播放视频的帧率、所述待播放视频的编码类型和所述待播放视频的分辨率。
9.一种电子设备,其特征在于,包括:处理器、存储器;
所述存储器,用于存储计算机程序;
所述处理器,用于通过调用所述计算机程序,执行如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序用于被处理器执行时实现如权利要求1-7中任一项所述的方法。
11.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111044379.2A CN113747160B (zh) | 2021-09-07 | 2021-09-07 | 视频编码配置方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111044379.2A CN113747160B (zh) | 2021-09-07 | 2021-09-07 | 视频编码配置方法、装置、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113747160A true CN113747160A (zh) | 2021-12-03 |
CN113747160B CN113747160B (zh) | 2023-06-16 |
Family
ID=78736585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111044379.2A Active CN113747160B (zh) | 2021-09-07 | 2021-09-07 | 视频编码配置方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113747160B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114760309A (zh) * | 2022-04-11 | 2022-07-15 | 中国电信股份有限公司 | 基于云端服务的终端的业务交互方法、装置、设备和介质 |
CN115022629A (zh) * | 2022-08-08 | 2022-09-06 | 海马云(天津)信息技术有限公司 | 云游戏视频的最优编码模式确定方法与装置 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102771124A (zh) * | 2009-12-08 | 2012-11-07 | 三星电子株式会社 | 通过使用任意分区进行运动预测来对视频进行编码的方法和设备,以及通过使用任意分区进行运动预测来对视频进行解码的方法和设备 |
CN105263066A (zh) * | 2014-06-13 | 2016-01-20 | 珠海全志科技股份有限公司 | 移动设备视频流传输控制方法及*** |
CN105376595A (zh) * | 2015-12-17 | 2016-03-02 | 杭州雄迈信息技术有限公司 | 一种视频混合编码***和方法 |
CN205545736U (zh) * | 2016-04-27 | 2016-08-31 | 上海象融蓝海文化传媒有限公司 | 一种视频在线播放装置 |
CN105959700A (zh) * | 2016-05-31 | 2016-09-21 | 腾讯科技(深圳)有限公司 | 视频图像编码的方法和装置 |
CN107172486A (zh) * | 2017-05-24 | 2017-09-15 | 维沃移动通信有限公司 | 一种视频解码方法和移动终端 |
CN109217980A (zh) * | 2017-07-03 | 2019-01-15 | 腾讯科技(深圳)有限公司 | 一种编解码能力配置方法、设备和计算机存储介质 |
CN109462773A (zh) * | 2018-08-31 | 2019-03-12 | 北京潘达互娱科技有限公司 | 一种推流方法、装置、电子设备及存储介质 |
CN111147892A (zh) * | 2018-11-02 | 2020-05-12 | 北京松果电子有限公司 | 用于视频传输的方法和装置,存储介质和电子设备 |
EP3677033A1 (en) * | 2017-08-29 | 2020-07-08 | InterDigital VC Holdings, Inc. | Methods and apparatus for improved compression/decompression using frame rate up conversion tools |
CN111882626A (zh) * | 2020-08-06 | 2020-11-03 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、服务器及介质 |
-
2021
- 2021-09-07 CN CN202111044379.2A patent/CN113747160B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102771124A (zh) * | 2009-12-08 | 2012-11-07 | 三星电子株式会社 | 通过使用任意分区进行运动预测来对视频进行编码的方法和设备,以及通过使用任意分区进行运动预测来对视频进行解码的方法和设备 |
CN105263066A (zh) * | 2014-06-13 | 2016-01-20 | 珠海全志科技股份有限公司 | 移动设备视频流传输控制方法及*** |
CN105376595A (zh) * | 2015-12-17 | 2016-03-02 | 杭州雄迈信息技术有限公司 | 一种视频混合编码***和方法 |
CN205545736U (zh) * | 2016-04-27 | 2016-08-31 | 上海象融蓝海文化传媒有限公司 | 一种视频在线播放装置 |
CN105959700A (zh) * | 2016-05-31 | 2016-09-21 | 腾讯科技(深圳)有限公司 | 视频图像编码的方法和装置 |
CN107172486A (zh) * | 2017-05-24 | 2017-09-15 | 维沃移动通信有限公司 | 一种视频解码方法和移动终端 |
CN109217980A (zh) * | 2017-07-03 | 2019-01-15 | 腾讯科技(深圳)有限公司 | 一种编解码能力配置方法、设备和计算机存储介质 |
EP3677033A1 (en) * | 2017-08-29 | 2020-07-08 | InterDigital VC Holdings, Inc. | Methods and apparatus for improved compression/decompression using frame rate up conversion tools |
CN109462773A (zh) * | 2018-08-31 | 2019-03-12 | 北京潘达互娱科技有限公司 | 一种推流方法、装置、电子设备及存储介质 |
CN111147892A (zh) * | 2018-11-02 | 2020-05-12 | 北京松果电子有限公司 | 用于视频传输的方法和装置,存储介质和电子设备 |
CN111882626A (zh) * | 2020-08-06 | 2020-11-03 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、服务器及介质 |
Non-Patent Citations (3)
Title |
---|
潘榕;董文辉;: "AVS+视频编码技术及相关测试标准解读", 电视技术, no. 16 * |
韩建亭;张夙;: "基于智能终端的视频通信业务服务质量评测模型研究", 电信科学, no. 04 * |
顾惟;: "浅谈Final Cut Pro剪辑中的编码格式选择", 视听界(广播电视技术), no. 02 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114760309A (zh) * | 2022-04-11 | 2022-07-15 | 中国电信股份有限公司 | 基于云端服务的终端的业务交互方法、装置、设备和介质 |
CN115022629A (zh) * | 2022-08-08 | 2022-09-06 | 海马云(天津)信息技术有限公司 | 云游戏视频的最优编码模式确定方法与装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113747160B (zh) | 2023-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2916543B1 (en) | Method for coding/decoding depth image and coding/decoding device | |
CN105744342B (zh) | 移动终端的数据传输方法和装置 | |
US20180192063A1 (en) | Method and System for Virtual Reality (VR) Video Transcode By Extracting Residual From Different Resolutions | |
US20140292751A1 (en) | Rate control bit allocation for video streaming based on an attention area of a gamer | |
CN113747160B (zh) | 视频编码配置方法、装置、设备及计算机可读存储介质 | |
CN112533059B (zh) | 图像渲染方法、装置、电子设备以及存储介质 | |
US11290345B2 (en) | Method for enhancing quality of media | |
US12003386B2 (en) | Method for enhancing quality of media | |
US20220038749A1 (en) | Artifact removal method and apparatus based on machine learning, and method and apparatus for training artifact removal model based on machine learning | |
US20170078697A1 (en) | Depth image prediction mode transmission method and apparatus for encoding and decoding inter-layer video | |
CN106454348B (zh) | 一种视频编解码方法和装置 | |
CN113286146B (zh) | 媒体数据处理方法、装置、设备以及存储介质 | |
Nguyen et al. | Super-resolution based bitrate adaptation for HTTP adaptive streaming for mobile devices | |
CN111464812B (zh) | 编码解码的方法、***、装置、存储介质及处理器 | |
CN110572672B (zh) | 视频编解码方法和装置、存储介质及电子装置 | |
US20230276070A1 (en) | Artificial intelligence (ai) encoding apparatus and method and ai decoding apparatus and method for region of object of interest in image | |
CN110662071B (zh) | 视频解码方法和装置、存储介质及电子装置 | |
CN109379630B (zh) | 视频处理方法、装置、电子设备及存储介质 | |
CN116170582A (zh) | 一种视频数据处理方法、装置、计算机设备以及存储介质 | |
CN107071449B (zh) | 一种转码***和方法 | |
CN115883844A (zh) | 视频数据处理方法、装置、设备及存储介质 | |
Mohammadi et al. | An object-based framework for cloud gaming using player's visual attention | |
CN115665427A (zh) | 直播数据的处理方法、装置及电子设备 | |
CN110572674A (zh) | 视频编解码方法和装置、存储介质及电子装置 | |
US20230164330A1 (en) | Data codec method and apparatus |
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 |