iTunesCommander

After “whippin’ the llama’s ass” for so long with WinAmp, I’ve finally ventured into the realm of iTunes. I’ve been using WinAmp since version 3 and have always enjoyed the fact that it’s got a small footprint and, generally, just works. Granted, the shuffle seems to be all but random sometimes but I just loved the little bugger.

That being said, I decided it was time to test out iTunes as I have had several friends recommend it. After a quick post-install run thru (thanks Randy), I was up and running. It even imported my old WinAmp playlist. The interface is…well…Apple so it’s pretty nice chrome. The smart playlists take a little getting used to but seem to work fairly well.

My biggest loss was that I used CLEveR to control WinAmp from a command line (mostly to pause when I pick up my phone here at work) so I decided to make my own command line app. After about 15 minutes of looking at the iTunes SDK and another hour of code, I give you…iTunesCommander. It lacks all but the most rudimentary functions but it works for me. I just figured I’d throw it out here for anyone who might be looking for something similar. If anyone needs something added, please let me know and I’ll get it coded.

Description

A command line console for controlling iTunes.

Current version/Download

This project is being hosted here on Google Code.

2 Responses to iTunesCommander

  1. […] iTunesCommander moves… May 15th, 2007 I’ve moved my little project iTunesCommander to Google Code. CI isn’t set up yet but since it’s such a small project, I’m in […]

  2. Near Privman says:

    This is really useful.
    Please add next/previous track control. I’d do it myself but I don’t have an IDE set up. This should do it:

    namespace HabilisDesign.iTunesCommander
    {
    public class Controller : IDisposable
    {

    #region Methods

    ///
    /// Move this instance 1 track forward.
    ///
    public void Next()
    {
    if ( State == ITPlayerState.ITPlayerStatePlaying )
    {
    m_App.NextTrack();
    }
    }

    ///
    /// Move this instance 1 track backward.
    ///
    public void Previous()
    {
    if ( State == ITPlayerState.ITPlayerStatePlaying )
    {
    m_App.PreviousTrack();
    }
    }
    }
    }

    And for the Program’s switch:
    case “next”:
    {
    controller.Next();
    return;
    }
    case “prev”:
    {
    controller.Previous();
    return;
    }

    Thank you very much…
    Near.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: