Project Description
A free open source, finger friendly, car friendly, and resolution-independent music, podcast, and online streaming radio player for Windows Phone / Windows Mobile devices with powerful library and playlist features.

Abstract
Avian Play is an audio player, not a media player, so you can't play videos. What Avian Play does provide is an intuitive, unique, and user customizable user interface, inspired by modern mobile user interface designs and tweaked for a powerful music player, and an audio engine based on the most accurate and blazingly fast portable audio engine available on any platform - the MAD MP3 decoder. Avian Play gives you three completely separate playback control surfaces, depending on the type of file you are playing. You get a separate control surface for music, podcasts, and internet radio. The controls you need for each of those separate audio tasks is not the same, so why should the same buttons be visible, wasting screen real estate? Another unique feature not found on any portable media player I know of is how Avian Play treats online radio stations. A playlist for a single stream is treated as a single unit, remembering the backup servers to try if the server you are listening to goes down. This information is cached and refreshed periodically automatically, so you have to update your stream lists less frequently. To top it all off, a plugin for Avian Play supports the free SHOUTcast (TM) online radio service, and has an open Library plugin API so that other online services (and anything else you might need in the library) can be added easily.

There are numerous audio and media players for Windows Phone Classic, but very few that focus on your music and podcast library. Most will provide some sort of pseudo-library if you take the time to sort all your music files into numerous Artist/Album folders. This is time consuming and just flat-out not fun! The few players that have a true library database are commercial and are becoming updated less and less as the old Windows Phone/Mobile/Pocket PC platform "winds down" in favor of the Zune Phone (aka Windows Phone 7). I current don't have plans to upgrade to WP7 due to its massively locked down philosophy (I want a pocket computer, not a music player that can check email and make calls). Well, with this empty spot in the Windows Phone 6/6.5 market, I decided to fill it! Hence, Avian Play was born for Windows Phone Classic. (I actually started this project well before the announcement of WP7, but decided not to stop development to give WM the blow-out it deserves!)

Future development will include more possibilities of different plugins, more audio file support, automatic podcast downloading, and much more. My goal with Avian Play is to make the most powerful, most featureful, easiest to use music, podcast, and stream player for old school Windows Mobile.

About the only thing Avian Play will most likely never support is playback visualizations and eye-candy heavy (but feature lacking) UI paradigms, like that ahem iwhatever ahem. But... Never say never... ;-)

Future
Eventually my contract will run out with my cell phone provider and I'll have some spare cash and want to upgrade my phone. What then? Well, if WP7 is significantly more open than it is now, I will port AvianPlay to WP7. (Right now, for my style of mobile computing, WP7 is unusable.) In this ideal case, Zune will be abstracted into an API which I can use as the audio engine. The more likely scenario will be that I port this project over to Android at some point. But that will be a real pain, so I will definitely need help!

XDA Developers
See the XDA project page: http://forum.xda-developers.com/showthread.php?p=8800225

Technology
I don't believe in reinventing the wheel when at all possible, so Avian Play incorporates as many existing free / open source technologies as possible to make this application very powerful with minimal effort. Here's a quick run-down of various technologies employed in Avian Play.
Early Screenshots

Music File Playback Screen


Online Stream Playback Screen


File Library, Top Menu


File Library, SHOUTcast Genres, Filtered

SHOUTcast Support
Avian Play contains a bundled library plugin that will feature SHOUTcast™ directory browsing support. Due to SHOUTcast™ licensing restrictions, the SHOUTcast™ plugin will be closed source and not have its source code hosted here at CodePlex. The plugin is provided with no warranty. You cannot reverse engineer or use the SHOUTcast™ plugin in your application without express written permission by both the author of Avian Play and SHOUTcast™.

What is SHOUTcast Radio?
SHOUTcast™ Radio is one of the largest directories of professionally and community programmed online radio stations in the world. Today SHOUTcast™ Radio features over 35,000 stations from around the globe. If you're into popular or indie music, or want to check out local or world programming, you're sure to find something you like on SHOUTcast™ Radio.

SHOUTcast Terms of Service
http://www.shoutcast.com/disclaimer.phtml

SHOUTcast Toolbar
You can download the SHOUTcast™ toolbar here: http://toolbar.aol.com/shoutcastradio/download.html

Last edited Oct 25, 2010 at 1:03 AM by avianwaves, version 28