locked
Audio types supported by Windows Media Player RRS feed

  • Question

  • I'm embedding the player in my app & need to know what audio types are supported on the device.  For example, I have a Treo 700wx that only plays WMA files, while my BlackJack plays WMA, AAC, and 3GP files.

    Is there a programmatic way (e.g., API, or registry lookup) to determine what types are supported (before feeding the player something it may choke on)?

    Thanks in advance
    Thursday, September 13, 2007 11:28 PM

Answers

  • Looking at the WMP SDK help docs, it appears that the preferred method of looking up supported content types is to do something like Peter suggests -- check for the extension in the list under \HKLM\Software\Microsoft\Multimedia\WMPlayer\Extensions.  If found, I may want to look under \HKLM\Software\Microsoft\Multimedia\WMPlayer\MLS\Extensions to see if the extension is classified as audio.

    Note that the desktop lets me get a list of MIME types under the WMPlayer key, but that doesn't appear to be available on the mobile world.
    Friday, September 14, 2007 5:49 PM

All replies

  •  

    Hi tchill,

     

    you'll find a list of supported codecs here: http://support.microsoft.com/kb/316992/EN-US/

     

    The list is based for the Desktop Windows Media Player, but I think it shall be easy for you to figure out by yourself, which codecs are desktop specific.

     

    The other way around is, that for exampe a 3GP File can only be executed, if a codec for this format is additionally installed by the manufacturer. I actually don't know, if you can read the supported codecs somewhere from the system (f.e. Registry).

     

    Cheers, Peter

    Friday, September 14, 2007 8:41 AM
  • Hi again,

     

    took a look at the registry of the mobile device. I don't know, if the following is the best solution, but it would be one.

    You could check the entries in "HKEY_CLASSES_ROOT" for each entry beginning with a "."n (f.e. .aac or .wma). These entries have probably a key called "Content Type", which you can check. One entry could be for example "audio/aac". Therefore checking, if the value contains "audio/" as a prefix (disregarding upper or lower characters), shall solve your problem.

     

    Probably someone has a better idea?

     

    Cheers, Peter

    Friday, September 14, 2007 8:52 AM
  • Okay, sorry for spamming, but probably another alternative solution:

     

     

    You can have a look at the registry as well. Under "[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MediaPlayer\MLS\Extensions]" you'll find key value pairs. If the value contains "audio" that shall get you there, where you want to go.

     

    Probably not the best solution, but shall be faster as the first described. But still probably someone has a better solution...

     

    Cheers, Peter

    Friday, September 14, 2007 8:56 AM
  • Thanks Peter, that's about all I had been able to determine from browsing the registry as well.  I was hoping for something a bit more authoritative -- specs, API, even an MSDN article/blog, etc.

    The codecs vary from one device/manufacturer to another & sometimes model versions, so I can't make assumptions.

    In the J2ME/MIDP world, the media manager has a getSupportedContentTypes() method -- seems like there should be something similar in a more mature player API like WMP's...

    Any other suggestions?
    Friday, September 14, 2007 3:50 PM
  • Looking at the WMP SDK help docs, it appears that the preferred method of looking up supported content types is to do something like Peter suggests -- check for the extension in the list under \HKLM\Software\Microsoft\Multimedia\WMPlayer\Extensions.  If found, I may want to look under \HKLM\Software\Microsoft\Multimedia\WMPlayer\MLS\Extensions to see if the extension is classified as audio.

    Note that the desktop lets me get a list of MIME types under the WMPlayer key, but that doesn't appear to be available on the mobile world.
    Friday, September 14, 2007 5:49 PM