|
Ode to a Better JBMM UI - JavaScript
Version |
|
|
New: See how my Ode would look on your JBMM! I took some screen shots and resized them to the right sizes so you can view them on your JBMM and see exactly how my UI would look in a JBMM. Notice A) the viewing angle is still great (we don't need yellow on black to be able to read our JBMMs easily as was speculated - why archos chose yellow on black is even more of a mystery) B) there is almost no pixel shimmer! This second trick is because the images are slightly blured - no hard lines. This eliminates the pixel shimmer problem! So, Archos, you can fix the pixel shimmer problem in Firmware! Download this 606k file. Unzip it and copy the contents to your JBMM. Notice there are different sized pictures for TV-out or LCD modes.
Note: This page is preloading all the images for the Javascript Ode UI. Let this page entirely load before you view the UI. All the images on this page are a little over a 1meg. If you prefer to view the Ode off-line, you can simply download this 948k file. Just unpack it somewhere and load up the index.htm file.
I love the JBMM. It is an incredible device. It's hardware is so versatile, and its expandability through the modules will give it a long healthy life. HOWEVER! Though it is true that people seem to be able to quickly understand the basic features of the current user interface (UI), the UI is unattractive, cumbersome, and limited to the point of strangling the JBMM's potential. Let me say this clearly: The #1 biggest problem with the JBMM is its user interface! The screen-size, though important is a very distant second. This is my inspiration for this project. I started this project about a month ago when my JBMM failed and was sent back to Archos. Since I had a taste of the UI, in the free time I had after - not being able to play with my new toy, I have come up with this new user interface. My primary goal is to enhance functionality, specifically in the area of MP3 playing and management which is my primary use. However, I have also tried to address as many of the reasonable wishes that other people have expressed on the Archos JBMM news group at yahoo.com. All wishes that I have cataloged (many achieved in this demo UI) can be found here. Below I have also done a point-by-point address of the Firmware wishes and how my UI does or does not address them. The scope of this Demo is large, but it doesn't cover everything. First and foremost, actual MP3 and AVI playback does not occur - it is faked. The visualizations are just screen shots of how I think they might look. The image editor does nothing in this demo. Lastly, move/copy/rename/createfolder/delete are all nonfunctioning. I left these things out either because it was impossible with JavaScript + HTML or it was hard for me to code and obvious for you to understand how it should work (move/copy/etc). But, beyond that, this UI is fully functional! Everything else works! Playlisting, browsing, almost every config option work, etc... I expect you'll have a fun time playing around with this UI. Now, I must make a comment about browsers. My Demo works with Internet Explorer 5.5 and 6.0 as well as Netscape 7.0. It almost works with IE 5.0 and there is some differences in functionality between the different browsers:
If you can't see the javascript version, you can try my older, HTML version. It doesn't show half the cool stuff the javascript version does, but it should still give you some idea. A note about resolution. I made my mockup to the resolution that Archos advertises for the JBMM's LCD. On a computer, This is larger than the physical JBMM display, but accurate detail-wise. I also just noticed, putting in the origonal-jbmm-ui picture, that the aspect ratio isn't quite the same. I used the res Archos advertised, and I'm sticking to it :). Note to Archos: First, I love the hardware of the JBMM, you guys have done a great job. But you must take my UI complaints seriously. Apple and the iPod have raised the bar significantly and the JBMM's UI doesn't come close. I hope you, Archos, will consider using ideas in my user interface and even consulting me on a firmware upgrade for the JBMM. However, I Realistically, I don't expect anything to come from my hard work (over 100 hours), but I place to you this request: Please take the time to do a major overhaul of your Firmware and its user interface! The biggest thing holding the JBMM from stardom is its UI. It isn't half as elegant as the iPod - and many people care. Note to Archos Engineers: My functional javascript code is around 150k and all icons used in the interface fit in a 10k gif. This is obviously a poor estimate, but an estimate none the less of how much Firmware space this UI might take up. Since JavaScript is entirely text, compiling it into firmware should be smaller. Additionally, the 10k of icons could be read from a Gif file off the HD at load time. My interpretation of this is that my UI could easily be made to run on the JBMM. Since I've done most of the R&D, probably not more than a month of coding would be needed to get my UI ported to the JBMM. You can now go and give it a try! Be sure to scan the rest of this doc (at least the next section - new ui highlights!). Click here for
Demo - Smaller Version - for 1024x768 (or smaller, though
I don't recommend it) res screens. Download the whole demo for viewing locally: Ode_js.zip (948k) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
There are many cool things this UI does, so let me tell you the highlights to look for... Fully Customizable Icons, Colors and Background To me, this is the "coolest" thing. Completely impractical - just damn fun! As an example I have setup a Matrix skin for my Demo. Simply go to setup and press F2 to load it up (restore user settings B). Like the old Yellow of the JBMM? I setup a skin for that, too - press F1 in setup to load it.
All other user interface colors, as well as the background, can be set in the UI. 8-Line Font Can't see enough items on screen at once? Switch to the 8-line font! You can choose your font for LCD and TV separately, too, so if 8-lines is too small for you on the JBMM screen, but perfect for you on TV-out, you don't need to keep changing the settings when you switch back and forth.
Media Lib The much desired Media library! See all your files organized by ID3 (if MP3) or a simplified directory structure - broken out by file type.
Playlist Enhancements Since MP3 playing is my biggest JBMM use, I spend a lot of time enhancing the playlist abilities. You can sort the playlist by almost anything. You can select items easily, sort only selected items, reverse order of all or selected items, rearrange the playlist manually with one-key-presses (Left and Right buttons move the current item up and down in the playlist). Pretty much everything you've come to expect from a playlist editor (like Winamp in my case) and more.
Image 4 and 9-up The JBMM has a minimal 4-up ability, but it is an alternative to full screen viewing! For my solution, it is part of browsing. You can still see the current image full screen by just pressing play! I have also added a 9-up display. Lastly, you can switch to these modes quickly without going through any menu when browsing (While browsing, just press Right on a picture a fiew times. In playlist mode you have to go to the Menu - F1).
Browse With More File Info By just pressing right on a file you can switch through almost 10 different types of file info and see that info for every file in the directory:
Hold The much desired hold ability - just hold F1 anywhere (but the Setup menu) to lock your JBMM!
Visualization Three modes of audio visualization! Taking my queue from Winamp, I provided the "basic" visualizations we expect from any computer MP3 player these days. Note that the two colors used for their color fades are user settable.
Graphic Equalizer Want real control over the sound coming out of your JBMM? How about a 10 channel graphic equalizer? This is a quick mockup, and an even better, one-screen version could easilly be made.
More Versatile Slide Shows In my Demo you can display several JPGs while listening to one song or play several songs while viewing on JPG, unlike the current JBMM. My friend has also suggested several more ideas (not implemented in the demo) such as:
Image Editing Just a few kinds of image editing, and the ability to save the changes, would make the JBMM much more suitable for photo enthusiasts. My demo doesn't actually do these because of JavaScript/Html limitations, but I mocked up where they would be: (If you view the Farscape image, as shown in the picture below, Zoom and Rotate to work, but not together - as they should).
Other Cool Features Bookmarking - save your place in any AVI or MP3 by bookmarking it! Item selecting - You can easily select items for any operation (play, add to playlist, copy, move, delete, etc...) by pressing F2, or holding F2 to toggle the entire selection. Pressing Play plays all selected items (and all sub items!). Holding Play adds all selected items (and all sub items!) to the play list! Scroll Bar - As you can see in the screen shots above, a scroll bar appears when there are too many items to display on the current screen - a must-have feature in my opinion (well done, iPod!) (Netscape users won't be able to see the scroll bar). Instant Record - You can instantly start recording anywhere - even when the JBMM is off - by holding F3. This is a must to make the JBMM a real note-taking dictation device! You could be in the middle of playing a movie, hold F3, make a comment about the movie, then the movie will automatically resume once you finish recording. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
This is just a sketch of the key ideas of the interface. There is also dynamic help that appears next to the interface as you use it to help you navigate through the UI. There is dynamic help for ever UI, Menu, and many individual Items on the right of the screen - be sure to read it! UIs are major sections: MediaLib, Files Browser, Setup, Top Menu, Playlist UI, Playing UI, and F1-Menus. Menus are the lists of items - every directory/fold the MediaLib and File Browser are menus. Items are the individual items you can select with your cursor by pressing Up or Down in a menu. These include files, subdirectories, Setup settings, and Menu items. Your location in the MediaLib or File browser is not lost when you press off and return to the Top UI. This way you can easily swap back and forth between two deeply nested directories in the two browsers. Further more, every position of every menu or directory is remembered - this speeds up navigation when you want to go right back to where you were. Buttons Almost Everywhere:
Buttons In the Playing and Top UIs
Buttons In the MediaLib or Files UIs:
Buttons in the Setup UI
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
This is point-by-point address of the long wish-list on my website here. The Wishlist Items Featured in My Ode: (red items were deamed high prority on the Wishlist)
The Wishlist Items I would like to see in my Ode (no time or not able/practical to do with JavaScript):
Wishlist Items that are cool, but I don't think it is practical/nessesary for Archos to implement:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Can play: MP3/WAV, JPG/GIF, AVI/MPG files. Move/Copy/CreateDir/Rename/Delete Vis colors can be changed to effect the color fades Actually functioning image editor - mine is just mocked up. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Sliders highlight center, min, and max values. Sliders cycle. More harddrive info in setup. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
I have dramatically expanded the number of custom settings for your JBMM. In addition, I have changed many that were represented by slider bars when I would rather just seeing their actual value. The new ones are: Audio -> Graphic Equalizer Play -> 4 Time display modes (From Start, Until End, From PlayingList
Start, Until PlayingList End) User Interface -> Visualization (3 vis modes + not vis option. Customize
vis colors, too) Record Setup -> Set Record Folder Power -> AC timeouts - set separately from on-battery-power timeouts LCD -> Brightness, Contrast, Gamma TV-Out -> Brightness, Contrast, Gamma |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
No volume display. My cell phone doesn't display the volume all the time, and I don't think the JBMM needs to. You can check it quickly from the Top and Play UIs by pressing up or down. Elsewhere you can check it quickly by pressing On and going to the setup. Play Modes: One Directory, All Tracks, Single, and Queue can all be easily done with my playlist interface. All Tracks - go to MediaLib and press play on one of the first three items. Single - select one item then press play. Queue, put a song in the play list, play the play list, then every song you add to the playlist after that is "queued" (note you can queue more than one song and you can edit the queue as the JBMM plays it - much more flexible). Repeat, Scan, and Shuffle - I don't understand why Archos chose their method of representing these. They are orthogonal - you should be able to turn then each on or off independently of each other and any other "play modes". In my UI you can. Startup Resume is always on in my UI. I don't know why Archos let you turn if off. Just pause what is playing, turn the JBMM off, and when you load back up, press play to continue! Loudness, base, treble, base boost. Basically can be done via the equalizer. Perhaps loudness or base boost do something special, if so, I'd have no problem adding ONE of them back in, both is confusing. Play Speed changed - should not effect pitch, in my demo it "doesn't" (well, I don't play anything at all, but I demo as if it doesn't). |
Precaching images to help loading of the javascript demo:
![]()
![]()
![]()


![]()
![]()
End of Precaching images to help loading of the javascript demo
VISITOR COUNT: