A Guide to Encoded HD Video Playback

yes.. the guide is outdated. Things change from month to month.. but FFDshow still blows. About all it's good for is audio decoding now. There are far better video filter choices, especially with the various hardware accelerated options we have.

Also, CoreAVC = win. It's better than DXVA now. With CUDA support it gives hardware acceleration for more profiles than DXVA supports.. plus it works flawlessly in VMC.

Personally I like to use MPCvideoDec.ax for DXVA of my videos, merely because I dont want to pay for CoreAVC.
Yes FFDshow sucks for Video

Hmm... are you guys talking about the new FFDshow tryouts versions that I am talking about and not the old abandoned FFDshow from 2002/2004?

Good: FFDshow New (tryouts) - Downloads

Good: ffdshow_rev2737_20090302_clsid_sse_icl10.exe

Bad: FFDshow - Downloads

Bad: ffdshow-20041012

I've found the new FFDshow to be the best working and most complete codec that handles all the video and audio streams that I can throw at it. It is the only solution that works in displaying full screen video to a secondary display, all the other commercial products PowerDVD, Nero, WinDVD, and anything DXVA accelerated fail. I can apply all the filters I need for video and audio processing from one GUI and I can customize and control every part of the codec. I'm using this to play back high bitrate 1080p AVC or VC-1 encoded content to a secondary display DVI port that is connected over a 60-foot HDMI cable to a Plasma in my living room while sending digital audio along the same cable through S/PDIF pass-through or real-time AC3 encoding and it will up-mix 2-channel audio into 5.1-channels with proper frequency separation. This is all done on an older AMD Opteron 175 2.2 GHz dual-core processor. How is this codec bad again?
 
Meh, I still like FFDShow but I am also playing around with CoreAVC again now that it's actually, you know, good enough. :)
 
MPC-HC.. thats all ya need.. though FFDshow has better colors then coreavc.. coreavc isnt a resource hog like FFDshow is.. each program is its plus's and minus's.. just depends on what your really looking for.. but the best program thats between coreavc and FFDshow is MPC-HC..
 
ugh.. this is useless...

Don't give up! I honestly do not know why FFDshow is inferior to CoreAVC?

I'm trying to sift through tons of posts on Doom9.net CoreAVC Thread. I heard you about the CUDA acceleration being offered now and that's an interesting feature but if you have a CUDA compliant video card you're likely to have a beefy CPU to go with it also.
 
Don't give up! I honestly do not know why FFDshow is inferior to CoreAVC?

I'm trying to sift through tons of posts on Doom9.net CoreAVC Thread. I heard you about the CUDA acceleration being offered now and that's an interesting feature but if you have a CUDA compliant video card you're likely to have a beefy CPU to go with it also.

Jak

The point is you dont need a Beefy CPU.
I have a AMD 4050e in my box and when I play 1080p I dont see CPU utilization over 10%.
Why have high powered/ expensive stuff when there is absolutely no need for it.
My box draws avg of 27W from the wall.
Theres more to think about other than well this works too.
 
Jak

The point is you dont need a Beefy CPU.
I have a AMD 4050e in my box and when I play 1080p I dont see CPU utilization over 10%.
Why have high powered/ expensive stuff when there is absolutely no need for it.
My box draws avg of 27W from the wall.
Theres more to think about other than well this works too.

I feel foolish now because I realized earlier today that the whole point or CoreAVC is processing efficiency and most HTPC systems will be built around low cost and thus lower performance processors requiring an optimized decoder to playback video without frame dropping. Duh on me!

I just didn't realize this obvious fact because I'm so absorbed in building a powerhouse HTPC / Gaming / Desktop system based on Intel i7 architecture. I have a whole thread running with request for feedback in the General Hardware forum. I'd link to it but I'm posting from my phone.

Sorry for aggrevating anyone with the silly questions.
 
I feel foolish now because I realized earlier today that the whole point or CoreAVC is processing efficiency and most HTPC systems will be built around low cost and thus lower performance processors requiring an optimized decoder to playback video without frame dropping. Duh on me!

I just didn't realize this obvious fact because I'm so absorbed in building a powerhouse HTPC / Gaming / Desktop system based on Intel i7 architecture. <snip> I'd link to it but I'm posting from my phone.

Ahh, the irony... Is your phone a powerhouse system too, or does it use optimized web browsing? :D
 
I feel foolish now because I realized earlier today that the whole point or CoreAVC is processing efficiency and most HTPC systems will be built around low cost and thus lower performance processors requiring an optimized decoder to playback video without frame dropping. Duh on me!

Yeah those optimized decoders and such don't work well in 64bit OSes. Hence why a 64bit OS is generally not recommended for a HTPC. At least for the relatively low power HTPCs.
 
Yeah those optimized decoders and such don't work well in 64bit OSes. Hence why a 64bit OS is generally not recommended for a HTPC. At least for the relatively low power HTPCs.

Well, considering that nearly 90% of content played on an HTPC is going to have hardware acceleration support it really defeats the purpose of "needing" a powerhouse HTPC. My cheap but well designed HTPC can do 95% of anything a powerhouse HTPC can do (the differences is gaming and even then I can drop in a decent enough GPU to do that without needing to use anything close to a Quad muchless an i7).
 
MPC-HC.. thats all ya need.. though FFDshow has better colors then coreavc.. coreavc isnt a resource hog like FFDshow is.. each program is its plus's and minus's.. just depends on what your really looking for.. but the best program thats between coreavc and FFDshow is MPC-HC..
If you have your monitor/tv calibrated properly, color is a non issue.. plus with hardware decoding and all, you get superior performance and the ability to control your color/contrast/gamma/etc processing without any post processing cpu usage. It's all done on the graphics chip through your graphics driver under the video settings menu of the ati/nvidia control panel.
 
I have updated the guide to include the latest hardware acceleration support, including MPC-HC's built in decoder, and Nvidia CUDA support under the new CoreAVC. Enjoy.

Oh, and pictures will be back up in a few.. my bandwidth for Photobucket ran out. :rolleyes: It should be back in a few hours.
 
Does anyone know of any way to Compress HD-DVDs that are already ripped to the hard drive? To just eliminate extas, menus etc.
 
Well I had some time so I decided to take the advice in this thread and try out CoreAVC along with following the instructions to enable DXVA for MPC-HC H.264/AVC filter. I did some informal testing to see how things are and I'm surprised to see the results, MPC-HC DXVA hardware accelerated decoding beats the pants off CoreAVC with CUDA On, and they both burry FFDshow's FFmpeg-MT and libavcodec software decoding. I posted the results of my testing in the thread below.

Doom9.org Forum - Performance Comparison Results - H.264/AVC Codecs: FFDshow, CoreAVC Pro, MPC-HC

Conclusion: I found that Media Player Classic Home Cinema - H.264/AVC (DXVA) decoder filter uses only ~4% CPU to decode a complex 1080p movie scene and CoreAVC 1.9.5 Pro with CUDA Enabled at uses 3x more at ~15% CPU, and FFDshow software libraries FFmpeg-MT using 25x more at 105% and libavcodec using 33x more at 128%.
 
yes.. but try it with a L5.1 video up to 12 ref frames.. the DXVA will choke with ATI and it's unplayable. That's where CUDA, and nvidia in general pulls through.
 
yes.. but try it with a L5.1 video up to 12 ref frames.. the DXVA will choke with ATI and it's unplayable. That's where CUDA, and nvidia in general pulls through.

I absolutely believe you. This was just a quick test to get a feel for the differences and using a single source with whatever encoding settings were used is not really a good test sample. It did give me a good view of things though.

If I get a chance tomorrow I might program up a little test script and run it through a bunch of 1080p movies that I have to determine how these decoders perform across a bunch of sources of different types of encodes.

Updated: I just ran MediaInfo on my whole collection of ~187 of HD movies and here are some interesting numbers that I got.

I'm going to re-run the test with those two movies that I have at [email protected] with 13 and 16 ReFrames and see how things change.

Code:
[B][U]Profiles[/U][/B]

[I]Profiles	Total[/I]
[email protected]	16
[email protected]	10
[email protected]	64
[email protected]	6
[email protected]	87
[email protected]	1
[email protected]	1
[email protected]	2

[B]Grand Total	187[/B]


[B][U][email protected] Reference Frames[/U][/B]

[I]ReFr	Count[/I]
2	
3	2
4	2
5	10
6	3
7	
8	52
9	8
10	2
11	6
12	
13	1
16	1

[B]Grand Total	87[/B]
 
I think DXVA and CUDA only handle up to 12 reference frames.

I messed with that 16 ref frame movie today and you're right DXVA and CUDA didn't work so it fell back on software decoding. When I played that 13 ref frame movie, DXVA didn't work as expected by CUDA did, so CUDA might have a limit of ~14 ref frames I'm guessing? Or there are other encoding parameters that are stopping accelerated decoding that I'm not aware of, B-Pyramid, 4x4, or something else?

Will test more after the weekend.
 
According to Core, CUDA has a 16 frame limitation due to its reliance on Direct 3D, so if you need more than that then you have to rely on software. This is a big reason why some people are choosing to skip writing for it, no real advantage over DVXA as of yet.
 
Wow I didn't know there was so much into this. With all this said, am I not getting the quality and performance I could be getting by just opening the .mkv file with VLC Player on my old 3200xp rig? I'll be building a Quad core rig in a few weeks.
 
With all this said, am I not getting the quality and performance I could be getting by just opening the .mkv file with VLC Player on my old 3200xp rig?

If the file plays back smoothly, then sure your getting the same as everybody else. But almost all of my 720p encodes will not playback without very noticable frame drops all the way through on a A64 3200+, and 1080p you can forget it.
 
I did this on windows xp 32 bit and worked flawlessly.

I just got windows 7 x64 installed and did it again. Now everyhing runs crappy. The core cuda icon shows up but haali's will not seem to run. i installed haali with core and mastroska splitter too. neither seem to run when i start MPC or windows media player.

The cuda icon will show up and the mp4 file plays but if you skip around the movie it plays slow and sound starts to not line up. If I try to open the file in media player then the cuda icon does not come up, haali does not come up and the wont skip around at all. any help?

Also in windows xp my cpu usage was less than 10 and now its up close to 30 while watching the same exact movie. Another thing to note is that I think the overall quality of the video has gone down. It does not look as good as it did before.
 
Last edited:
CoreAVC with CUDA works fine under Windows 7 64-bit when using MPC. However, it won't work for directshow. The only thing that will work under Windows 7 64-bit with directshow is the MPCvideoDec filter. You'll have to use the Windows 7 directshow changer utility found at Doom9.

Video quality will look the same when using hardware acceleration because it has to use the same standard for decoding across the board.
 
so if i switch to 32 bit vista will everything work like in xp? why is my cpu usage so high now and why does skipping break it? ffdshow?
 
Haali is not x64 compatible
You must download the x64 version of the matroska splitter and manually register it with windows.
If you do that then coreavc's cuda will work for you
I did this on windows xp 32 bit and worked flawlessly.

I just got windows 7 x64 installed and did it again. Now everyhing runs crappy. The core cuda icon shows up but haali's will not seem to run. i installed haali with core and mastroska splitter too. neither seem to run when i start MPC or windows media player.

The cuda icon will show up and the mp4 file plays but if you skip around the movie it plays slow and sound starts to not line up. If I try to open the file in media player then the cuda icon does not come up, haali does not come up and the wont skip around at all. any help?

Also in windows xp my cpu usage was less than 10 and now its up close to 30 while watching the same exact movie. Another thing to note is that I think the overall quality of the video has gone down. It does not look as good as it did before.
 
Yes.. but not if he's attempting to use a directshow player like Media Center.
 
Right
I was under the impression he was wanting to use MPC but tested wmp as well.
If you want harware acceleration in WMP or MC you will have to manually register the x64 mpcvideodec.ax filter like stated above just make sure you get the x64 filters.
You can get them from mpc's sourceforge page
Yes.. but not if he's attempting to use a directshow player like Media Center.
 
I am trying to use MPC 32-bit. i dont have the 64 bit version. shouldnt everything work since everything is 32-bit?
 
You'll want to use the 64 bit version of MPC, and the 64-bit version of Haali.
 
I dropped back to 32-bit vista and all is well. Thanks for the help but I dont really need 64-bit for hd playback and dont care to mess around with win7 codec issues so i went with something easy.
 
No problem. It's all personal preference. But just as a note, Windows 7 is far easier to setup than Vista as far as codecs/directshow goes.. 95% of it is already integrated into the OS with no need to install anything extra. If you're using another player such as MPC, it doesn't matter either way. You'll want Haali installed on either though.
 
An Ion based one will do it, as well as something like the Asus N10 w/ 9300m. Other than that.. not a chance.
 
When playing a HDTV file (avi) the FFmpeg settings say not using DXVA.

I followed the 2nd option since i have a 8800gtx and a E6600.

Any help please:D
 
Back
Top