Programming iTunes vs WMP in .NET
I find it creepy that it's a million times easier to write managed code against iTunes than Windows Media Player. That just seems wrong. A few weeks ago when I was playing with the iRiver H320 I wanted to sync meta data from WMP to the iRiver so that I could browse by artist and album. Well the problem is that there are all these scary interfaces (like IWMHeaderInfo, IWMHeaderInfo2 and IWMHeaderInfo3) and to figure out how to extract meta data for DRM'ed files took me a few hours (just to find the right interface). Then it felt like screen scraping to actually get the tags (Artist, Album etc) from the files themselves.
It's great that Apple is exposing a decent COM Interop library from iTunes that in turn exposes a nice managed interface in .NET, but geez... I should not have to wait for Longhorn to do the same thing on my PC.
BTW - if you have an iRiver H320 and want to get the meta data from WMP, the version of TDT that I built can be found here.
Comments
- Anonymous
December 03, 2004
I could not agree with you more. - Anonymous
December 03, 2004
I smell a switcher! hehehe :p - Anonymous
December 03, 2004
Why Oh Why would you use an iRiver?
If you haven't tried the iPod interface yet go quickly to an Apple outlet.
then
eBay may recover a few bucks on the iRiver before it's too late to get rid of the thing.
Enjoy your new iPod.
CG - Anonymous
December 03, 2004
I don't use the iRiver. I returned it weeks ago. - Anonymous
December 03, 2004
<I> I smell a switcher! hehehe :p</I>
Dood, Omar's an ex-MacBU employee. I think he knows where to go if he "switches", or where to buy an iPod. ;) - Anonymous
December 05, 2004
Apple has several years of practice exposing application API through AppleScript. As such, they probably thought that they should keep the same level of functionality and accessibility in the windows ITunes port.
This is why it is easier. But, that doesn't explain why Microsoft has done several years of OLE, Visual Basic for Applications and now the .NET kits for Word but has failed to extend that to WMP. :(