Sunday, January 17, 2010

ffdshow

As you may know, since early 2002, the best way to ensure good video play back on a Windows PC was to install the ffdshow codec. FFDshow by Milan Cutka is a Directshow wrapper for a few codecs including libavcodec and ffmpeg, as well as many filters including cropping, resize, subtitles and more. This made ffdshow both a quick and easy way to ensure playback of almost any audio/video file in a Directshow based player...it also makes for amazing control for power users.

Anyways, ffdshow was abandoned by Milan in late 2004 and has since been picked up by another team as the ffdshow-tryouts fork. This fork has been continuing the example of Milan for having both massively simple to use as well as many expert features, woo!...

Recently ffdshow-tryouts have added DXVA support for H264 and VC-1, so now ffdshow-tryouts can use the video card (GPU) to offload processing of some content. Unfortunately the DXVA implementation is not as mature as Media Player Classic - Home Cinema's Video Decoder (MPC-HC). I am sure that the team will work to fix all the issues that I am seeing in build 3200. albain and Tal are great people.

Please do checkout ffdshow-tryouts (http://www.ffdshow.info/) and MPC-HC + Standalone filters (http://mpc-hc.sourceforge.net/).

Here is the issue I am seeing. With some H264 videos there is a jitter, like two frames get out of order. Maybe this is an issue with the ordering from the splitter and/or ffdshow is not picking up the ordering. I would use the MPCVidDec codec and enable to DXVA codes there and disable H264/VC-1 decoding in ffdshow for now.

I hope this helps open some eyes to a wonderful opensource project that is keeping up amazing quality video and audio decoding for Windows PCs.

No comments: