Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
![]() |
#1 | Link |
Registered User
Join Date: Nov 2001
Posts: 9,770
|
MPEG-4 AVC/H.264 decoder comparison
one of the main advantages of open standards, like mpeg-4 avc, is that it leads to competition between various codec producers as the consumer will always tend to use the product with the best price/performance relationship.
while prices are pretty well known for the consumer there is one thing often lying in the dark: the actual performance while for the encoding side quality comparisons exist, like the one from doom9, decoders are often overlooked. of course, as every decoder should output exactly the same picture and speed also didnt really play a role as existing formats are pretty easy to decode. but with a format, like avc, which needs a lot of resources while decoding, this might be different for a lot of people who dont own top of the notch pcs. so as avc is very speed consuming and actually only one free avc decoder is existing (libavcodec) it indeed makes sense to compare the performance of existing decoders, before the user decides what to spend his money on in this comparison i will compare the following decoders: - ateme - elecard - libavcodec - mainconcept - moonlight - nero - videosoft imho the quality of a decoder is defined by four things: A) price B) supported features of the format C) decoding speed D) postprocessing A) PRICE its pretty easy to check out the prices of the available decoders: - libavcodec: 0 USD as being opensource, but you have to compile it yourself, supported in various players - videosoft: 19.95 USD, available in their "VSS H.264/AVC Codec Baseline" tool - moonlight: 20 USD, available in the "Moonlight-Elecard MPEG Player 3.0" - nero: 29.90 USD, available in their "Nero Digital Pro" tool - elecard: 499 USD, available in the mainconcept "H.264 Encoder v2" tool - mainconcept: 499 USD, not available anymore, has been available in their "H.264 Encoder v1" tool (v2 uses the elecard decoder) - ateme: not publically available B) SUPPORTED FEATURES according to my tests the following features are NOT supported by the different decoders (version number described below): Code:
| ateme | elecard | libavcodec | mainconcept | moonlight | nero | videosoft | ------------------------------------------------------------------------------------------------------ BASELINE PROFILE| | | | | | | | ------------------------------------------------------------------------------------------------------ p4x4,b8x8,i4x4 | | | | | | | | ------------------------------------------------------------------------------------------------------ loop | | | | | | | | ------------------------------------------------------------------------------------------------------ multireferences | | | | | | | | ------------------------------------------------------------------------------------------------------ adaptive quant | | | | | | | | ------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------ MAIN PROFILE | | | | | | | | ------------------------------------------------------------------------------------------------------ b-frames | | | | | | | | ------------------------------------------------------------------------------------------------------ b-references | | | | | | | x | ------------------------------------------------------------------------------------------------------ wp,wbp | | | | | | | | ------------------------------------------------------------------------------------------------------ cabac | | | | | | | | ------------------------------------------------------------------------------------------------------ fields-only | | | | * | | | | ------------------------------------------------------------------------------------------------------ paff | | | | * | * | | x | ------------------------------------------------------------------------------------------------------ mbaff | | | | * | x | | x | ------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------ HIGH PROFILE | | | | x | | | x | ------------------------------------------------------------------------------------------------------ 8x8dct | | | | x | | | x | ------------------------------------------------------------------------------------------------------ i8x8 | | | | x | | | x | ------------------------------------------------------------------------------------------------------ cqm | | | | x | | | x | ------------------------------------------------------------------------------------------------------ lossless | | x | | x | x | x | x | ------------------------------------------------------------------------------------------------------ second place goes to libavcodec (not supporting interlacing), elecard and nero (not supporting lossless avc) the not anymore developed decoders from mainconcept and moonlight had problems with their interlacing support. moonlight shows artefacts with paff. mainconcept shows artefacts with all interlacing modes. videosoft didnt support b-references/arbitrary frame orders it also gets interesting when looking at the high profile support, whose tested features were supported more or less by libavcodec, moonlight, elecard and nero but fully only by ateme C) DECODING SPEED as all decoders are available as directshow decoders i used this interface for testing the decoders additionally i also tested libavcodec in mplayer to honor its advantage of being useable also in potentially better and faster interfaces than directshow my cpu is a pentium3 866mhz the speed has been measured with elecard's great Chegepuga filter, available here. yv12 output has been enforced, which all decoders supported the graph has been setup as file parser -> decoder -> chegepuga as some decoders are limited to or work best with specific file formats, eg mainconcept only works with .mpg, i decided to use the file parsers of the decoder manufacturers too. this also helped avoiding interoperability problems. of course faster parsers can influence the output speed positively, which has to be taken into account when looking at the values described below the following filter/parser combinations have been used: Code:
ateme: ateme mp4 parser 1.2.5.3 / ateme decoder 2.2.1.0 ateme_old: ateme mp4 parser 1.2.2.0 / ateme decoder 1.1.2.0 elecard: elecard mp4 parser 1.4.0 b50929 / mainconcept decoder 1.01.00.07 libav-ffdshow: haali mp4 parser Sep 03 2005 / ffdshow-libavcodec decoder Oct 13 2005 libav-ffdshow_old: haali mp4 parser Aug 18 2005 / ffdshow-libavcodec decoder Aug 22 2005 libav-mplayer: mplayer mp4 parser cvs aug 12 2005 / mplayer-libavcodec decoder cvs aug 12 2005 mainconcept: mainconcept mpg parser 1.00.01.02 / mainconcept decoder 1.01.00.04 moonlight: elecard mp4 parser 1.3.5 b50823 / moonlight decoder 0.9.0 b50208 nero: nero mp4 parser 2.0.2.49 / nero decoder 2.0.2.46 videosoft: m$ avi parser 6.5.1.902 / videosoft decoder 2.3.1.5 videosoft_old: m$ avi parser 6.5.1.902 / videosoft decoder 2.0.2.3 the source was the typical matrix 1 clip often used for comparisons (smith interrogating morpheus, lobby shootout), ~7000 frames various resolutions and codec settings have been used (the details can be seen in the raw results attached below), the target bitrate was ~700kbps, which can be seen as the typical 1 CDR DVD backup bitrate as encoder x264 has been used, because its one of the most complete encoders and easy to configure also its able to output directly to .mp4, which most decoders supported .mpg has been muxed from .mp4 with ffmpeg cvs june 24 2005 the following amount of samples have been encoded: high profile: 9 main profile: 13 baseline profile: 1 Results: (measured in frames per second) ALL SAMPLES average of all samples except 1 with cqm Code:
ateme: 58.78 libav-mplayer: 58.22 moonlight: 55.48 libav-ffdshow: 52.15 libav-ffdshow_old: 52.11 nero: 50.74 elecard: 44.04 average of all samples except 1 with cqm Code:
libav-mplayer: 55.11 ateme: 53.77 moonlight: 49.57 libav-ffdshow: 49.44 libav-ffdshow_old: 48.84 nero: 46.37 elecard: 40.48 ateme_old: high profile not supported mainconcept: high profile not supported videosoft: high profile not supported Code:
ateme: 60.83 libav-mplayer: 59.00 moonlight: 57.59 libav-ffdshow_old: 53.24 libav-ffdshow: 53.08 nero: 52.58 elecard: 45.61 mainconcept: 43.40 videosoft: not all samples tested (b-ref not supported) ateme_old: not all samples tested (b-ref not supported) Code:
moonlight: 75.34 libav-mplayer: 72.88 ateme: 72.28 ateme_old: 70.63 videosoft: 64.01 libav-ffdshow_old: 63.47 libav-ffdshow: 61.83 nero: 61.80 elecard: 52.02 mainconcept: 51.16 videosoft_old: 33.46 when looking only at the directshow decoders you see that - moonlight is faster than ffdshow and nero (but not than mplayer) - ffdshow is as good as always faster than nero - videosoft is performing in the middle - elecard and mainconcept are slow D) POST PROCESSING imho post processing doesnt really play a role with avc, as the format itself is already good enough to provide a pretty good picture without the need for enhancing it during playback as post processing would also require more processor power and the output quality would have to be judged subjectively i left it away in this comparison totally CONCLUSION the results show once again that opensource development is very powerful when it comes to providing excellent quality as libavcodec was able to provide great speeds when being used in the opensource mplayer and also supports as good as all tested avc features except interlacing the not publically available decoder from ateme also provided excellent results outperforming the other decoders on many samples and being the only one which supported all tested coding features moonlight was a surprise for me as it provided excellent speed results, supported nearly all avc features i tested and is also relatively cheap available. also moonlight offers the possibility to play avc in .mp4 and .mpg moonlight is bankrupt and selling its tools, including the decoder, atm. i hope someone will buy it and continue developing it, its really worth it nero was a disappointment imho as it was till now always seen as the benchmark, a role it clearly wasnt able to play, being slower than moonlight and also slightly slower than ffdshow, not to speak of mplayer it also has to be mentioned that nero uses a very fast mp4 parser, whereas ffdshow and moonlight used slower ones still nero also supports a lot of avc features judging from the price mainconcept charges for their avc implementation (499 USD) i had high expectations for both mainconcepts original decoder (available in v1) and the new elecard decoder its uses since v2, which it surely didnt meet, as it performed pretty poorly i know elecard's decoder is very new and i hope they will continue improving it so it can keep up speedwise with the other decoders and also with the price you have to pay for it. it already supports a lot of avc features videosoft's decoder was a midperformer, with the downside of not supporting b-references, paff/mbaff and high profile. i know vss is working on high profile, but i wasnt able to test it. i hope the bref thing will get fixed soon so i can rank the decoder speedwise in main profile too
__________________
Between the weak and the strong one it is the freedom which oppresses and the law that liberates (Jean Jacques Rousseau) I know, that I know nothing (Socrates) MPEG-4 ASP FAQ | AVC/H.264 FAQ | AAC FAQ | MP4 FAQ | MP4Menu stores DVD Menus in MP4 (guide) Ogg Theora | Ogg Vorbis use WM9 today and get Micro$oft controlling the A/V market tomorrow for free Last edited by bond; 14th October 2007 at 10:11. |
![]() |
![]() |
![]() |
#2 | Link |
Registered User
Join Date: Nov 2001
Posts: 9,770
|
i finally found the time to calculate how the different decoders perform on different coding tools, eg which decoder is the fastest on decoding cabac, etc...
the results shown below can give you an idea on how the decoders perform, of course the results are only valid on the specific two clips i compared for deriving the shown value (in fps) telling the decoding speed difference between two clips (one with the specific feature enabled and the other one with the feature disabled) i ranked the decoders by the % by which the decoding speed decreases when an additional features is enabled the higher the shown value, the worse the performance of the decoder for the specific feature: Code:
------------------------------------------------------------------------ ------------------------------------------------------------------------ blocksizes p8x8 vs. p4x4 720x288 B2 Ref3 i4x4 cabac nero: 18,4% 12,00 ateme_old: 9,7% 5,13 ateme: 9,2% 5,62 videosoft: 5,7% 3,24 libav-ffdshow: 1,7% 1,03 libav-mplayer: 1,5% 1,00 elecard: 1,5% 0,74 libav-ffdshow_old: 1,4% 0,84 moonlight: 1,1% 0,68 mainconcept: 0,8% 0,37 ------------------------------------------------------------------------ i4x4 vs. i8x8 720x288 B3-Ref Ref5 p4x4 loop-5 WBP cabac ateme: 4,8% 2,57 elecard: 3,1% 1,20 libav-ffdshow: 1,3% 0,59 libav-ffdshow_old: 0,9% 0,40 libav-mplayer: 0,0% 0,01 moonlight: -0,1% -0,06 nero: -0,7% -0,28 640x256 B3-Ref Ref5 p4x4 loop-5 WBP cabac libav-ffdshow_old: 4,8% 2,87 elecard: 4,3% 2,12 ateme: 3,0% 1,94 libav-mplayer: 2,0% 1,26 moonlight: 1,3% 0,70 nero: 0,4% 0,21 libav-ffdshow: -5,8% -3,09 ------------------------------------------------------------------------ ------------------------------------------------------------------------ multiple reference frames ref1 vs. ref5 720x288 B3-Ref p4x4-i4x4 loop-5 WBP cabac nero: 10,8% 5,06 libav-mplayer: 10,0% 5,53 elecard: 7,1% 2,95 libav-ffdshow: 7,0% 3,42 ateme: 6,7% 3,85 libav-ffdshow_old: 6,7% 3,22 mainconcept: 5,5% 2,12 moonlight: 5,1% 2,46 ------------------------------------------------------------------------ ref1 vs. ref3 720x288 B3-Ref p4x4-i4x4 loop-5 WBP cabac libav-mplayer: 7,6% 4,59 nero: 7,3% 4,33 ateme: 5,9% 3,97 libav-ffdshow: 5,7% 3,12 elecard: 5,7% 2,69 libav-ffdshow_old: 5,3% 3,02 mainconcept: 4,4% 1,99 moonlight: 2,7% 1,86 ------------------------------------------------------------------------ ref3 vs. ref5 720x288 B3-Ref p4x4-i4x4 loop-5 WBP cabac libav-mplayer: 1,8% 0,94 nero: 1,7% 0,73 moonlight: 1,3% 0,60 elecard: 0,7% 0,26 libav-ffdshow: 0,7% 0,30 libav-ffdshow_old: 0,4% 0,20 mainconcept: 0,4% 0,13 ateme: -0,2% -0,12 ------------------------------------------------------------------------ ------------------------------------------------------------------------ weighted (bi)prediction wbp vs. nowbp 720x288 B3-Ref Ref3 p4x4-i4x4 loop-5 cabac moonlight: 20,0% 11,54 mainconcept: 10,4% 4,27 elecard: 8,4% 3,55 nero: 6,2% 2,80 libav-mplayer: 2,3% 1,22 libav-ffdshow_old: 2,1% 0,96 libav-ffdshow: 1,1% 0,49 ateme: 0,9% 0,46 ------------------------------------------------------------------------ wp+wbp vs. nowp+nowbp 640x256 B2 Ref3 p8x8-i4x4 loop-5 cabac videosoft: 35,6% 19,74 moonlight: 23,6% 16,18 nero: 13,7% 8,16 mainconcept: 12,3% 5,58 elecard: 11,3% 5,37 ateme_old: 9,1% 5,25 libav-mplayer: 4,3% 2,63 libav-ffdshow_old: 2,9% 1,61 ateme: 2,4% 1,65 libav-ffdshow: 0,4% 0,20 ------------------------------------------------------------------------ ------------------------------------------------------------------------ b-frames 0 B-frames vs. 3 B-frames 720x288 Ref5 p4x4-i8x8 loop-5 WBP cabac moonlight: 27,7% 17,49 nero: 27,6% 15,52 elecard: 18,3% 8,30 ateme: 16,5% 9,95 libav-mplayer: 14,0% 8,09 libav-ffdshow: 12,5% 6,37 libav-ffdshow_old: 11,8% 5,90 ------------------------------------------------------------------------ 0 B-frames vs. 2 B-frames 640x256 Ref3 p8x8-i4x4 loop-5 cabac ateme_old: 20,0% 14,35 mainconcept: 13,6% 7,17 libav-ffdshow: 12,9% 8,08 ateme: 12,7% 9,80 elecard: 12,6% 6,81 nero: 12,4% 8,40 libav-ffdshow_old: 12,3% 7,89 libav-mplayer: 11,4% 7,79 moonlight: 9,5% 7,21 videosoft: 9,0% 5,50 ------------------------------------------------------------------------ 0 B-frames vs. 1 B-frames 720x288 Ref5 p4x4-i8x8 loop-5 WBP cabac moonlight: 23,1% 14,55 nero: 21,8% 12,23 elecard: 15,4% 6,97 ateme: 13,6% 8,20 libav-mplayer: 8,4% 4,81 libav-ffdshow: 8,3% 4,25 libav-ffdshow_old: 5,8% 2,92 ------------------------------------------------------------------------ 1 B-frames vs. 3 B-frames 720x288 Ref5 p4x4-i8x8 loop-5 WBP cabac nero: 7,5% 3,29 libav-ffdshow_old: 6,3% 2,98 libav-mplayer: 6,2% 3,28 moonlight: 6,1% 2,94 libav-ffdshow: 4,5% 2,12 elecard: 3,5% 1,33 ateme: 3,4% 1,75 ------------------------------------------------------------------------ B-ref vs. no B-ref 720x288 B3 Ref5 p4x4-i8x8 loop-5 WBP cabac nero: 3,4% 1,39 libav-ffdshow: 0,9% 0,38 libav-mplayer: 0,8% 0,41 ateme: 0,7% 0,34 libav-ffdshow_old: 0,4% 0,16 elecard: 0,2% 0,08 moonlight: -0,1% -0,04 ------------------------------------------------------------------------ ------------------------------------------------------------------------ loop loop-5 vs. no loop 720x288 B2 Ref3 p8x8-i4x4 cabac libav-mplayer: 21,0% 14,16 libav-ffdshow: 20,5% 12,28 nero: 19,8% 12,89 libav-ffdshow_old: 18,7% 10,85 elecard: 18,4% 9,34 mainconcept: 15,8% 7,48 videosoft: 14,3% 8,18 moonlight: 6,9% 4,34 ateme: 6,2% 3,80 ateme_old: 4,9% 2,62 720x288 B3-Ref Ref5 p4x4-i8x8 WBP cabac libav-ffdshow: 20,6% 11,67 libav-mplayer: 19,4% 12,05 libav-ffdshow_old: 17,3% 9,30 elecard: 17,0% 7,62 nero: 16,5% 8,33 ateme: 6,2% 3,37 moonlight: 5,8% 2,80 ------------------------------------------------------------------------ loop-5 vs. loop+6 720x288 B3-Ref Ref5 p4x4-i8x8 WBP cabac ateme: 14,7% 7,45 moonlight: 11,9% 5,44 nero: 7,4% 3,11 libav-ffdshow_old: 5,5% 2,43 libav-mplayer: 5,3% 2,67 libav-ffdshow: 4,4% 2,00 elecard: 4,2% 1,55 ------------------------------------------------------------------------ ------------------------------------------------------------------------ cabac cabac vs. no cabac 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP libav-mplayer: 16,0% 9,54 libav-ffdshow_old: 15,1% 7,89 libav-ffdshow: 13,8% 7,20 ateme: 10,3% 5,80 moonlight: 9,3% 4,68 nero: 5,2% 2,31 elecard: 4,9% 1,90 ------------------------------------------------------------------------ ------------------------------------------------------------------------ cabac + noloop vs. loop-5 + nocabac 720x288 B3-Ref Ref5 p4x4-i8x8 WBP elecard: 12,8% 5,72 nero: 12,0% 6,02 libav-ffdshow: 7,9% 4,47 libav-mplayer: 4,1% 2,51 libav-ffdshow_old: 2,6% 1,41 moonlight: -3,9% -1,88 ateme: -4,5% -2,43 ------------------------------------------------------------------------ ------------------------------------------------------------------------ resolution 720x288 vs. 640x256 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac nero: 22,8% 12,43 libav-ffdshow_old: 21,1% 11,87 elecard: 20,4% 9,49 libav-ffdshow: 20,3% 11,48 ateme: 20,2% 12,83 libav-mplayer: 20,1% 12,54 moonlight: 17,2% 9,46 ------------------------------------------------------------------------ ------------------------------------------------------------------------ custom quant matrix cqm qmatrix vs. no cqm 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac nero: 7,5% 2,68 ateme: 3,5% 1,71 elecard: 3,3% 1,50 moonlight: 1,7% 0,67 ------------------------------------------------------------------------ ------------------------------------------------------------------------
__________________
Between the weak and the strong one it is the freedom which oppresses and the law that liberates (Jean Jacques Rousseau) I know, that I know nothing (Socrates) MPEG-4 ASP FAQ | AVC/H.264 FAQ | AAC FAQ | MP4 FAQ | MP4Menu stores DVD Menus in MP4 (guide) Ogg Theora | Ogg Vorbis use WM9 today and get Micro$oft controlling the A/V market tomorrow for free Last edited by bond; 16th October 2005 at 23:40. |
![]() |
![]() |
![]() |
#3 | Link |
Registered User
Join Date: Nov 2001
Posts: 9,770
|
raw results from which all the above values are derived:
high profile: Code:
x264_hp_2pass_640x256_B3-Ref_Ref5_p4x4-i8x8_loop-5_WBP_cabac ateme: 63.45 libav-mplayer: 62.45 libav-ffdshow: 56.46 libav-ffdshow_old: 56.33 moonlight: 55.02 nero: 54.47 elecard: 46.62 ateme_old: high profile not supported mainconcept: high profile not supported videosoft: high profile not supported x264_hp_2pass_720x288_B0_Ref5_p4x4-i8x8_loop-5_WBP_cabac moonlight: 63.09 ateme: 60.23 libav-mplayer: 57.59 nero: 56.17 libav-ffdshow: 50.97 libav-ffdshow_old: 50.20 elecard: 45.35 ateme_old: high profile not supported mainconcept: high profile not supported videosoft: high profile not supported x264_hp_2pass_720x288_B1_Ref5_p4x4-i8x8_loop-5_WBP_cabac libav-mplayer: 52.78 ateme: 52.03 moonlight: 48.54 libav-ffdshow_old: 47.28 libav-ffdshow: 46.72 nero: 43.94 elecard: 38.38 ateme_old: high profile not supported mainconcept: high profile not supported videosoft: high profile not supported x264_hp_2pass_720x288_B3_Ref5_p4x4-i8x8_loop-5_WBP_cabac ateme: 50.28 libav-mplayer: 49.50 moonlight: 45.60 libav-ffdshow: 44.60 libav-ffdshow_old: 44.30 nero: 40.65 elecard: 37.05 ateme_old: high profile not supported mainconcept: high profile not supported videosoft: high profile not supported x264_hp_2pass_720x288_B3-Ref_Ref5_p4x4-i8x8_loop-5_WBP libav-mplayer: 59.45 ateme: 56.42 libav-ffdshow_old: 52.35 libav-ffdshow: 52.18 moonlight: 50.24 nero: 44.35 elecard: 39.03 ateme_old: high profile not supported mainconcept: high profile not supported videosoft: high profile not supported x264_hp_2pass_720x288_B3-Ref_Ref5_p4x4-i8x8_loop-5_WBP_cabac ateme: 50.62 libav-mplayer: 49.91 moonlight: 45.56 libav-ffdshow: 44.98 libav-ffdshow_old: 44.46 nero: 42.04 elecard: 37.13 ateme_old: high profile not supported mainconcept: high profile not supported videosoft: high profile not supported x264_hp_2pass_720x288_B3-Ref_Ref5_p4x4-i8x8_loop-5_WBP_cabac_cqm-qmatrix ateme: 48.91 moonlight: 44.89 nero: 39.36 elecard: 35.63 libav-ffdshow: cqm not supported libav-mplayer: cqm not supported ateme_old: high profile not supported mainconcept: high profile not supported videosoft: high profile not supported x264_hp_2pass_720x288_B3-Ref_Ref5_p4x4-i8x8_loop+6_WBP_cabac libav-mplayer: 47.24 ateme: 43.17 libav-ffdshow: 42.98 libav-ffdshow_old: 42.03 moonlight: 40.12 nero: 38.93 elecard: 35.58 ateme_old: high profile not supported mainconcept: high profile not supported videosoft: high profile not supported x264_hp_2pass_720x288_B3-Ref_Ref5_p4x4-i8x8_WBP_cabac libav-mplayer: 61.96 libav-ffdshow: 56.65 ateme: 53.99 libav-ffdshow_old: 53.76 nero: 50.37 moonlight: 48.36 elecard: 44.75 ateme_old: high profile not supported mainconcept: high profile not supported videosoft: high profile not supported Code:
x264_mp_2pass_640x256_B3-Ref_Ref5_p4x4-i4x4_loop-5_WBP_cabac ateme: 65.39 libav-mplayer: 63.71 libav-ffdshow_old: 59.20 moonlight: 55.72 nero: 54.68 libav-ffdshow: 53.37 elecard: 48.74 mainconcept: 46.47 ateme_old: b-ref not supported videosoft: b-ref not supported x264_mp_2pass_720x288_B2_Ref3_p4x4-i4x4_cabac libav-mplayer: 66.33 moonlight: 61.99 libav-ffdshow: 58.73 libav-ffdshow_old: 57.31 ateme: 55.33 videosoft: 54.05 nero: 53.08 elecard: 51.58 ateme_old: 47.86 mainconcept: 47.86 x264_mp_2pass_720x288_B2_Ref3_p8x8-i4x4_cabac libav-mplayer: 67.33 nero: 65.08 moonlight: 62.67 ateme: 60.95 libav-ffdshow: 59.76 libav-ffdshow_old: 58.15 videosoft: 57.29 ateme_old: 52.99 elecard: 50.84 mainconcept: 47.49 x264_mp_2pass_720x288_B2_Ref3_p8x8-i4x4_loop-5_cabac moonlight: 58.33 ateme: 57.15 libav-mplayer: 53.17 nero: 52.19 ateme_old: 50.37 videosoft: 49.11 libav-ffdshow: 47.48 libav-ffdshow_log: 47.30 elecard: 41.50 mainconcept: 40.01 x264_mp_2pass_720x288_B2-Ref_Ref3_p4x4-i4x4_cabac libav-mplayer: 65.36 moonlight: 62.09 libav-ffdshow: 59.51 libav-ffdshow_old: 57.33 ateme: 57.29 nero: 55.63 elecard: 52.50 mainconcept: 49.27 ateme_log: b-ref not supported videosoft: b-ref not supported x264_mp_2pass_720x288_B3-Ref_Ref1_p4x4-i4x4_loop-5_WBP_cabac ateme: 57.04 libav-mplayer: 55.45 libav-ffdshow: 48.99 libav-ffdshow_old: 48.08 moonlight: 47.96 nero: 46.82 elecard: 41.28 mainconcept: 38.78 ateme_old: b-ref not supported videosoft: b-ref not supported x264_mp_2pass_720x288_B3-Ref_Ref3_p4x4-i4x4_loop-5_WBP_cabac ateme: 53.07 libav-mplayer: 50.86 moonlight: 46.10 libav-ffdshow: 45.87 libav-ffdshow_old: 45.06 nero: 42.49 elecard: 38.59 mainconcept: 36.79 ateme_old: b-ref not supported videosoft: b-ref not supported x264_mp_2pass_720x288_B3-Ref_Ref3_p4x4-i4x4_loop-5_cabac moonlight: 57.64 ateme: 53.53 libav-mplayer: 52.08 libav-ffdshow: 46.36 libav-ffdshow_old: 46.02 nero: 45.29 elecard: 42.14 mainconcept: 41.06 ateme_old: b-ref not supported videosoft: b-ref not supported x264_mp_2pass_720x288_B3-Ref_Ref5_p4x4-i4x4_loop-5_WBP_cabac ateme: 53.19 libav-mplayer: 49.92 libav-ffdshow: 45.57 moonlight: 45.50 libav-ffdshow_old: 44.86 nero: 41.76 elecard: 38.33 mainconcept: 36.66 ateme_log: b-ref not supported videosoft: b-ref not supported x264_mp_2pass_640x256_B0_Ref3_p8x8-i4x4_loop_cabac ateme: 77.31 moonlight: 75.64 ateme_old: 71.90 libav-mplayer: 68.44 nero: 67.89 libav-ffdshow_old: 64.37 libav-ffdshow: 62.63 videosoft: 60.95 elecard: 54.19 mainconcept: 52.72 videosoft_old: 31.87 x264_mp_2pass_640x256_B2_Ref5_p4x4-i4x4_loop_cabac ateme: 67.19 libav-mplayer: 55.70 moonlight: 54.29 libav-ffdshow_old: 53.07 libav-ffdshow: 52.87 ateme_log: 49.60 nero: 47.79 elecard: 43.91 mainconcept: 41.60 videosoft: 38.97 videosoft_old: 24.25 nero_2pass-777kbps_Cabac_Deblock-5-adapt_B2_Ref3_noWPred_Qpel_p8x8_cartoon_psy2_extra moonlight: 68.43 ateme: 67.51 libav-mplayer: 60.65 nero: 59.49 ateme_old: 57.55 libav-ffdshow_old: 56.48 videosoft: 55.45 libav-ffdshow: 54.55 elecard: 47.38 mainconcept: 45.55 nero_2pass-777kbps_Cabac_Deblock-5-adapt_B2_Ref3_WPred+wbp_Qpel_p8x8_cartoon_psy2_extra ateme: 65.86 libav-mplayer: 58.02 libav-ffdshow_old: 54.87 libav-ffdshow: 54.35 ateme_old: 52.30 moonlight: 52.25 nero: 51.33 elecard: 42.01 mainconcept: 39.97 videosoft: 35.71 Code:
x264_bp_720x288_B0_Ref5_p8x8-i4x4_loop-5_wbp moonlight: 75.34 libav-mplayer: 72.88 ateme: 72.28 ateme_log: 70.63 videosoft: 64.01 libav-ffdshow_old: 63.47 libav-ffdshow: 61.83 nero: 61.80 elecard: 52.02 mainconcept: 51.16 videosoft_old: 33.46
__________________
Between the weak and the strong one it is the freedom which oppresses and the law that liberates (Jean Jacques Rousseau) I know, that I know nothing (Socrates) MPEG-4 ASP FAQ | AVC/H.264 FAQ | AAC FAQ | MP4 FAQ | MP4Menu stores DVD Menus in MP4 (guide) Ogg Theora | Ogg Vorbis use WM9 today and get Micro$oft controlling the A/V market tomorrow for free Last edited by bond; 16th October 2005 at 18:09. |
![]() |
![]() |
![]() |
#4 | Link |
Mr. Sandman
Join Date: Sep 2003
Location: Haddonfield, IL
Posts: 11,768
|
![]() sorry, i need to buy a pair of googles...
__________________
MPEG-4 ASP Custom Matrices: EQM V1(old), EQM AutoGK Sharpmatrix (aka EQM V2), EQM V3HR (updated 01/10/2004), EQM V3LR, EQM V3ULR (updated 04/02/2005), EQM V3UHR (updated 17/12/2004) and EQM V3EHR (updated 05/10/2004) Info about my ASP matrices. MPEG-4 AVC Custom Matrices: EQM AVC-HR Info about my AVC matrices My x264 builds. Mooo!!! |
![]() |
![]() |
![]() |
#5 | Link |
Registered User
Join Date: Oct 2001
Location: Melbourne, Australia
Posts: 2,171
|
@bond, did you use my ffdshow build as is? Because the libavcodec is built with gcc and generic flags. It might be interesting to see the same test with a version compiled with flags specific for your CPU, since as you say ffdshow is not that much slower than moonlight.
|
![]() |
![]() |
![]() |
#6 | Link |
Registered User
Join Date: Feb 2002
Posts: 407
|
Thanks for this usefull test !
I would just say that, for people like me who didn't go read the thread about libavcodec speed measurement, your results numbers mean absolutly nothing... You could write somewhere that you are talking about Frame Per Second (and not cpu occupation or whatelse)... That puzzled me until i decided to read the thread linked in your post. |
![]() |
![]() |
![]() |
#7 | Link |
Registered User
Join Date: Jan 2003
Location: St.Petersburg, Russia
Posts: 11
|
VSS (videosoft) h264 decoder
Hi Bond.
It seems you are using very-very old videosoft decoder version 2.0.2.3. New much faster version 2.2 is available for already long time. Free evaluation of VSS h264 DirectShow decoder filter 2.2 is available here: http://www.vsofts.com/h264/decoders.html See item "Installation". Or direct link to installer: http://www.vsofts.com/h264/pub/vssh3dec.exe The DirectShow decoder should support any format, not only AVI. Commercial version of the decoder is included into both Base ($20) and Main ($99) codec 2.3 consumer packages, so the price of the decoder is only $20. The newest VSS H264 decoder 3.0 (currently available only in Professional products) supports all features from Main & Baseline profiles as well as High Profile. Also it has performance ~15% better than version 2.2. By the way, what hardware (CPU, memory) are you using? =Alexey Doilnitsyn, VSS Inc. Last edited by alexcyn; 31st August 2005 at 14:08. |
![]() |
![]() |
![]() |
#8 | Link | |
Registered User
Join Date: Jan 2002
Location: France
Posts: 2,856
|
Quote:
Also, I wouldn't have used average speeds but, inverse of average of inverse speeds ( hence, the sum of decoding time ). Finally, including mplayer is great for promotting mplayer ( or vlc, btw ), but serves no purposes in your comparison : you're comparing decoders, not players ( and -vo null is almost cheating if it does what I think ![]()
__________________
Last edited by Manao; 31st August 2005 at 15:25. |
|
![]() |
![]() |
![]() |
#9 | Link |
Registered User
Join Date: Apr 2004
Posts: 1,315
|
Here Nero decoder is still faster than ffdshow+haali and mplayer. Maybe it depends of settings. I also use hard settings (high profile, ref 8-16, weight, bframes 2-3, high values for mvrange for x264/H.264 etc.) And probably it depens of CPU. In my case SSE2.
Last edited by IgorC; 31st August 2005 at 16:43. |
![]() |
![]() |
![]() |
#10 | Link | |
Registered User
Join Date: Jan 2005
Posts: 191
|
Quote:
|
|
![]() |
![]() |
![]() |
#11 | Link | |
x264 developer
Join Date: Sep 2004
Posts: 2,392
|
Quote:
Also, how about lossless and interlacing in the feature comparison? Last edited by akupenguin; 1st September 2005 at 09:16. |
|
![]() |
![]() |
![]() |
#12 | Link |
Registered User
Join Date: Jan 2002
Location: France
Posts: 2,856
|
Well, I've got a decoder available both in a ds filter and in a standalone application that can behave like mplayer -vo null. The ds overhead for the filter is roughly a copy of a picture, which hardly matters at the framerate i'm testing. In one case ( standalone ), i get 48 fps, in the second ( ds filter + chegepuga ), i get 42 fps, so it's a 12.5 % speed gain ( or 11% speed loss
![]() DirectShow itself is responsible for that loss ( which is huge, because I've got a 2800+ with a fairly fast memory ). So perhaps it's not -vo null that creates the difference, yet comparing ds filters to mplayer isn't that useful when you want to compare decoders.
__________________
|
![]() |
![]() |
![]() |
#13 | Link |
Life's clearer in 4K UHD
Join Date: Jun 2003
Location: Notts, UK
Posts: 12,177
|
Great work bond....
It will interesting to see if things change as time rolls by and refinements are made.... Cheers
__________________
| I've been testing hardware media playback devices and software A/V encoders and decoders since 2001 | My Network Layout & A/V Gear |
|
![]() |
![]() |
![]() |
#15 | Link | |||||||||||||
Registered User
Join Date: Nov 2001
Posts: 9,770
|
first of all thx for all the responses and the interest!
![]() Quote:
![]() Quote:
Quote:
i simply wasnt really interested in testing a decoder which becomes useless for me after 30 days ![]() Quote:
Quote:
Quote:
![]() ![]() Quote:
Quote:
Quote:
Quote:
for the user it doesnt matter what codec interface stands behind it, be it directshow or whatever i am actually also planning to add decoding of qt7 to the comparison, but i am simply too lazy to set it up the thing is if the commercial decoders are limited to directshow, its the commercials decoders problem and not libavcodec's, which is simply available in a form which allows it to be used in superior platforms than directshow, that should be honored and as you saw i also included ffdshow and it still performed great Quote:
Quote:
actually i noticed that x264 enables the wbp flag in the pps altough it sets the baseline profile in the sps correctly Quote:
maybe i will simply test the decoders capabilities on the clips i have lying around without speed measurement
__________________
Between the weak and the strong one it is the freedom which oppresses and the law that liberates (Jean Jacques Rousseau) I know, that I know nothing (Socrates) MPEG-4 ASP FAQ | AVC/H.264 FAQ | AAC FAQ | MP4 FAQ | MP4Menu stores DVD Menus in MP4 (guide) Ogg Theora | Ogg Vorbis use WM9 today and get Micro$oft controlling the A/V market tomorrow for free Last edited by bond; 1st September 2005 at 20:37. |
|||||||||||||
![]() |
![]() |
![]() |
#16 | Link |
Registered User
Join Date: Feb 2003
Posts: 46
|
I could be wrong but I was under the impression not all decoders are equal quality-wise. Frequently they use estimations etc to improve speed which is fine but when quality can very IMHO a straight out speed test is not so meaningful for many people. I could make a decoder that is very very fast but the output it so crap it isn't worth it. Of course I'm aware quality issues are a problem since it's so subjective so instead, I would recommend you get the reference implementation of h.264 which I assume is completely accurate and then do a mathematical comparison. Of course, this can be a bit misleading since a smart decoder may have higher mathmatical difference but lower noticable difference but it's better then nothing.
|
![]() |
![]() |
![]() |
#17 | Link |
Registered User
Join Date: Jan 2002
Location: France
Posts: 2,856
|
No, none of these codecs do such a thing. Not decoding picture as they should leads immediately to errors that are easily spottable.
Only libavcodec got a patch, very recently, that allowed to disable deblocking at very low qps, but it's not enabled by default, and it's highly recommended not to use it.
__________________
|
![]() |
![]() |
![]() |
#18 | Link |
Registered User
Join Date: Feb 2003
Posts: 46
|
Okay thanks for clarifying. I was always under the impression that there was some (minor) differences in the output quality of non post-processing decoders due to factors such as estimation, dropping least significant bits in some cases, different interpretations of the algorythm etc. Now I know. So basically you can take any decoder and use it to save an uncompressed raw video files and the file would be exactly the same! That is good :-)
Last edited by Nil Einne; 1st September 2005 at 22:44. |
![]() |
![]() |
![]() |
#19 | Link | |
Registered User
Join Date: Dec 2004
Location: Tomsk, Russia
Posts: 366
|
Quote:
In that way real performance can be different from what you have measured. Does somebody know how mplayer process with this option? with or without the copy? |
|
![]() |
![]() |
![]() |
#20 | Link |
Registered User
Join Date: Nov 2001
Posts: 9,770
|
well the mplayer devs recommend when wanting to do benchmarks to use the -vo null and -benchmark options, so i assume the output values are useable!?
__________________
Between the weak and the strong one it is the freedom which oppresses and the law that liberates (Jean Jacques Rousseau) I know, that I know nothing (Socrates) MPEG-4 ASP FAQ | AVC/H.264 FAQ | AAC FAQ | MP4 FAQ | MP4Menu stores DVD Menus in MP4 (guide) Ogg Theora | Ogg Vorbis use WM9 today and get Micro$oft controlling the A/V market tomorrow for free |
![]() |
![]() |
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|