(This article is English translation of Japanese version)

It’s been a year and a half since last time, so I did benchmark again.

Measurement conditions are:

CPU
Core i7-2600K (Sandy Bridge, 3.4GHz, 4C8T) and Core i7-4770 (Haswell, 3.4GHz, 4C8T)
Memory
DDR3-1600 9-9-9-28
Video clips
crowd_run 4K and Big Buck Bunny 4K
Measurement tool
vctest 2.2.2 x64

Codecs are:

There are the following differences compared with last time:

  • UtVideo: T2 family is added. Also, the original family (hereafter, it is called UtVideo T1) become faster.
  • MagicYUV: it become now official release (not RC version)
  • AMV4: Internal YUV420 variant is added.
  • Lagarith is excluded.

Results

Things we can see

Compression ratio
  • UtVideo T2 achieves lower compression ratio than Ut Video T1 if inter-frame compression is disabled. It is same if inter-frame compression is enabled for crowd_run, for which inter-frame compression is not effective.
  • UtVideo T2 achieves better compression ratio than AMV4 DR3/DY3. More specifically, UtVideo T2 is better than AMV4 in case of crowd_run, for which inter-frame compression is not effective. It is same if inter-frame compression is enabled for Big Buck Bunny, for which inter-frame compression is effective. AMV4 is better than UtVideo T2 if inter-frame compression is disabled for Big Buck Bunny, probably because “secondary compression” of AMV4 is effective for BBB. (UtVideo T2 applies secondary compression to P frames only)
  • UtVideo T1 achieves little better compression ratio than MagicYUV.
Speed
  • UtVideo T2 is much slower if inter-frame compression is enabled.
  • AMV 4 is almost same in speed even if inter-frame compression is enabled. This behavior is very interesting because inter-frame compression requires additional process.
  • When comparing UtVideo T2 and AMV4 DR3/DY3, AMV4 is faster in case of encoding with AVX2. In other cases, UtVideo T2 is faster.
  • In MagicYUV, AVX2 environment (Haswell) is slower than non-AVX2 environment (Sandy Bridge) in case of single-threaded internal-YUV420 encoding. It is strange.

My impression

Thanks to UtVideo T2, I think that UtVideo can now compete with AMV4 in terms of both compression ratio and speed.

By the way, All families in UtVideo (T1, T2, Pro) convert source data to planar format and then compress it. UtVideo T2 UMY2 can process planar format (YV16) significantly faster than packed format (YUY2) because planar conversion takes much time that can not be ignored. To avoid planar conversion, it is conceivable to add an internal format which is suitable for directly processing from a packed format, which will make UtVideo T2 faster than AMV4 DR3/DY3 in all cases. In that case, however, it is necessary to support two internal formats and to maintain many routines for processing each external format directly, in order to keep compatibility. I am not sure that it is worth the effort…

Trackback

4 comments untill now

  1. What about FFV1 ?

  2. 梅澤 威志 @ 2019-05-14 22:29

    I heard that FFV1 focuses on compression ratio rather than compression speed, compared to above mentioned three codecs, and is very slower. This benchmark focuses on realtime capture (and smooth playback if possible). I have not tested FFV1 at all.

  3. gdgsdg123 @ 2019-07-16 16:53

    An intra-frame only codec focused on compression ratio?..

  4. 梅澤 威志 @ 2019-07-20 18:38

    The compression ratio of intra-only codec (T1 family) is higher than T2 family. But I think that intra-only codec focuses on speed.

Add your comment now