0

How can we detect, within a program, whether DivX and MKV codecs are already installed or not?

For my apps, I need to check user OS (Windows) for some requirements. Are there any specific registry keys that I can check? Or should I check for file association of these types? What's the best solution?

Oak Bytes
  • 4,649
  • 4
  • 36
  • 53
silvercover
  • 161
  • 1
  • 3
  • 11
  • 1
    MKV is not a codec. It is container for video, audio and subtitles streams. You should be more specific what you are trying to achieve. Are you want to check if user has any application that can play avi, mkv. or you want to check codecs (xvid, divx, H.264, theora) availability. – Zuljin May 10 '11 at 17:44
  • I need to check codecs availability. – silvercover May 10 '11 at 18:18
  • 1
    Like Zuljin said, MKV is not a codec. It's not even a video format. It's a video container that can contain a lot of different things. – Alan May 10 '11 at 18:26
  • 1
    Check those 2 links http://tanvon.wordpress.com/2008/08/30/enumerating-directshow-filters/ http://msdn.microsoft.com/en-us/library/dd375617(v=vs.85).aspx This can help you in displaying all available DirectShow Filters that are used by Windows Media Player to display videos – Zuljin May 10 '11 at 18:58

1 Answers1

0

Include a dummy video in your resources that is similar to the video content you want to play, then try to load it off-screen; if it works, you know that the codecs are correctly installed for the format you care about (i.e. both the container and video/audio codecs are there, and they are working)

Ana Betts
  • 73,868
  • 16
  • 141
  • 209