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. Domains: forum.doom9.org / forum.doom9.net / forum.doom9.se |
|
|
#1 | Link |
|
Registered User
Join Date: Nov 2001
Posts: 9,770
|
libavcodec avc decoding performance test
i today wanted to find out what influences decoding of avc the most with the libavcodec avc decoder as i wanted to know what to best enable/disable in my encodes for getting realtime playback on my good old pentium3 866mhz
therefore i made a bunch of encodes with x264 r287 and benchmarked them with recent libavcodec cvs via mplayer's -vo null -benchmark option with the following "raw" results the source is the typical matrix1 encode (smith interrogating morpheus, lobby shootout...) 7116 frames: Code:
640x256 B0 Ref3 p8x8-i4x4 loop-5 cabac 103.999s 68.44fps 720x288 B2 Ref3 p8x8-i4x4 cabac 105.682s 67.33fps 720x288 B2 Ref3 p4x4-i4x4 cabac 107.274s 66.33fps 640x256 B3-Ref Ref5 p4x4-i4x4 loop-5 WBP cabac 111.700s 63.71fps 640x256 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac 113.954s 62.45fps 720x288 B3-Ref Ref5 p4x4-i8x8 WBP cabac 114.845s 61.96fps 640x256 B2 Ref3 p8x8-i4x4 loop-5 cabac 117.338s 60.65fps 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP 119.702s 59.45fps 640x256 B2 Ref3 p8x8-i4x4 loop-5 w(b)p cabac 122.646s 58.02fps 720x288 B0 Ref5 p4x4-i8x8 loop-5 WBP cabac 123.567s 57.59fps 640x256 B2 Ref5 p4x4-i4x4 loop-5 cabac 127.723s 55.70fps 720x288 B3-Ref Ref1 p4x4-i4x4 loop-5 WBP cabac 128.334s 55.45fps 720x288 B2 Ref3 p8x8-i4x4 loop-5 cabac 133.842s 53.17fps 720x288 B1 Ref5 p4x4-i8x8 loop-5 WBP cabac 134.824s 52.78fps 720x288 B3-Ref Ref3 p4x4-i4x4 loop-5 cabac 136.626s 52.08fps 720x288 B3-Ref Ref3 p4x4-i4x4 loop-5 WBP cabac 139.901s 50.86fps 720x288 B3-Ref Ref5 p4x4-i4x4 loop-5 WBP cabac 142.535s 49.92fps 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac 142.565s 49.91fps 720x288 B3 Ref5 p4x4-i8x8 loop-5 WBP cabac 143.767s 49.50fps 720x288 B3-Ref Ref5 p4x4-i8x8 loop+6 WBP cabac 150.636s 47.24fps Code:
------------------------------------------------------------------------ ------------------------------------------------------------------------ blocksizes p8x8 vs. p4x4 720x288 B2 Ref3 p8x8-i4x4 cabac 105.682s 67.33fps 720x288 B2 Ref3 p4x4-i4x4 cabac 107.274s 66.33fps 1.00 ------------------------------------------------------------------------ i4x4 vs. i8x8 720x288 B3-Ref Ref5 p4x4-i4x4 loop-5 WBP cabac 142.535s 49.92fps 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac 142.565s 49.91fps 0.01 640x256 B3-Ref Ref5 p4x4-i4x4 loop-5 WBP cabac 111.700s 63.71fps 640x256 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac 113.954s 62.45fps 1.26 ------------------------------------------------------------------------ ------------------------------------------------------------------------ multiple reference frames ref1 vs. ref5 720x288 B3-Ref Ref1 p4x4-i4x4 loop-5 WBP cabac 128.334s 55.45fps 720x288 B3-Ref Ref5 p4x4-i4x4 loop-5 WBP cabac 142.535s 49.92fps 5.53 ------------------------------------------------------------------------ ref1 vs. ref3 720x288 B3-Ref Ref1 p4x4-i4x4 loop-5 WBP cabac 128.334s 55.45fps 720x288 B3-Ref Ref3 p4x4-i4x4 loop-5 WBP cabac 139.901s 50.86fps 4.59 ------------------------------------------------------------------------ ref3 vs. ref5 720x288 B3-Ref Ref3 p4x4-i4x4 loop-5 WBP cabac 139.901s 50.86fps 720x288 B3-Ref Ref5 p4x4-i4x4 loop-5 WBP cabac 142.535s 49.92fps 0.94 ------------------------------------------------------------------------ ------------------------------------------------------------------------ weighted (bi)prediction wbp vs. nowbp 720x288 B3-Ref Ref3 p4x4-i4x4 loop-5 cabac 136.626s 52.08fps 720x288 B3-Ref Ref3 p4x4-i4x4 loop-5 WBP cabac 139.901s 50.86fps 1.22 ------------------------------------------------------------------------ wp+wbp vs. nowp+nowbp 640x256 B2 Ref3 p8x8-i4x4 loop-5 cabac 117.338s 60.65fps 640x256 B2 Ref3 p8x8-i4x4 loop-5 w(b)p cabac 122.646s 58.02fps 2.63 ------------------------------------------------------------------------ ------------------------------------------------------------------------ b-frames 0 B-frames vs. 3 B-frames 720x288 B0 Ref5 p4x4-i8x8 loop-5 WBP cabac 123.567s 57.59fps 720x288 B3 Ref5 p4x4-i8x8 loop-5 WBP cabac 143.767s 49.50fps 8.09 ------------------------------------------------------------------------ 0 B-frames vs. 2 B-frames 640x256 B0 Ref3 p8x8-i4x4 loop-5 cabac 103.999s 68.44fps 640x256 B2 Ref3 p8x8-i4x4 loop-5 cabac 117.338s 60.65fps 7.79 ------------------------------------------------------------------------ 0 B-frames vs. 1 B-frames 720x288 B0 Ref5 p4x4-i8x8 loop-5 WBP cabac 123.567s 57.59fps 720x288 B1 Ref5 p4x4-i8x8 loop-5 WBP cabac 134.824s 52.78fps 4.81 ------------------------------------------------------------------------ 1 B-frames vs. 3 B-frames 720x288 B1 Ref5 p4x4-i8x8 loop-5 WBP cabac 134.824s 52.78fps 720x288 B3 Ref5 p4x4-i8x8 loop-5 WBP cabac 143.767s 49.50fps 3.28 ------------------------------------------------------------------------ B-ref vs. no B-ref 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac 142.565s 49.91fps 720x288 B3 Ref5 p4x4-i8x8 loop-5 WBP cabac 143.767s 49.50fps 0.41 ------------------------------------------------------------------------ ------------------------------------------------------------------------ loop loop-5 vs. no loop 720x288 B2 Ref3 p8x8-i4x4 cabac 105.682s 67.33fps 720x288 B2 Ref3 p8x8-i4x4 loop-5 cabac 133.842s 53.17fps 14.16 720x288 B3-Ref Ref5 p4x4-i8x8 WBP cabac 114.845s 61.96fps 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac 142.565s 49.91fps 12.05 ------------------------------------------------------------------------ loop-5 vs. loop+6 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac 142.565s 49.91fps 720x288 B3-Ref Ref5 p4x4-i8x8 loop+6 WBP cabac 150.636s 47.24fps 2.67 ------------------------------------------------------------------------ ------------------------------------------------------------------------ cabac cabac vs. no cabac 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP 119.702s 59.45fps 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac 142.565s 49.91fps 9.54 ------------------------------------------------------------------------ ------------------------------------------------------------------------ cabac + noloop vs. loop-5 + nocabac 720x288 B3-Ref Ref5 p4x4-i8x8 WBP cabac 114.845s 61.96fps 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP 119.702s 59.45fps 2.51 ------------------------------------------------------------------------ ------------------------------------------------------------------------ resolution 720x288 vs. 640x256 640x256 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac 113.954s 62.45fps 720x288 B3-Ref Ref5 p4x4-i8x8 loop-5 WBP cabac 142.565s 49.91fps 12.54 ------------------------------------------------------------------------ ------------------------------------------------------------------------ 1) the ones that impact speed a lot: loop, resolution, cabac and high numbers of b-frames (eg 3), of which cabac and b-frames take less decoding time 2) the ones that hardly impact speed (but in sum might do too): blocksizes, weighted prediction, weighted biprediction and b-references (which is actually faster than b-frames without b-ref) 3) the ones in the middle: small numbers of b-frames (eg 1) and multiple reference frames hope someone might find this useful (eg maybe for tuning the decoder?) ![]() edit: loop was set with a strenght of -5,-5
__________________
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; 25th August 2005 at 22:33. |
|
|
|
|
|
#2 | Link |
|
Registered User
Join Date: Feb 2005
Location: São Paulo, Brazil
Posts: 392
|
Very intersting. I have an 1.7 celeron and besides that I want that my friends that have even slower computers play my encodes well too.
And why you dont use the defaut value for in-loop filter? It would make any diference? |
|
|
|
|
|
#3 | Link |
|
Registered User
Join Date: Jan 2004
Posts: 567
|
I haven't done speed tests yet but my Intel Pentium M 1.6 GHz (Dothan) computer stays at 600 MHz (lowest SpeedStep) when playing back an AVC / aacPlus v2 encode. CPU usage ranges between 50 and 70%.
Video: 720 x 304 / x264 High Profile (CABAC, 5 ref. frames, 3 cons. b-frames, b-pyramid, weighted b-pred., in-loop -2/-2, all mb partitions, 8x8DCT) Audio: aacPlus v2 (AAC + SBR + PS) Container: MP4 Demuxer: Haali Media Splitter Decoder: ffdshow, CoreAAC
__________________
Bye |
|
|
|
|
|
#7 | Link |
|
Registered User
Join Date: Nov 2001
Posts: 9,770
|
i now added a few more test:
- i moved multiple reference frames to a "middle" group as their impact on speed is indeed noticeable - using a higher strength of loop indeed influences speed more than a lower strength (as loop is less used with a lower strength) - the higher the number of b-frames, the slower the decoding about the question to also benchmark other decoders, i would of course be very interested in this too, but i dunno how to accurately measure the time with these filters? is it possible to decode via directshow filters in mplayer?
__________________
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; 26th August 2005 at 00:43. |
|
|
|
|
|
#8 | Link | |
|
BeHappy/MeGUI developer
Join Date: Oct 2003
Location: Moscow, Russia
Posts: 1,727
|
Quote:
__________________
BeHappy - AviSynth-based audio transcoding tool Audio encoding via AviSynth On2 VP7 is great in quality but it is unusable for long-term video backup puposes! Sincerely Yours, MCPD/MCTS |
|
|
|
|
|
|
#9 | Link | |
|
Registered User
Join Date: Nov 2001
Posts: 9,770
|
Quote:
__________________
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 |
|
|
|
|
|
|
#10 | Link | |
|
Registered User
Join Date: Dec 2004
Location: Tomsk, Russia
Posts: 366
|
Quote:
Before starting the graph you need to uncheck Graph->Use clock menu. After graph stopped open property page of this filter and you will see the performance. |
|
|
|
|
|
|
#11 | Link | |
|
Registered User
Join Date: Nov 2001
Posts: 9,770
|
Quote:
btw if you want me to test your decoder too, it might be a nice if you could send me a unlocked copy, cause i cant get things to work with your player as described here
__________________
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 |
|
|
|
|
|
|
#12 | Link | |
|
Registered User
Join Date: Dec 2004
Location: Tomsk, Russia
Posts: 366
|
Quote:
BTW when you measure DShow decoders performance you should be aware of output mediatype. Elecard Chegepuga (filter attached above) connects on any mediatype, but different decoders use different media types as first output mediatype - some of them use YV12 (as simplest), some of them use YUY2 or UYVY as fastest to render via graphic cards. Of course second variant is a little bit slower in pure performance (I mean just decoding - not displaying) EDIT: you can specify media type on ech's property page or use null-in-place filter for that purpose Last edited by Sergey A. Sablin; 26th August 2005 at 13:57. |
|
|
|
|
|
|
#13 | Link | ||
|
Registered User
Join Date: Nov 2001
Posts: 9,770
|
Quote:
Quote:
__________________
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 |
||
|
|
|
|
|
#14 | Link | |
|
Registered User
Join Date: Dec 2004
Location: Tomsk, Russia
Posts: 366
|
Quote:
So now we are working only on our own products. |
|
|
|
|
|
|
#15 | Link | |
|
Registered User
Join Date: Nov 2001
Posts: 9,770
|
Quote:
__________________
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 |
|
|
|
|
|
|
#16 | Link | |
|
Registered User
Join Date: Dec 2004
Location: Tomsk, Russia
Posts: 366
|
Quote:
Elecard is in the process of merging with Mainconcept. So there will be joint products of elecard-mainconcept. |
|
|
|
|
|
|
#17 | Link |
|
Registered User
Join Date: Nov 2001
Posts: 9,770
|
ah ic, mixed things up
__________________
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 |
|
|
|
|
|
#18 | Link |
|
Registered User
Join Date: Nov 2001
Posts: 9,770
|
will/did elecard also write an own avc decoder seperately from moonlight?
__________________
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 |
|
|
|
|
|
#19 | Link | ||
|
Registered User
Join Date: Dec 2004
Location: Tomsk, Russia
Posts: 366
|
Quote:
Quote:
|
||
|
|
|
|
|
#20 | Link |
|
Registered User
Join Date: Nov 2001
Posts: 9,770
|
ah i understand, well keep things coming
__________________
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 | |
|
|