Apple Releases iTunes SDK for Windows
amichalo writes "Apple's recent release of an iTunes SDK for Windows provides the ability for third party programs, such as WinAmp and Windows Media Player, to support the AAC file format. Ars Technica has additional commentary. The SDK uses the COM interface and supports iTunes 4.5 only."
Not that I have any myself, but there are a ton of radio stations that broadcast in WMA that I can't import into iTunes (you can add new stations into iTunes by copying any station into a playlist, and then editing the URL of the copy in the playlist. The new station only shows up in a playlist, instead of the Radio area, but good enough!).
I think this is just another sign that Apple actually benefits from cross-platform applications. The roll-out of the IPod, then ITunes, it's all ultimately to make Apple products easier to use on Windows, since unfortunately it is running on a large share of home users desktops.
Adian
First of all, there is already an iTMS input plugin for Winamp. It has been around for some time. It uses the existing QuickTime SDK to play the music.
This new SDK has nothing to do with that. Now, I haven't exactly had much time to review it, so I could be wrong, but what this new SDK looks like is scripting support for manipulating the iTunes interface. For instance, you can write scripts which build playlists, tag files, etc. Basically, this allows you to automate tasks that you might otherwise perform through the iTunes UI.
On Mac OSX, such functionality has been available via AppleScript for some time. In fact, many OSX programs expose functionality like this via AppleScript -- a practice I wish were more widespread on other systems.
Of course, Windows doesn't have AppleScript, but it does have COM, which I guess can be used in vaguely similar ways. So, they have exposed all this functionality via COM instead. The download includes some example scripts written in Javascript for creating playlists, removing dead files, etc. Of course, since it's COM, you can use pretty much any language you want to access it (including C/C++, though I wouldn't recommend it for this sort of thing).
Kudos to Apple for doing this. They could have been snotty and kept the scripting abilities exclusive to OSX, but they instead chose to support both platforms equally.
But, no, I don't think Winamp or WMP have anything to gain from this. Sorry.
Has anyone downloaded the SDK?
.C file, and a 406KB .H file.
:-) Is anything in iTunes not scriptable?
It consists of just two files, plus documentation and samples.
The two files are a 4KB
Yes, 406KB. Good lord, that's one big header!
Well, iTunes for Windows actually uses Quicktime for playback.
Theres this nice project over at SourceForge http://sourceforge.net/projects/qtcomponents/ with Ogg Vorbis components for Quicktime (and thus iTunes). It's still beta, and there is a pause when iTunes switch between formats, but it plays Ogg Vorbis.
The crossfading can be found under Edit->Prefrerences->Effects.
There is an ogg control that works double plus good for playing Ogg vorbis files under iTunes (at least on the mac and with 4.5).
Clicky.
I, personally, wish to god somebody would write some sort of plugin that would sort mp3's in some sane way. iTunes is absolutely horrible at handling mp3's and their various tags (or lack thereof) something winamp perfected years ago.
Or if you're curious about COM on Mac OS X:
Component Object Model (COM) Development on Mac OS X
Win a signed Stephen Carpenter ESP Guitar from the Deftones: http://def-tag.com/?r=0008781
A lot of Windows users have done pretty good without the SDK so far, in terms of iPod connectivity. If you need any proof, just look at ml_ipod, the open source iPod plug-in for Winamp. It integrates itself seamlessly into Winamp's media library and even has a couple hidden features you might not see with iTunes or even in other 3rd party applications like Ephpod. I know more than a few people who've already switched to Winamp for better iPod connectivity, including myself.
.h file is 10k lines. iTunes' bloat is infectious."
Strangely enough, I've actually heard developers say they won't even touch the SDK: "The
Winamp 5.x already supports AAC out of the "box"; it will rip to AAC quite transparently.
Check it out... www.winamp.com; its worth it for the shoutcast capabilities alone.
Though the header files, etc, are nice if you're a VC++ whiz, any two-bit Visual Basic 6 hacker like myself has had access to the iTunes COM objects for quite some time.
Not only do you not need the SDK, aside from the sample code (strangely written in jscript of all things), the SDK is nearly worthless for VB6 hackers. All you had to do was open a new project in the VB6 IDE, select Project==References from the menus, and select iTunes 1.0 Type Library (the file is iTunes.exe no less).
Voila. Instant COM compliant objects waiting for you to hack0rz. Hit F2 and search for iTunesLib and the documentation's already there (no SDK required) as well.
If this SDK makes you aware you can hack iTunes, then great. But don't wait to download it to start hacking. Install iTunes, open VB6's IDE, and get a move on!
To stick in a horrible Wizard of Oz (but thankfully not a Zardoz reference, I suppose), you've been wearing the ruby red slippers (or whatever) the whole time. "There's no place like ~. There's no place like ~."
It's all 0s and 1s. Or it's not.
OK, Bart, to the blackboard:
Apple is a hardware company, not a software company.
Apple is a hardware company, not a software company.
Apple is a hardware company, not a software company.
Apple is a hardware company, not a software company.
Apple is a hardware company, not a software company.
Apple is a hardware company, not a software company.
Apple is a hardware company,
As much as Apple gains from others' cross-platform applications, they don't generally gain much from making theirs cross-platform. The goal here is to tackle reasons to not use iTunes - you will probably still require an iPod to play this music on a personal player easily. (Other than using the CD-to-whatever route, of course.)
R: That voice. Where have I heard that voice before? B: In about 365 other episodes. But I don't know who it is either.
If you dl it and try it out, it's just a scripting SDK for the iTunes interface (I think someone else pointed this out as well). I downloaded it...fired up Visual Studio and build a quick Windows app with a button to create a new playlist.
Click the button and watch as iTunes opens up. In fact, aside from instantiation of the iTunes object, there isn't a single function that I've been able to perform without iTunes opening up.
Not saying it isn't pretty cool...but the COM interface isn't going to let you build tons of plugins, etc. without iTunes running on your desktop.
Karma: Non-existant. Due mostly to the fact that you smell funny and nobody likes you.
I wonder if this will allow the Slim Devices' Slim Server to have the necessary hooks to stream DRMed iTunes songs? Their FAQ states that Apple has not provided hooks to stream protected files. Slim Server was developed for their Sqeezebox, but the server software is open source and will stream just about anything you throw at it. Good stuff.
?SYNTAX ERROR IN SIG
READY.