As far as I know, there's no support in WPF to do this directly. Using
the unmanaged API, you should be able to retrieve that information using
the IWICImagingFactory.CreateComponentEnumerator() method. I haven't
tried it myself, but it looks like what you want:
http://msdn.microsoft.com/en-us/library/ms736011(VS.85).aspx
I also came across this library, that seems to be a sort of .NET add-on
in which you might be able to find some classes supporting your usage:
http://code.msdn.microsoft.com/WindowsAPICodePack
Again, I haven't looked closely at it, but it seems like it might suit
your needs.
Beyond that, I'd say that to some extent one's code shouldn't really
need to know what codecs are installed. The real question is "can I open
this file?", and the best way to determine that is to try. It could fail
for a variety of reasons, including lack of an appropriate codec, and so
having your own code try to enumerate all the possible reasons it could
fail and anticipate those reasons before trying is just a waste of time
and effort on your part.