MSU 出品的 H.264 编码器比较 (2012.5)

本文来自:http://blog.csdn.net/leixiaohua1020/article/details/12373947

莫斯科国立大学的MSU Graphics & Media Lab (Video Group)出品的H.264编码器性能测试报告《Eighth MPEG-4 AVC/H.264 Video Codecs Comparison》。这个报告每年都有,这是最近的一次。它们测试了主流的H.264编码器的性能。从测试的结果来看,开源产品x264性能已经超过 了商用编码器的性能。在此简单记录其结果。

一.概述

参与测试的编码器有如下几种:

H.264

DivX H.264

Elecard H.264

Intel Ivy Bridge QuickSync (GPU encoder)

MainConcept H.264 (software)

MainConcept H.264 (CUDA based encoder)

MainConcept H.264 (OpenCL based encoder)

DiscretePhoton

x264

非H.264

XviD (MPEG-4 ASP codec)

使用的测试序列:

序列

帧数

帧率

分辨率

视频会议 (5 个)

Deadline

1374

30

352x288

Developers 4CIF

3600

30

640x480

Developers 720p

1500

30

1280x720

Presentation

548

30

720x480

Business

493

30

1920x1080

电影 (10 个)

Ice Age

2014

24

720x480

City

600

60

704x576

Crew

600

60

704x576

Indiana Jones

5000

30

704x288

Harbour

600

60

704x576

Ice Skating

480

60

704x576

Soccer

600

60

704x576

Race Horses

300

30

832x480

State Enemy

6500

24

720x304

Party Scene

500

50

832x480

HDTV (16个)

Park Joy

500

50

1280x720

Riverbed

250

25

1920x1080

Rush Hour

500

25

1920x1080

Blue Sky

217

25

1920x1080

Station

313

25

1920x1080

Stockholm

604

50

1280x720

Sunflower

500

25

1920x1080

Tractor

690

25

1920x1080

Bunny

600

24

1920x1080

Dream

600

24

1920x1080

Troy

300

24

1920x1072

Water Drops

535

30

1920x1080

Capitol

600

30

1920x1080

Parrots

600

30

1920x1080

Citybus

600

30

1920x1080

Underwater

600

30

1920x1080

 

测试硬件设备配置:

Sugar Bay platform, 3rd Generation Core i7 3xxx(IVB), 4 Cores CPU @3.4 GHz,

Integrated GPU: Intel HD Graphics 4000

GPU: NVIDIA GeForce GTX 580

HDD: SSD160G

Total Physical Memory: 2x2 Gb RAM (1600 MHz)

OS Name: Microsoft Windows 7

 

总体结果:

 

编码器编码质量排序(注意:这里并没有考虑编码速度):

  1. x264
  2. MainConcept
  3. DivX H.264
  4. Elecard
  5. Intel Ivy Bridge QuickSync
  6. XviD
  7. DiscretePhoton
  8. MainConcept CUDA

二.部分详细图表

整个测试分为三种场景:视频会议(Video Conferences),电影(Movies),高清电视(HDTV)。每种场景的每个测试视频序列都列了一张图表。总体说来图表数量非常之巨大。在此不能一一列举。仅仅举一些例子说明图表的意义。

2.1.视频会议(Video Conferences)

2.1.1.RD曲线(RD Curves)

RD曲线是视频质量评价中最常见的一种曲线,中文名是率失真曲线。横坐标是码率,纵坐标是视频客观算法的结果(例如PSNR或者SSIM)。下面可以看一下第一个测试视频序列的RD曲线:

这 张图的视频分辨率是QCIF(176×144)。曲线横坐标是视频的码率,纵坐标是计算出来的SSIM。SSIM取值0-1之间,值越大,代表视频质量越 好。从曲线中可以看出,在码率相同的情况下,x264编码的视频质量要高于其他编码器(绿色的线)。第二名是MainConcept。

 

2.1.2.编码速度(Encoding Speed)

编 码速度的图表如图所示。横坐标是编码视频的码率,纵坐标是编码速度(在这里是每秒编码的帧数)。总体来说,随着编码的码率的增长,所有编码器的编码速度都 有所下降。Intel Ivy Bridge QuickSync编码的速度非常之快,远超其他编码器。Discrete Photon,MainConcept CUDA和 Elecard在第二集团。X264编码速度算是比较慢的了。

2.1.3.速度/质量权衡(Speed/Quality Trade-Off)

一 般情况下,编码速度越快,编码的质量就会差一些;编码对质量的要求较高,那么编码的速度就会慢很多。这就是所谓的"鱼和熊掌不可兼得"了。于是就有了速度 /质量权衡的图表。在这张图表中,横坐标代表相对的编码时间,取值越小越好。纵坐标代表相同视频质量的时候编码器使用的相对码率。在这里MSU使用 XviD作为参考编码器。即XviD在这张表的横坐标和纵坐标都是1,即位于(1,1)点。可以看出,X264是编码慢,质量最好。Intel Ivy Bridge QuickSync是编码最快,质量稍差。

2.1.4.码率控制(Bitrate Handling)

这 张图表用于测试编码器的码率控制性能。码率控制性能好的编码器,编码后输出的视频码率和编码前设定的码率相同。码率控制性能差的编码器,编码后输出的视频 码率和编码前设定的码率差别会很大。图表中纵坐标是实际码率与设定码率的比值。这个值为1,代表码率控制准确。横坐标是码率。从图中可以看出XviD在码 率大于800kbps之后,出现码率控制不准的情况。Discrete Photon在码率小于500kbps的时候也出现不准的情况。其他编码器码率控制都很准确。

2.1.5.相对质量分析(Relative Quality Analysis)

下列这张表列出了在相同的视频质量的前提下,不同的编码器需要使用的码率。可以看出,X264确实是最强悍的。

下图以图形化的方式显示了上面那张表。不同颜色的线代表不同的编码器。纵坐标代表达到和横坐标编码器相同的视频质量需要的相对码率。

 

 

 

 

2.2.电影(Movies)

电 影(Movies)场景的实验方式和上文中的视频会议(Video Conferences)类似。在此不再详述,列出图表以作备忘。需要注意的是电影(Movies)场景每个编码器使用了3种preset:High Speed Preset,Normal Preset,High Quality Preset。其中High Speed Preset更注重编码的速度,视频的质量其次考虑。High Quality Preset更注重编码的质量,速度相对会慢一些。

2.1.1.RD曲线(RD Curves)

(1)High Speed Preset

(2)Normal Preset

(3)High Quality Preset

 

2.1.2.编码速度(Encoding Speed)

(1)High Speed Preset

(2)Normal Preset

(3)High Quality Preset

2.1.3.速度/质量权衡(Speed/Quality Trade-Off)

(1)High Speed Preset

(2)Normal Preset

(3)High Quality Preset

2.1.1.码率控制(Bitrate Handling)

(1)High Speed Preset

(2)Normal Preset

(3)High Quality Preset

2.1.1.相对质量分析(Relative Quality Analysis)

 

 

(1)High Speed Preset

(2)Normal Preset

(3)High Quality Preset

(1)High Speed Preset

(2)Normal Preset

(3)High Quality Preset

 

 

2.3.高清电视(HDTV)

高清电视场景的测试方式也完全一样。图太多,不再例举。

 

 

 

三.附录

3.1.使用的测试视频序列

附上几张前面这些图表使用的测试视频序列的截图:

Deadline

City

Crew

Ice Age

 


3.2.编码器

本次测试使用的编码器信息如下,都是控制台程序。此处不再翻译。

 

(1) DivX AVC/H.264 Video Encoder
· Console encoding program version 1.1.1.9
· Presets were chosen by ourselves to meet the comparison requirements
Remarks: Owing to our choice of presets, the results for the DivX H.264 encoder could be slightly diminished compared with the case where the developers provide the presets.

(2) Elecard AVC Video Encoder 8-bit edition,
· Console encoding program version 2.1.032820.120220
· Codec and presets were provided by Elecard Ltd Company specifically for this test

(3) MainConcept AVC/H.264 Video Encoder Console Application
· Console software and CUDA encoder applications and presets for them were provided by MainConcept AG Company specifically for this test
(4) x264
· Console encoding application with core:120 r2146 bcd41db was from the public repository
· Presets were provided by developers specifically for this test
Remarks: The presets provided by the developers for this comparison were specifically chosen for the SSIM metric.

(5) XviD raw mpeg4 bitstream encoder
· Console encoding program
· Codec and presets used was taken from previous comparison

(6) Discrete Photon
· Console encoding application version (1.1.0.4) and presets was provided by developers specifically for this test

(7) Intel Ivy Bridge QuickSync
· Transcoder and presets was provided by Intel specifically for this test
· Intel Ivy Bridge Platform used in hardware/software comparison was provided by Intel

3.3.基于GPU硬件的编码器的比较

直 接比较软件编码器和硬件编码器(基于GPU)在某些条件下并不是非常合适。因为基于GPU的硬件编码器可以调用更为强大的计算资源,因此有更快的计算速 度。但是基于GPU的编码器不能使用一些提高视频编码质量的算法,从而导致其质量不能达到最好。在这里单独列出基于GPU的编码器并对其性能进行性比较。 如下所列:

· Intel Ivy Bridge QuickSync (GPU encoder)
· MainConcept H.264 (CUDA based encoder)
· MainConcept H.264 (OpenCL based encoder), ATI 6970 graphic card was used

在这里使用HD(1920x1080)的测试视频序列进行比较。实际上编码HD视频是硬件编码器主要的作用。

本文中仅列几个图示。

(1)RD曲线(RD Curves)

 Intel Ivy Bridge QuickSync整体上最好,个别视频中MainConcept H.264 (OpenCL based encoder)编码器性能会更好。MainConcept H.264 (CUDA based encoder)一般情况下都排在最后。

(2)码率控制(Bitrate Handling)

 

除了低码率的情况外,所有编码器的码率控制都不错。MainConcept在低码率情况下输出实际码率偏高,Intel Ivy Bridge QuickSync 不编码低码率视频。

(3)速度/质量权衡(Speed/Quality Trade-Off)

 

Intel Ivy Bridge QuickSync整体在速度和质量上都有些优势。MainConcept H.264 (OpenCL based encoder)编码器性能好于MainConcept H.264 (CUDA based encoder)。

(4)结论

排序如下:

1. Intel Ivy Bridge QuickSync
2. MainConcept OpenCL
3. MainConcept CUDA

 

3.4.x264各个版本之间比较

此外,作为最优秀的H.264编码器x264.对比了其各个版本之间性能的区别,排序如下,可以看出其一直是出于发展状态的。

1. x264 (2012)2. x264 (2011)
3. x264 (2010)
4. x264 (2009)
5. x264 (2007)
6. x264 (2006)
7. x264 (2005)

(1)RD曲线(RD Curves)

(2)速度/质量权衡(Speed/Quality Trade-Off)

完整文档地址:http://www.compression.ru/video/codec_comparison/h264_2012/mpeg4_avc_h264_video_codecs_comparison.pdf

 

posted @ 2015-05-17 14:58  Mr.Rico  阅读(992)  评论(0编辑  收藏  举报