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!).
So when is iTunes going to support ogg, flac, and shn thanks to or without the use of this of this SDK?
I started using it last month over Winamp and kinda miss those capabilities... and where do you let it allow songs to flow into one another without pause? Is that option in the program?
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.
Hmmm.... while you are correct, I believe that Apple knows that real developers will understand exactly how to use this SDK.
They also know that this news will get published internationally and be a major PR move for them... so, they use a dumbed down version that more laymen and would-be technology editors and reviewers can understand so as to get the most bang for their PR buck.
A fool throws a stone into a well and a thousand sages can not remove it.
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!
Realnetworks wish has come true? This SDK is good for streaming too?
Real was speaking about moving to Dolby formats from Sony Atrac3 (I bet Sony itself too).
In fact, even I like the idea of pure opensource, license free codec, I stay away from Ogg for "psychological" reasons.
I got real, real tired of Ogg showing up on every single Real,Quicktime story and people being fanatical evangelists for Ogg format. I bet the authors doesn't like it too.
Also with a little plugin on OSX, I can make iTunes use Ogg instead of AAC on my ripped cds... Well, I prefer AAC myself. Sounds more natural, especially on bass part.
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
You've linked a listening test. Its extremely debatable whether frequency based tests are better than listening tests. Apples and oranges.
For one thing the frequency tests show quite well the relative rolloff at the end of the audible spectrum which is a very key factor in the sound sounding crisp. (128 to me is easy to spot)
Furthermore the variety in the quality of the listeners ability to discern detail in audio will completely skewer the results - many people cannot even tell between 128 and CD let alone discern between relative codecs.
You can get away with packaging everything up into one nice executable for college projects and applications of limited scope (perhaps apps to serve html from servers). Client applications need to reuse code, dynamically link libraries to save on code size (page faults will kill you way more than loose loops), and interoperate with binaries made by different people (it helps if they're allowed to use languages to suit their needs). COM is a very nice way to accomplish all that.
.cpp file, .lib or even a recompile. It's the benefit of abstraction with a .h file, with none of the pain.
Realize that COM is, for programmers, a means to define a strict interface to an object. People can re-implement that object, improve it, fix bugs and swap it out with the existing one without having to send you a new
Now I can create an icon for the taskbar that will make it easy to control iTunes. This is how their icon should work now, but doesn't:
Single-click: toggle play/pause (update icon when paused).
Double-click: next song in playlist.
Right-click: context sensitive menu (same as now).
Hover: Display tooltip with album artwork and other information, including info on next track in list.
Obviously these should be user-configurable actions, but those defaults would be nice.
Then if they'd let me hide the program in the taskbar when minimized, I'd be all set.
Ironically, the word ironically is often used incorrectly.
I cooked up a script that converts all iTunes playlists to M3U playlists to import into Winamp in the case of a migration attempt.
Hopefully this doesn't cause too much of a karma burn seeing that iTunes appears to be the preferred player around here.
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.