
Amarok Apollo WebUI
Source (link to git-repo or to original if based on someone elses unmodified work):
Web and Android interface to rediscover your music with Amarok!
Amarok Apollo WebUI is a script for Amarok allowing you to remote-control Amarok using a modern web interface on a mobile device: Android, iPhone, iPad, Windows phone, etc.
The script also provides a JSON API, to help developers build similar native apps for mobile devices: the Android app is coming soon…
This is an updated version of the popular WebUI-for-Amarok by Johannes Wolter.
Open-source project released under the GPLv3 license.
Version 1.6
* Guest mode: fix layout issues with error message.
* Updated API, adding methods required by the upcoming Android app.
Version 1.5
* Guest mode: added a countdown to allow adding tracks every 30 seconds. Interval duration is defined in the Amarok configuration UI.
* JavaScript bug fix for Playlist screen.
Version 1.4
* DJ/Guest modes: when enabled, DJ has the usual interface while Guest has read-only access except for adding individual tracks to the playlist.
* Remove tracks from playlist
* Swipe gestures for next/prev track and to switch tabs in Collection index.
* Updated version of jQuery and jQuery Mobile.
Version 1.3
* Configuration: support for Internationalization I18N, starting with 8 languages: Brazilian Portuguese, English, French, German, Italian, Portuguese, Russian and Spanish.
* Fixed Album Cover display for some types of ID3v2 tags.
Version 1.2
* Allow Collection browsing by Genre
* Use ID3v2 tags to display album cover in collection
* Replace PNG by JPEG to reduce filesize
* Fix JavaScript bug in Playlist screen (sticky Loading progressbar)
Version 1.1
* Fixed Collection display issues, related to case sensitive DB queries
* Fixed Lyrics display, related to DB structure since Amarok version 2.5.0.
* Fixed delay issue when adding/playing Track directly from Collection
Version 1.0
* Initial release of Amarok Apollo WebUI, a fork of WebUI
Ratings & Comments
22 Comments
Wow! I guess i just wasn't expecting enough! And, Apollo was totally unknown to me... Was, to me, just a name you were using I've been happily using a music player named Meridian for the past few years, did not know Apollo, at all, but after not finding Apollo in the Play Store, I did find it on xda-developers, downloaded and installed. I tell you, I'm an old guy... some of these apps have more features than I can wrap my mind around, so there are some features I haven't explored or found on first look, but if WebUI will fork from Apollo, Apollo is where I want to be. I assume Amarok Apollo WebUI will be Apollo full-featured with WebUI functions added? Does this mean that I will be able, effectively, to stream Amarok through/to Amarok Apollo WebUI on my phone? I guess I could just wait to see what you have in store for us, but I'm pretty exited about the whole deal! One of the things I have been looking for is a music player that uses linux nfs file sharing to allow sharing of my computer music to my phone, when at home. Idea would be wifi between computer and phone, then bluetooth from phone to headset which would extend range compared to computer directly to bluetooth headset. I gave up on that last, because bluetooth just can't handle the range and cuts out a lot, and use 900mHz wireless instead, but I do like the little bluetooth headsets when they have a good connection, relatively close to phone. Would be nice if my phone could hold my whole flac file collection, but even with compression to mp3, it can't come close... Will what you are working on essentially give me the above, along with the added control of Amarok by WebUI?
Lol, Duh... wish i could edit... Quote:Since WebUI seems to be used generically, as a name for remote controllers, maybe a name change is appropriate? Amarok2 Remote seems ideal, but is already a script and app... Amarok2 Android is also used... Maybe Amarok2 Jukebox or Amarok2 Jukebox for Android? Amarok2 Control? Amarok2 Playing? IDK... Amarok Roks?
Amarok Apollo WebUI is just fine. Not sure where my head was at...
Thanks Gary for your comments! I'll add the Firewall comment to the installation instructions. High ports are generally allowed, but it could be an issue for some users. When talking about "Naked browser" and "Easy Browser", I guess you're talking about web browser apps for Android? My android app will be a fork of CyanogenMod's Apollo music app (by Andrew Neal). It will be a native Android app with the beautiful UI of Apollo! Quite different of the current web interface. Thanks, mudar
If WebUI doesn't work remotely, you probably need to open a port in your firewall. In openSUSE, open yast/Firewall. try disabling firewall then try WebUI. If it works open Allowed Services, then Advanced at the lower right, add the WebUI set port to the TCP Ports line, OK, Next and restart Firewall.
Just found Easy Browser on the market (196k). Don't know much about coding, whether code is open source...
After trying Amarok2 Remote (no joy) and coversal (no happiness), I can only say Wow! I had not tried WebUI in the past, don't know what you had to start with, but the effort you have put forth is wonderful! Thanks! Since future app will obviously be browser based, was wondering if you could just use a small browser like naked browser (624k) as a base. It actually works nicely, now, dedicated to WebUI it would be even better. Since WebUI seems to be used generically, as a name for remote controllers, maybe a name change is appropriate? Amarok2 Remote seems ideal, but is already a script and app... Amarok2 Android is also used... Maybe Amarok2 Jukebox or Amarok2 Jukebox for Android? Amarok2 Control? Amarok2 Playing? IDK... Amarok Roks? The Display of the current track is pretty nice, would be nice if it would auto update on track change... Would be nice if title was larger or bold. Too much white space in track info, decrease line spacing to allow more room for Album art. These are small things... what you have done is already appreciated!
and a page title would be nice. At the moment there is only the icon visible on the tag. Maybe current running track in conjunction with the page refresh?
Thanks for your feedback! I agree that auto-refresh would be useful. However, it's a bit complex because it requires maintaining an open connection to the server which I'm not sure is supported by the QTcpServer running the app. Refreshing the page every 30 seconds (example) is simply bad practice... For the page title, I'm not sure I quite understand... Quote:and a page title would be nice. At the moment there is only the icon visible on the tag. Maybe current running track in conjunction with the page refresh?
What section are you talking about exactly? the Home page? all screen?
thanks,
mudar
The tab and the window title are empty, at least with Firefox.
Ooops, just opened Firefox 23.0.1 and now I have "Amarok Apollo WebUI" as title. Seems it was a Firefox issue. Anyway, track or artist as title would be cool. m0nk
Autorefreshing of the current track and playlist would be nice. m0nk
Really cool to see this script revived! Also looking forward to the android app :) Something that came to mind when using the application: It would be cool to have a sort of restricted user which can only add songs to the playlist. This could be fun for small party's or even small clubs to let the people decide which music to play - just an idea for the future maybe ;) cheers
Thanks Josef! I like the idea, can you describe it a little bit more? If the "guest" user cannot modify the playlist, can he still use the control commands (next/prev/pause/volume)? Do you have an example of how a read-only access would be useful in the context you mentionned? How about this: Guest users have would read-only access everywhere (no next/prev/pause/volume), except for the permission to add single tracks (batch-add too?) to the playlist. The main user (the DJ!) would be able to remove tracks from the playlist. mudar
Yeah, that's what i meant. So the Guest *can* add songs from the collection to the playlist, but he *can not* do things like media controls (next/play/pause/stop/prev/volume) because that stuff should be handled by the DJ (which has full access to everything) Hmm, batch-adding would be cool if few users are using it, but it may get confusing if a lot of people can batch-add a bunch of songs to the playlist. So maybe an option to allow every guest every x minutes to add a Song, where x can be configured by the DJ, would be nice. If this option is disabled, then batch-adding is open to everyone. Sounds like fun, at least for me ;)
New version 1.4 released, with support for DJ/Guest modes! It requires enabling the user authentication in the config (open Amarok then Settings/Amarok Apollo WebUI). Same username for both modes with different passwords. Quite similar to your idea: Guests can only add individual tracks to the playlist. No other controls are available. In a future version I'll try to limit the number of tracks a guest user can add. A timer doesn't fix the problem because logout/login would reset it. Maybe guest users can add a maximum of 1/3/5 tracks. The total being shared by all guests. Once the DJ refreshes the playlist page, the counter is reset. Or something similar to help the DJ "approve" the suggested songs. What do you think? Thanks again for the great suggestion! mudar
First off, the improvements overall with the new version are really awesome! Thanks for this. Secondly, i have to say, i'm BLOWN AWAY at how fast you implemented my proposal! Looks like i have to make a party to test it out in practice now :D on the limitation for guests: Your idea sounds like it would work good with an active DJ. But i'm thinking, if the DJ is busy with something other this would not work anymore. Or, if i think of a cafe/restaurant use case, there may be no dj at all, but it would be cool to let the guests have an influence on the played music. (maybe i'm overthinking this ;) ) Something like every 3rd (x-th) track can be determined/voted by the guests seems like a solution. But this also has its downsides ... The voting systems have the same downside as the timer systems it seems. you could always log out and vote again, right? But if you don't have a voting system there would be "first come first served". I don't know whether this is good or bad though. But generally speaking i would say, the simpler the solution the better. Just my thoughts on this ... Something i also wanted to mention: When i use dynamic playlist mode (which i do a lot) the playlist on the phone does not get updated with the new songs added by dynamic mode upon song change. So if you then pick a song on the webUI it plays a different song on amarok. I don't know if it is an easy task to notify all clients using the webUI about the song change and the new track in dynamic mode? Manually refreshing is a bit frustrating though :) Thanks for the quick work, i was really surprised to see this implemented today :) cheers
Thanks again! Version 1.5 released... I've added a countdown that defines an interval where Guests can add one song every 30 seconds. I hope that by configuring different values (zero to 10 minutes), it can serve most uses of the app. By the way, there might be some performance issues with a high number of connected Guests: the webserver is run by Amarok (QTScript based). So some optimization might be required! Mudar
It's a great movement! The only thing that I can't is see a collection. Always see empty. In my Amarok I hace a colecction, there any tip for this? (sorry for my poor english) Congrats for the app!
Hi Ale, Thanks for the feedback. I think your issue was related to case sensitivity in the database... I have released an updated version 1.1 which should fix that. Can you please confirm if it works for you now? If not, what version of Amarok/OS are you using? Thanks, mudar
Yes! now works fine!! Thank you :D
Thanks, Mudar, for taking over this great project! Long live Amarok Apollo WebUI! :)
Please check the knowledge base or http://mudar.github.io/Amarok-Apollo-WebUI for installation and usage instructions.