View Full Version : H264 decoding performance
Lele-brz
11th January 2008, 18:45
Hi all,
which is according to you the best H264 decoding library.
I read about CoreAVC what are the advantages rather than using FFMpeg or QuickTime (as a libraries) ?
Are the differences in performance noticed only on high res videos?
Thanks in advance
bye
DJ Bobo
11th January 2008, 20:45
Basically, you don't wanna mess with QuickTime at all, since it's slow as hell.
The average user will most probably use ffdshow.
CoreAVC is recommended only if you're having a hard time decoding using ffdshow and you meet the minimum requirements (http://www.coreavc.com/index.php?option=com_content&task=view&id=28&Itemid=1).
Lele-brz
11th January 2008, 23:45
thanks for that,
I was thinking that maybe some player (or decoding library) can take advantage of the video card hardware to improve decoding performance.
For example I think VLC is better than ffplay considering performance.
DJ Bobo
12th January 2008, 12:32
For example I think VLC is better than ffplay considering performance.
I don't know about that.
I guess you'll have to compare them and see for yourself (As far as I'm concerned, I don't like players with embedded decoders...).
But one thing is sure: as long as you're happy with the free decoders, you don't have to worry about CoreAVC.
Lele-brz
17th January 2008, 09:11
ok, thanks again.
I just read somewhere that QuickTime supports GPU decoding, is it the only one?
audyovydeo
17th January 2008, 10:53
ok, thanks again.
I just read somewhere that QuickTime supports GPU decoding, is it the only one?
As far as H.264 is concerned, QuickTime only supports Baseline and Main profiles. Don't even try playing back a High Profile encoding (any res) with QT.
This is true as of version 7.4, released yesterday.
I use VLC, CoreAVC 1.5 and MPC Home Theater Edition, none of which uses GPU acceleration.
The one using consistently less CPU is VLC, find MPC has better video quality. CoreAVC is fine, but using it through WMP defeats the purpose as I get higher CPU usage than the other two.
I tried a free test version of Cyberlink PowerDVD 7 (w/oldish version of the H264 decoder). It does give GPU acceleration.
However, using the same codec from MPC does not.
so, no simple answer really. Just dont use quicktime.
I'm very disappointed as a long-time QT fan, but that's how it is.
cheers
audyovydeo
Sharktooth
17th January 2008, 14:18
QT doesnt even support all Main Profile specs... but only a part...
LoRd_MuldeR
17th January 2008, 14:56
QT doesnt even support all Main Profile specs... but only a part...
QT doesn't even play the HD Trailers Apple offers on their own website :rolleyes:
No more to say...
BTW: ffdshow, VLC and MPlayer all use the very same H.264 decoder - the one from ffmpge/libavcodec ;)
kothrush
20th January 2008, 22:20
QT doesn't even play the HD Trailers Apple offers on their own website :rolleyes:
No more to say...
FUD.
While I agree that QT don't support all High or Main profile features, QT plays everything on Apple's site. I would doubt Apple will put anything on their website which can't be played by QT.
Post a link of HD trailer from Apple's website which is not working for you. Everything works here fine.
kothrush
20th January 2008, 22:28
QT doesnt even support all Main Profile specs... but only a part...
I have been using QT x264 presets defined in handbrake. http://trac.handbrake.fr/wiki/BuiltInPresets#quicktime
This works out pretty fine for playing H264 in QT (and of course VLC too). Seems some of the settings are above main profile, not sure though.
Preset: ./HandBrakeCLI -i DVD -o ~/Movies/movie.mp4 -e x264 -b 2000 -B 160 -R 48 -E faac -f mp4 -x ref=3:mixed-refs:bframes=3:bime:weightb:b-rdo:direct=auto:me=umh:subme=5:analyse=all:8x8dct:trellis=1:no-fast-pskip -m -p -2 -T
Sharktooth
21st January 2008, 03:36
uhm... i doubt it works.. since 8x8dct is HIGH profile... QT doesnt support HIGH profile, and no more than 1 (or 2 maybe?) B-Frame(s), plus other limitations i couldnt remember.
that's it, unless they recently updated it to support all that stuff.
audyovydeo
21st January 2008, 09:54
Do it the other way round : download an apple trailer -720p or 1080p) and use avinaptic to check the h264 metadata.
You'll have the settings that Apple assumes to be playable by QuickTime on any/all platforms.
essentially Baseline settings.
cheers
audyovydeo
RBF
21st January 2008, 10:59
uhm... i doubt it works.. since 8x8dct is HIGH profile... QT doesnt support HIGH profile, and no more than 1 (or 2 maybe?) B-Frame(s), plus other limitations i couldnt remember.
that's it, unless they recently updated it to support all that stuff.
QT supports HIGH profile from version 7.2.
Also supports H264-interlace decoding.
audyovydeo
21st January 2008, 11:55
QT supports HIGH profile from version 7.2.
Also supports H264-interlace decoding.
Evidence, please.
QT 7.3.1 has trouble playing back Main profile of the simplest clip.
Yes, I said Main, not High.
Yes, on a Core2Duo.
try yourself :
http://mapage.noos.fr/manamba/x264/x_base_crf24_video.mp4
http://mapage.noos.fr/manamba/x264/x_main_crf24_video.mp4
http://mapage.noos.fr/manamba/x264/x_high_crf24_video.mp4
cheers
audyovydeo
Ritsuka
21st January 2008, 12:35
I had no problem playing back these three mp4.
QuickTime 7.4 and Mac OS X.
p.s.: no, I don't have perian or avc1decoder installed. QuickTime is using his own h.264 decoder.
audyovydeo
21st January 2008, 12:42
!!!
Paraphrasing your post, you are saying (as Mac users always do) that I should dump my windoze machine and buy a Mac ;-)
Jokes apart, it's true I always used QT for Win. I have yet to get it to play smoothly any high profile stuff, upto and including v 7.4.
Glad it works fine at least on the Mac.
cheers
audyovydeo
Sharktooth
21st January 2008, 15:26
ah! yep. the OSX version works perfectly but the Win version is a POC.
since the thread starter has a PC with windows (coz he mentioned coreavc (http://www.coreavc.com/index.php?option=com_content&task=view&id=28&Itemid=1)), the advice is still correct. stay away from QT.
kothrush
21st January 2008, 19:45
ah! yep. the OSX version works perfectly but the Win version is a POC.
since the thread starter has a PC with windows (coz he mentioned coreavc (http://www.coreavc.com/index.php?option=com_content&task=view&id=28&Itemid=1)), the advice is still correct. stay away from QT.
I think that clears up the confusion here. You are right, the talk was about QT on windows, while I am (and few others as mentioned above) using OS X.
As I mentioned earlier, on OS X, using 8x8 and other high profile parameters for x264 encoding work perfectly fine (QT 7.4 OS X). The high profile clips posted by "audyovydeo" plays fine too, so ALL the trailers from apple's site.
So, it seems high profile is still not supported on QT 7.4 for windows.
LoRd_MuldeR
22nd January 2008, 00:05
While I agree that QT don't support all High or Main profile features, QT plays everything on Apple's site.
How do you define "play" ???
If you define "play" as "push CPU load to 100%, render one frame every 10 seconds and make the whole system freeze", then yes, QT does play the HD trailers from Apple's site...
:rolleyes:
Sharktooth
22nd January 2008, 14:45
QT on OSX is definatly more optimized and pretty fast. The Windows version is the opposite.
LoRd_MuldeR
22nd January 2008, 15:42
QT on OSX is definatly more optimized and pretty fast. The Windows version is the opposite.
I was referring to the Windows version, of course...
qyqgpower
23rd January 2008, 18:59
when I tried to play some HD trailers, such as bbc-japan_1080p.mov from apple in QT(windows) yesterday, I didn't notice any lags. play the same file in MPC using QT routine (System Default) giving exactly same result: fluent, but bad deblocking in my opinion.
vBulletin® v3.8.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.