H.264与H.265的主要差异

H.265仍然采用混合编解码,编解码结构域H.264基本一致,

H.265与H.264的主要不同

编码块划分结构:采用CU (CodingUnit)、PU(PredictionUnit)和TU(TransformUnit)的递归结构。
并行工具:增加了Tile以及WPP等并行工具集以提高编码速度
滤波器:在去块滤波之后增加了SAO(sample adaptive offset)滤波模块
基本细节:各功能块的内部细节有很多差异

H.265的编码框架图

在这里插入图片描述

H.265和H.264的性能比较

压缩效率:

H.265相对于H.264提供更高的压缩效率,即在相同画质下,H.265可以提供更小的文件大小或更高的画质。
H.265通常能够提供30%到50%的比特率节省,这使其在相同网络带宽条件下能够传输更高质量的视频。

码率控制:

H.265引入了更多的码率控制方法,以适应不同应用场景和网络条件。这包括CU(Coding Unit)层面的码率控制和TU(Transform Unit)层面的码率控制等。

分辨率和帧率:

H.265相对于H.264对于更高的分辨率和帧率有更好的支持,这对于4K、8K视频以及高帧率视频(如60fps或120fps)是很重要的。

并行处理:

H.265对并行处理的支持更好,有助于在多核处理器上实现更高效的编解码。

编解码复杂性:

H.265的编码和解码相对于H.264更加复杂,这也导致了更高的计算要求。因此,H.265通常需要更强大的硬件支持来实现实时编解码。

实时性:

H.264在实时性方面相对更好,这使其在一些实时应用中仍然被广泛使用。而H.265可能在一些对实时性要求较高的场景中面临一些挑战。

H.265和H.264的细节比较

块划分结构

在这里插入图片描述

H.264 使用所谓的宏块,即跨越 4×4 到 16×16 像素的处理单元。H.265 使用一种较新的块结构,称为编码树单元 (CTU),它可以处理高达 64×64 像素的大小。

在H.265中,将宏块的大小从H.264的16×16扩展到了64×64,以便于高分辨率视频的压缩。同时,采用了更加灵活的编码结构来提高编码效率,包括编码单元(CodingUnit)、预测单元(PredictUnit)和变换单元(TransformUnit)。这三个单元的分离,使得变换、预测和编码各个处理环节更加灵活,有利于各个单元更优化的完成各自的功能,也有利于各环节的划分更加符合视频图像的纹理特征。

H.264 与 H.265:所需的平均带宽

分辨率H.264/AVCH.265/HEVC
480p分辨率1.5 Mbps0.75 Mbps
720p分辨率3Mbps1.5 Mbps
1080p分辨率6 Mbps3 Mbps
4K分辨率32 Mbps15 Mbps

帧内预测模式

H.265是在H.264的预测方向基础上增加了更多的预测方向
H.265:CU块,亮度有35种预测方向,色度有5种预测方向
H.264:亮度 4x4块9个方向,8x8块9个方向,16x16块4种方向,色度4种方向

帧间预测

H.265是在H.264基础上增加插值的抽头系数个数,改变抽头系数值以及增加运动矢量预测值的候选个数,用来达到减少预测残差的目的。
H.265的增加了运动矢量预测值候选的个数,而H.264预测值只有一个。
H.265与H.264一样插值精度都是亮度到1/4,色度到1/8精度,但插值滤波器抽头长度和系数不同。

技术差异表格如下

H.264H.265
宏块大小4 * 4 ~ 16 * 164 * 4 ~ 64 * 64
lnter MVP预测方法空域中值MVP预测空域加时域MVP预测 空域加时域的Merge/Skip
Intra预测亮度4 * 4:9种 亮度8 * 8 :9种 亮度16 * 16: 4种预测模式 色度:4种预测模式亮度CU块: 总共35种预测模式 色度CU块:5种预测模式
变换DCT 4 *4/16 *16DCT 4*4/8 * 8/16 * 16/32 *32 DST 4 * 4
滤波器4 * 4 和8 * 88 * 8以上的CU、PU、TU边界去块滤波 SAO滤波器
熵编码CAVLC及CABACCABAC
其他FMO映射关系WPP、Tile以及dependent

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/438192.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】fork()函数

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

如何使用Everything随时随地远程访问本地电脑搜索文件

文章目录 前言1.软件安装完成后&#xff0c;打开Everything2.登录cpolar官网 设置空白数据隧道3.将空白数据隧道与本地Everything软件结合起来总结 前言 要搭建一个在线资料库&#xff0c;我们需要两个软件的支持&#xff0c;分别是cpolar&#xff08;用于搭建内网穿透数据隧道…

Java基础常见面试题总结(下)

常见的Exception有哪些&#xff1f; 常见的RuntimeException&#xff1a; ClassCastException //类型转换异常IndexOutOfBoundsException //数组越界异常NullPointerException //空指针ArrayStoreException //数组存储异常NumberFormatException //数字格式化异常ArithmeticE…

Python笔记14-实战小游戏飞机大战(上)

文章目录 功能规划安装pygame绘制游戏窗口添加玩家飞机图像屏幕上绘制飞船代码重构驾驶飞船全屏模式射击 本示例源码地址 点击下载 功能规划 玩家控制一艘最初出现在屏幕底部中央的飞船。玩家可以使用箭头键左右移动飞船&#xff0c;还可使用空格键射击。游戏开始时&#xff…

树莓派部署Nginx服务结合内网穿透实现远程访问本地站点

文章目录 1. Nginx安装2. 安装cpolar3.配置域名访问Nginx4. 固定域名访问5. 配置静态站点 安装 Nginx&#xff08;发音为“engine-x”&#xff09;可以将您的树莓派变成一个强大的 Web 服务器&#xff0c;可以用于托管网站或 Web 应用程序。相比其他 Web 服务器&#xff0c;Ngi…

(七)for循环控制

文章目录 用法while的用法for的用法两者之间的联系可以相互等价用for改写while示例for和while的死循环怎么写for循环见怪不怪表达式1省略第一.三个表达式省略&#xff08;for 改 while&#xff09;全省略即死循环&#xff08;上面已介绍&#xff09; 用法 类比学习while语句 …

【详解】贪吃蛇游戏----下篇(完整源码)

目录 引入&#xff1a; 本片文章目的&#xff1a; 整个游戏的实现流程图如下&#xff1a; 游戏实现 GameRun PrintHelpInfo Pause NextIsFood printSnake EatFood NoFood KillByWall KillBySelf GameRun GameEnd 总代码&#xff1a; &#xff08;1&#xff09…

数字美妆技术:美颜SDK和动态贴纸技术的崭新时代

数字美妆的兴起标志着人们对于自身形象的追求不再局限于现实生活&#xff0c;而是延伸到了虚拟世界。同时&#xff0c;美颜SDK的动态贴纸技术也开始进入到大家的视野之中。 一、美颜SDK&#xff1a;技术之作 通过复杂的图像处理算法&#xff0c;美颜SDK能够实时检测人脸&…

Temu跨境电商:算不算蓝海项目?靠谱吗?

随着全球电商市场的不断扩大和演变&#xff0c;跨境电商逐渐成为了一个备受关注的领域。Temu作为跨境电商的新兴平台&#xff0c;引发了广泛关注。那么&#xff0c;Temu跨境电商是否算得上蓝海项目?它又是否靠谱呢?抖音网红老阳为大家分析一下。 “蓝海项目”的定义 通常&…

Docker本地部署APITable结合内网穿透实现公网访问

文章目录 前言1. 部署APITable2. cpolar的安装和注册3. 配置APITable公网访问地址4. 固定APITable公网地址 前言 vika维格表作为新一代数据生产力平台&#xff0c;是一款面向 API 的智能多维表格。它将复杂的可视化数据库、电子表格、实时在线协同、低代码开发技术四合为一&am…

【代码能力提升 | 代码阅读学习】分析 VoxelNet 的 主干

文章目录 前言代码分析VoxelNet model2.数据处理2.1单个样本处理2.2处理成batch 最后&#xff0c;附上我一步步调试代码&#xff0c;到3D-conv 前言 代码来自&#xff1a;https://github.com/skyhehe123/VoxelNet-pytorch 其中 测试数据来自&#xff1a;https://github.com/ga…

Windows下EDK2快速搭建(详细)过程总结附软件包地址

目录 简介一、软件包下载安装VS2019下载NASM安下载LLVM/CLANG下载IASL下载安装Python安装OpenSSL下载EDK2 二、设置环境变量新增python系统变量新增NASM系统变量 三、编译3.1 在edk2目录直接输入cmd3.2 在cmd目录输入&#xff1a;edksetup.bat3.3 打开edk2编译窗口3.4 确认编译…