What do people think about UIs (user interfaces) for MP3 player applications like iTunes? I've pretty much just used iTunes. I would like to make a Web UI for listening to a large number of MP3s. I'm not coming up with much other than a ripoff of the iTunes view that I use all the time, which is like this (excluding the left column with playlists/etc.):
------------------------------------
| controls and song info |
------------------------------------
| list of artists | list of albums |
------------------------------------
| list of songs |
------------------------------------
This works great for me, but I'm curious what other UIs other folks use and like, either from iTunes or other programs. Also I'm curious if anybody has any ideas on better ways of doing things, particularly things that could be done on the Web.
I've been unhappy with my (admittedly limited) iTunes experience, but I think if you removed the shop section - which sounds like it's irrelevant to what you're doing anyway - it would do in a pinch.
It sounds like what you're talking about ("to make a Web UI for listening to a large number of MP3s") sounds like you're talking about playlists. Either playlists that can be saved for later, or a playlist that you create on the fly. Youtube does a decent job with their video queueing, but it's hard to navigate the playlist once it's made.
I think if you're talking about letting people play a variety of mp3s in one player, the two critical elements you would need (at least, in my opinion) are 1.) a mostly-constant view of the current queue, or "Now Playing" list, which can be modified on-the-fly, and 2.) an easily navigable library of songs that can be dropped into that queue. [EDIT: and 3.) A control panel, visible at all times, containing the play, pause, volume, and skip buttons, as well as a track navigation bar and a time remaining/time elapsed view, which might be customized to be hidden.]
"Easily navigable" is the tricky part there, because different people have different intuitions about how to find what they want. Organize by artist? By title? By date? By album? (Is this for Songfight or Somesongs? A lot of us don't have album titles in mind when we submit songs.) Since all of these are feasible, it seems advisable to enbed into your UI some kind of mechanism for allowing users to choose how the library is filtered and arranged. iTunes presents one logical way of doing this, with nested menus. Another way would be the Windows Explorer "Detail" view, which has the benefit of displaying a lot of choices which can easily be organized with a click or two, but has the disadvantage of providing an intimidating amount of information at once, causing the illusion (which, for many users, is a self-fulfilling prophecy) of unusability and clunkiness.
I'm just musing free-form here, as I know very little about the actual programming part of it. Hope I've been somewhat helpful.
"Warren Zevon would be proud." -Reve Mosquito
Stages, an album of about dealing with loss, anxiety, and grieving a difficult year, now available on Bandcamp and all streaming platforms! https://jonporobil.bandcamp.com/album/stages
I think that the iTunes column explorer view would be a good starting point, modified for the specifics of Song Fight of course.
Being able to sort by date, artist, title, etc. is a must-have.
Being able to do manage the play queue as a playlist (like the iTunes on-the-go playlist function) is a must-have.
Being able to shuffle the order of the pending play queue would be nice.
Being able to explore the current fight or artist from the "now playing" pane would be excellent.
Being able to add a randomly-selected fight to the pending play queue, or add a randomly-selected artist to the play queue (with the tracks sorted by date, probably), or add a randomly-selected entry to the play queue, would all be very nice.
A pie-in-the-sky thing would be to have a sonic analysis to determine which songs would likely flow well from each other, and generate a DJ set for that. I know there's various apps that do that, as well as various acoustic analysis libraries which could probably be used for that, but that requires a lot of work.
You don't mention what library this is controlling. But if it's pie in the sky, I'd leverage deep metadata that allows browsing/auto-playlists by composer, producer, performers, engineers, etc. Discogs has this data, as does MusicBrainz, but both have crappy APIs. I'd kill for this.
roymond.com | songfights | covers
"Any more chromaticism and you'll have to change your last name to Wagner!" - Frankie Big Face
fluffy wrote:For some reason I assumed this was for the SongFight archive player.
You assumed correctly. I didn't really put much effort into the UIs of the archive player. I was mostly interested in getting all the archive data up and making it so you could query it to find out interesting things. I recently sent a coworker to the site to try out Flash on his Nexus One, and he didn't get right away how to make the music play. Now I want to come up with new UIs that are more focused on making it obvious how to play the music. This weekend I did one pass of redesigning the fight page, to arrange things better:
I also intend to just have the current fight(s) be the home page for the site, and move all the text from the current home page to an "About" page, and make the searching features always available from the navigation.
I'm a bit unsure how to handle the page that lists every song in the entire archive, though, as that's many 1000s of songs. I was thinking of ripping of the iTunes UI for that so I was wondering what people thought about iTunes and programs like it.
I hadn't gone as far as thinking about play queues, just playing the songs and doing basic navigation and filtering of the music library.