<!DOCTYPE html>
<!-- ========================================== kroc camen of camen design ============================================= -->
<title>writing · One Flew Over the Songbird’s Nest</title>
<link rel="stylesheet" type="text/css" href="/design/design.css" />
<meta name="viewport" content="width=device-width, maximum-scale=1.0, user-scalable=no" />
<link rel="alternate" type="application/rss+xml" href="/writing/rss" title="Just writing" />
<link rel="canonical" href="/writing/songbird" />
<!-- =================================================================================================================== -->
<header>
	<h1><a href="/" rel="index">
		Camen Design
	</a></h1>
	<nav><ul>
		<li><a href="/">all</a></li>
		<li><a href="/projects">projects</a></li>
		<li><a href="http://forum.camendesign.com">forum</a></li>
	</ul><ul>
		<li><a href="/quote/">quote</a></li>
		<li><a href="/writing/" rel="tag">writing</a></li>
		<li><a href="/blog/">blog</a></li>
		<li><a href="/photo/">photo</a></li>
		<li><a href="/code/">code</a></li>
		<li><a href="/art/">art</a></li>
		<li><a href="/link/">link</a></li>
		<li><a href="/poem/">poem</a></li>
		<li><a href="/audio/">audio</a></li>
	</ul><ul>
		<li><a href="/web-dev/">web-dev</a></li>
		<li><a href="/annoyances/">annoyances</a></li>
		<li><a href="/eve/">eve</a></li>
		<li><a href="/code-is-art/">code-is-art</a></li>
		<li><a href="/inspiration/">inspiration</a></li>
		<li><a href="/windows/">windows</a></li>
		<li><a href="/gift/">gift</a></li>
		<li><a href="/gaming/">gaming</a></li>
		<li><a href="/mac/">mac</a></li>
		<li><a href="/osnews/">osnews</a></li>
		<li><a href="/c64/">c64</a></li>
		<li><a href="/linux/">linux</a></li>
	</ul>
	<a rel="previous" href="/writing/when_its_better">
		older article →
	</a><a rel="next" href="/writing/why_wifi">
		← newer article
	</a></nav>
</header>
<!-- =================================================================================================================== -->
<article><header>
	<!-- date published or updated -->
	<time pubdate datetime="2009-01-25T20:55:00+00:00">
		<sup>8:55<abbr>pm</abbr> • 2009</sup>
		<abbr title="January">Jan</abbr> 25
	</time>
	<!-- categories -->
	<ul>
		<li><a href="/writing/songbird" rel="bookmark tag">writing</a></li>
		<li><a href="/osnews/songbird">osnews</a></li>
	</ul>
	<!-- licence -->
	<small>
		<abbr title="copyright">©</abbr>
		copyright
	</small>
</header>
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<section>
<h1>One Flew Over the Songbird’s Nest</h1>
<aside>
	This article was <a href="http://osnews.com/story/20607/One_Flew_Over_the_Songbird_s_Nest" rel="external">originally published</a> on <a href="http://osnews.com" rel="external">osnews.com</a>
</aside>
<p>
	<strong>Songbird</strong> is a new open-source music player that has this week landed at 1.0.
</p><p>
	<a href="http://getsongbird.com" rel="external">Songbird</a> is described as a <q>web player</q>—a music player
	for this modern, connected era. It blends the web-rendering core of Firefox (Gecko), with the media capabilities of
	<a href="http://en.wikipedia.org/wiki/GStreamer" rel="external">GStreamer</a>: a cross-platform, open-source media
	playback engine.
</p><p>
	With an integrated (and capable) browser, Songbird allows you to wander off to find new sources of music all within
	the app itself. It’s in this area that Songbird can claim many features not readily available in other players:
</p>
<ul>
	<li>Use a web-page or an RSS feed as a playlist, automatically finding audio files within</li>
	<li>’Web search using Firefox’s MyCroft search bar /  management, allowing you to add new search providers
	when visting a site that includes a MyCroft or OpenSearch provider</li>
	<li>Last.fm integration</li>
	<li><q>mashTape</q> pane that finds artist info and related Flickr photos / YouTube videos &amp; Google News</li>
	<li>Add-ins support using the same <abbr>XUL</abbr> backbone as Firefox. (Yes, AdBlock / NoScript are available)</li>
</ul>
<p>
	This article will cover me reviewing the Songbird experience, coming from an iTunes user with an already chunky
	iTunes library of some 6’000 items.
</p>


<h3>Test Machine:</h3>
<ul>
	<li>15″ MacBook Pro (Early 2007)</li>
	<li>2.16 <abbr title="gigahertz">GHz</abbr> Intel Core 2 Duo</li>
	<li>2 <abbr title="gig">GB</abbr> <abbr>RAM</abbr></li>
	<li>Mac OS X 10.5 “Leopard”</li>
</ul>


<h3>Getting Songbird:</h3>
<p>
	Songbird is readily available from <a href="http://getsongbird.com" rel="external">getsongbird.com</a> in these
	flavours:
</p>
<ul>
	<li>Windows XP-SP2 / Vista (11.7 <abbr title="megabyte">MB</abbr>)</li>
	<li>Linux i686 (28.7 <abbr title="megabyte">MB</abbr>)</li>
	<li>Linux ×64 (30 <abbr title="megabyte">MB</abbr>)</li>
	<li>Mac OS X Leopard, Intel Only (28.7 <abbr title="megabyte">MB</abbr>)</li>
</ul>
<a href="http://wiki.songbirdnest.com/Developer/Articles/Builds/Contributed_Builds" rel="external">Community contributed builds</a>
have also been produced for Solaris and <a href="http://www.the-eleven.com/tlegg/index.php?/archives/62-New-Build-of-Songbird-1.0pre-PPC-Mac-OS-X-10.5.html" rel="external">Mac PPC</a><br />
The Mac download expands into a 117 <abbr title="megabyte">MB</abbr> app file (iTunes is 129 <abbr title="megabytes">MB</abbr>)
<img src="/writing/songbird/songbird-dmg.png" alt="Screenshot of Songbird’s ‘Disk Image’ contents" width="640" height="348" />


<h2>First Run</h2>
<p>
	I’m reviewing this app from the standpoint of a regular user already using iTunes, who has decided to download and
	try out Songbird, having heard good word about it—much the same story as users trying out and switching to
	Firefox.
</p><p>
	Whilst this might present a somewhat unfair position of comparing Songbird to iTunes in someway, I feel that doing a
	“clean-room” evaluation of Songbird would not prove much in the real world, as well as it would deny testing one
	important feature of Songbird: its iTunes importing capabilities.
</p><p>
	Migrating from one app to another is always a very fearful experience. You don’t know if the new app is going to
	make a total mess of your old data and leave you with a clean-up operation that will take weeks. Before running
	Songbird for the first time, I made sure my Time Machine backup was up to date meaning that I could do a hassle-free
	roll back should things go wrong. Throughout this review I’ll be keeping my eye on how well Songbird co-exists
	with iTunes.
</p><p>
	Upon starting the app and after a licence agreement and an introduction page, you are presented with the import
	options:
</p>
<img src="/writing/songbird/songbird-firstrun-import.png" alt="screenshot of Songbird import prompt" width="502" height="523" />
<p>
	Thankfully Songbird provides the ability to import an iTunes library, and can handle external changes made by
	iTunes.
</p>
<img src="/writing/songbird/songbird-firstrun-addins.png" alt="Screenshot of Songbird offering some default add-ins" width="502" height="523" />
<p>
	The next page provides some default add-ins to expand Songbird functionality. Personally, I hate any advertising in
	the software I use, especially stuff that gives information out to websites in order to sell me stuff. However, I
	let these add-ins be as I would like to experience the default Songbird design.
</p><p>
	If anything the benefits of easy plug-in functionality via the add-ins means that one can be mix-‘n’-match
	according to taste, rather than being lumped with ‘bloat’ with no option to remove it (A problem that greatly
	plagues software with ever increasing version numbers).
</p>
<img src="/writing/songbird/songbird-firstrun-spam.png" alt="Screenshot of Songbird’s anonymous information gathering option, ticked by default, and the choice to provide an email address for news updates" width="502" height="523" />
<p>
	Hmm, checked by default. Personally, I’d close and remove the app right now. I find that kind of behaviour
	massively disrespectful. Real were pulling this stunt years ago and I still don’t trust any software that asks for
	an email address, optional or not. Regardless, the average user would in most cases just click <q>Finish</q>.
</p><p>
	Songbird took approximately 5 minutes to import my library of nearly 6’000 items. Both iTunes and Songbird start
	from cold in about the same time (5 seconds).
</p><p>
	The playlist folders I had in iTunes were not imported, instead they were converted into playlists themselves. This
	is kind of a nuisance, as I had been relying on the functionality of iTunes automatically combining playlists live
	by viewing the parent folder.
</p>


<h2>The Main Window</h2>
<p>
	There’s nothing special to say about Songbird’s look other than it’s mostly like iTunes, but with the main
	toolbar at the bottom. This can be switched to the top, via “View &gt; Player Controls &gt; On Top”. The other
	bar at the top is the tab bar, allowing you to browse and search websites.
</p>
<img src="/writing/songbird/songbird-main.png" alt="Screenshot of Songbird’s main interface" width="640" height="486" />
<p>
	The various display panes (<q>mashTape</q> / <q>Album Art</q>) can easily be hidden by the docking buttons below
	them. Songbird is extra flexible though, letting you get add-on side panes such as a folder view or lyrics browser,
	as well as swapping around which side-pane module is shown in each of the panes. This flexibility and easy manner to
	get new modules for the panes should allow for a lot of innovation to happen outside of the main Songbird
	development.
</p><p>
	The genre browser has a different kind of button to hide it which is quite cryptic and not immediately obvious.
	It’s left of the search bar, but you can always choose the “View &gt; Media Views &gt; List View” menu.
</p>


<h3><q>mashTape</q></h3>
<p>
	<q>mashTape</q> can help solve a lot of your curiosity about various songs and artists, automatically pulling in
	(hopefully related) info from the ’Web.
</p>
<img src="/writing/songbird/songbird-mashtape.png" alt="Screenshot of Songbird’s “mashTape” pane" width="640" height="486" />
<p>
	The <q>Photos</q> tab finds pictures from Flickr. It seems like something that would entertain YouTube users, rather
	than a feature I would actually want to make use of.
</p>
<img src="/writing/songbird/songbird-mashtape-flickr.png" alt="Screenshot of the Flickr “mashTape” feature" width="640" height="486" />


<h2>Audio Playback</h2>
<p>
	Any audio player lives and dies based on its ability to play audio. Songbird’s wide support for audio files is
	going to please some people. Between <del>users hurt by Apple removing <abbr>FLAC</abbr> from iTunes</del>
	<ins>unsure about this</ins>, and supporters of open formats like Ogg—Songbird caters, but Songbird even plays
	nicely in a proprietary world; it being able to play DRM protected tracks via hooks into QuickTime and Windows Media
	Player, as appropriate.
</p><p>
	In the mini player view though, I did get odd error messages saying that the song could not be played because it was
	encrypted, yet it was already playing fine. Clearly just a minor bug.
</p><p>
	There is no cross-fade support yet, and I encountered a number of jittery moments where songs cut off a second or
	two early, or the player just stopped entirely after a song and hung there on the next song waiting for me to hit
	the top of the box to kick it back into playing.
</p><p>
	I miss not having iTunes simple party shuffle mode, and when I do shuffle the play order in a playlist, the focus
	doesn’t follow the current song as I skip.
</p><p>
	Overall though, if your library is diverse and you’re more particular about the formats you store your music in,
	Songbird will work well for you. Songbird plays generally well with your iTunes purchases so there’s no real
	reason to not try Songbird out for yourselves.
</p>


<h2>Bugs</h2>
<p>
	Without effort I found a large number of bugs, here’s some of the notable and easily reproduced ones
</p>
<dl>
	<dt>Preferences sometimes broken</dt>
	<dd>
		Trying to open the app’s preferences did not work—it was the first thing I tried when using the app for
		the first time. Then the app wouldn’t close and had to be force-quitted. If I do get the preferences
		open, it often doesn’t show some of the sections when I click on them
	</dd>
	<dt>Main window disappears when focus lost</dt>
	<dd>
		For a long period, the Songbird window simply hid itself everytime I changed focus to another app
	</dd>
	<dt>Web-browser functions breaking library view</dt>
	<dd>
		The “View &gt; Page Style &gt; No Style” menu, despite being for ’Web pages, works in the library
		view and disables some of the CSS styling of the app
	</dd>
	<dt>Default shortcuts for next / previous song…</dt>
	<dd>
		…are Ctrl+Arrows, which are assigned to switching spaces in OS X. iTunes uses just plain left and right
		arrows when the list is in focus
	</dd>
	<dt>Keyboard Shortcuts help bug</dt>
	<dd>
		If using the mini-player, clicking the “Help &gt; Keyboard Shortcuts” menu brings up an open-with
		dialog
	</dd>
	<dt>Pressing the close button closes the whole app, entirely</dt>
	<dd>
		In OS X, the red bead closes the current window but doesn’t usually quit the entire app too, so that the
		app remains in memory and can be re-launched quickly, or can continue doing something in the
		background—like, I don’t know—playing music, perhaps. Cmd+Q, or the menu item is the only thing that
		should quit the app entirely.
	</dd>
	<dt>Cmd+W closes tab, won’t close window</dt>
	<dd>
		Cmd+W closes each browser tab, but then doesn’t close the main window when only the library view is left.
		I’m used to pressing Cmd+W to dismiss iTunes (or any main Mac app), but leave it running
	</dd>
</dl>


<h2>‘Missing’ Features</h2>
<p>
	A feature is, of course, not missing if it was never meant to be there in the first place. However, as this is not a
	clean-room review of Songbird—whereby I review something by living in a closed box, unaware that it’s no longer
	the year 2000 and other products have existed for a long time—I take the viewpoint that what Songbird doesn’t
	have in parity with iTunes is therefore missing as far as a regular consumer is concerned (should they make use of
	that feature).
</p><p>
	That is simply the harsh reality that open source developers must face, and that Songbird does want to face (given
	its current iTunes importing ability), but falls short of in the following ways
</p>


<h3>No Video Support</h3>
<p>
	None. This was not a goal of 1.0 and is something to be visited in later versions of Songbird, however what I found
	shoddy about this fact was that Songbird does nothing to acknowledge that it does not play video.
</p><p>
	It could exclude videos from showing up in the library. It could warn me with a message when trying to play a
	video—instead you just get the sound. It could do <strong>something</strong> to better warn you that video is not
	currently an option—rather than hide this fact on the
	<a href="http://getsongbird.com/features/#ft" rel="external">very bottom</a> of their <em>features</em> page.
</p>


<h3>No True Podcast Support</h3>
<p>
	You can emulate podcasting by subscribing to the podcast’s website or RSS feed - however this is just a static
	pull of listed audio files. No video support. No auto-pruning. No tidy categorisation / management.
</p>
<img src="/writing/songbird/songbird-podcast.png" alt="Screenshot of Songbird scraping audio files from remix.kwed.org" width="640" height="486" />


<h3>No CD Playing, Ripping, Burning</h3>
<p>
	No, really.
</p>


<h2>Conclusions</h2>
<p>
	I appreciate it’s a new app and has taken a long time to create, but what am I expected to do? Not use CDs until
	they get around to it? It seems like Songbird 1.0 relies entirely on a symbiotic relationship with iTunes.
</p><p>
	To call this product 1.0 is like throwing in the towel, accepting that it’s just not possible to beat iTunes, or
	even Windows Media Player, or even support basic features—like playing a CD, that’s been possible for around 16
	years.
</p><p>
	Songbird is a project that, given its limited resources, has to look toward the future first and pickup the past on
	the way. The time and effort spent in ’Web integration and add-in support is what makes Songbird a notable player.
	For if Songbird were without these two aspects of its design there would be absolutely no reason to live with what
	it’s missing in lieu of what it has.
</p><p>
	I believe that Songbird will succeed better in the Linux environment, which—dare I say it—has a more Unix-like
	software ecosystem that provides many smaller apps to achieve the tasks of one large homogeneous one. Linux distros
	all have their preferred CD-ripper / tagger / burner and video-player. In Mac OS X and Windows, maybe not so much
	the case.
</p><p>
	Songbird is not an app I will be using anytime soon. It is an app however that covers its nakedness with its
	innovation. There may be hope, then, that its emperor’s clothes approach to features will be seen as beautiful in
	the long run.
</p>
<dl>
	<dt>Pros</dt>
	<dd>
		<ul>
			<li>Portability across Windows / Mac / Linux and anywhere else someone manages to compile it</li>
			<li>Decent mini player</li>
		</ul>
	</dd>
	<dt>Cons</dt>
	<dd>
		<ul>
			<li>No direct podcast support, can be ‘emulated’ through subscribing to a website or RSS
			feed XML</li>
			<li>No CD playback / ripping</li>
			<li>Vague privacy</li>
		</ul>
	</dd>
	<dt>Sins</dt>
	<dd>
		<ul>
			<li>I encountered many bugs, big and small, just in my normal usage</li>
			<li>No video support, no UX to acknowledge that</li>
		</ul>
	</dd>
</dl>
</section>
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
</article>
<footer>
	<nav><a href="http://forum.camendesign.com">‹ Discuss this in the Forum ›</a></nav>
		
	<a href="mailto:kroc@camendesign.com">kroc@camendesign.com</a>
	<nav>view-source:
		<a href="/writing/songbird.rem">Rem</a> •
		<a href="/writing/songbird.html">HTML</a> •
		<a href="/design/">CSS</a> •
		<a href="/.system/">PHP</a> •
		<a href="/.htaccess">.htaccess</a>
	</nav>
	<form method="get" action="https://duckduckgo.com">
		<input type="hidden" name="sites" value="camendesign.com" />
		<input type="search" name="q" placeholder="search…" />
		<input type="submit" value="Go" />
	</form>
</footer>
<!-- =================================================================================================== code is art === -->