h264和h265编码所需要的处理器性能

简介: h264和h265编码所需要的处理器性能

h265压缩比为1:200,h264压缩比为1:100,压缩一帧h265理论上比压缩一帧h264多10ms的时间。

以下数据均来自实测

在Intel® Core™ i7-6700 CPU @ 3.40GHz 4核8线程中:

用h265编码1080i50,uyvy422的裸数据,码率为6M,编码器速度配置ultrafast,线程配置8线程编码 top后id为2.5

值得注意的是crtl+c也是衡量cpu是否过载的方法之一。

记录编码一帧h265的视频帧用时,不同时间段随机多次采样为:

88ms,135ms,73ms,58ms,102ms


1080i50帧率为25帧每秒,每帧间隔是40ms,因此编码严重超时,满足不了帧率。cpu空闲了也用完了,性能已经到瓶颈了。更不可能编码帧率更高的视频了。

同样的环境配置,编码方式改为h264,测试如下:

11ms 28ms 29ms 32ms 30ms 40ms 34ms 19ms 35ms 26ms

id:50

可以看到跳动还是比较大的,偶尔也会超过40ms,比如记录到一个50ms的,但总体在30ms左右,不影响使用。


再改变一下,输入视频帧格式改为1080p60。

视频ctrl+c有延时

12ms 22ms 15ms 30ms 24ms 25ms 23ms 9ms 33ms 27ms

id:40


因此1080p60帧率为60,所以每帧间隔16.6ms,从测试来看,编码器编码一帧耗时太久,丢帧还是比较严重的。因此并不满足工业级生产开发。


再改变一下,输入视频格式改为1080i60,测试得:

ctrl+c有延时

41ms 33ms 36ms 20ms 40ms 18ms 25ms 32ms 46ms 38ms 22ms 19ms 43ms

id:50


1080i60帧率为30帧,每帧间隔33.33ms,因此从测试来看,依然丢帧严重。


再改变一下,输入视频格式改为1080i50,测试得:

ctrl+c无延时

正常不丢帧

id 55


再改变一下,输入视频格式改为1080i50,四路视频输入,同时编码,编码一个小时,分不同时间段采样,测试得:

id:25

25帧 25帧 25帧 25帧 25帧 25帧 25帧 25帧 25帧 25帧 25帧 25帧


可以看出这个配置编码四路1080i50不会丢帧,音频也无问题。


在Intel® Core™ i5-6300U CPU @2.40GHz 4核4线程中:

配置低于上面的i7。

用h264编码1080p60,uyvy422的裸数据,码率为6M,编码器速度配置ultrafast,线程配置4线程编码。

不同时段,三次采样分别丢


13帧,9帧,13帧

id:21


视频改为1080i50,无丢帧。


在Intel® Core™ i5-4460 CPU @ 3.20GHz 4核4线程中(台式机):

用h264编码1080i50,uyvy422的裸数据,码率为6M,编码器速度配置ultrafast,线程配置4线程编码。测试无丢帧。


换成Intel® Core™ i5-4200U CPU @ 1.60GHz2核2线程,其他不变,测试一路h264编码id为40,编码一路h264视频粗略约为30ms,另一个电脑ffplay播放后音视频都没问题。因为代码编码使用的是多线程编码。

如果使用命令:

ffmpeg -re -stream_loop -1 -i westLife.mp4 -ar 44100 -acodec libfdk_aac -s 1920x1080 -pix_fmt yuv420p -preset ultrafast -vcodec h264 -f mpegts srt://192.168.100.78:8080?streamid=uplive.sls.com/live/test1


编码推流,发现id为2,播放推流的音频卡顿严重。

(srs是在上面i5-4200U运行的。但如果再运行一路./TestPattern,则id为16,另一个电脑ffplay后音频卡顿。四个线程负载id都在80左右,有时单个id97)。

此配置当只进行一路h264解码时,音频偶有卡顿,id为85。


image.png

相关文章
|
6天前
|
程序员 编译器
与浮点 CPU 相比,定点 CPU 的优点和缺点是什么
定点CPU相比浮点CPU,优点在于结构简单、成本低、功耗小,适合处理整数运算;缺点是无法高效处理小数和复杂数学运算,精度受限。适用于对成本和功耗敏感的应用场景。
|
5月前
|
并行计算 算法 C#
C# Mandelbrot和Julia分形图像生成程序更新到2010-9-14版 支持多线程计算 多核处理器
此文档是一个关于分形图像生成器的介绍,作者分享了个人开发的M-J算法集成及色彩创新,包括源代码和历史版本。作者欢迎有兴趣的读者留言交流,并提供了邮箱(delacroix_xu@sina.com)以分享资源。文中还展示了程序的发展历程,如增加了真彩色效果、圈选放大、历史记录等功能,并分享了几幅精美的分形图像。此外,还提到了程序的新特性,如导入ini文件批量输出图像和更新一批图片的功能。文档末尾附有多张程序生成的高分辨率分形图像示例。
|
6月前
|
数据采集 人工智能 测试技术
3倍生成速度还降内存成本,超越Medusa2的高效解码框架终于来了
【5月更文挑战第21天】CLLM,一种新方法,通过并行解码提升大型语言模型推理速度3-4倍,降低内存成本,超越Medusa2。采用Jacobi解码和微调策略,保证生成质量。无需修改模型架构,训练成本低,可与现有技术集成。但依赖高质量数据集,更大数据集可提高泛化能力。[链接](https://arxiv.org/pdf/2403.00835)
67 2
|
机器学习/深度学习 PyTorch 算法框架/工具
降龙十八掌:这套优化transformer内存占用的组合技值得收藏(1)
降龙十八掌:这套优化transformer内存占用的组合技值得收藏
314 0
|
6月前
|
存储 缓存 物联网
DP读书:鲲鹏处理器 架构与编程(二)服务器与处理器——高性能处理器的并行组织结构、ARM处理器
DP读书:鲲鹏处理器 架构与编程(二)服务器与处理器——高性能处理器的并行组织结构、ARM处理器
329 0
|
缓存 编解码 负载均衡
解码h264和h265需要的cpu性能
解码h264和h265需要的cpu性能
873 0
解码h264和h265需要的cpu性能
|
编解码 负载均衡 测试技术
使用i9-9880H测试h264/265编解码开销
使用i9-9880H测试h264/265编解码开销
104 0
|
机器学习/深度学习 存储 PyTorch
降龙十八掌:这套优化transformer内存占用的组合技值得收藏
降龙十八掌:这套优化transformer内存占用的组合技值得收藏
239 0
|
存储 PyTorch 测试技术
降龙十八掌:这套优化transformer内存占用的组合技值得收藏(2)
降龙十八掌:这套优化transformer内存占用的组合技值得收藏
350 0
|
存储 编解码 JSON
Byte-Oriented编码和SIMD编解码增强
背景在存储和搜索等场景中,往往需要存储数据的整数列或倒排索引(Inverted Index)中的DocId等整数信息,使用数据压缩和编码的方法能够大大降低数据的大小,加快IO占用时间,降低数据的存储场景。本文主要围绕着对整形数据进行编码的场景进行讨论,对应的常见编码和压缩方式有Fixed length,RLE(Run-Length Encoding),Bit Packing,Delta,zigza
168 0