Once in a while I get an idea for a project. It can be a really small micro-project (a weekend), a bigger byte-project (a month) or a very much bigger mega-project (a year). Either way I love to talk about them with my friends to get some feedback. I’m not afraid that someone will steal my idea, but I get frustrated if I find my idea on the net. So why not just write them here for all to see? If you steal it, well send me a link to it (and burn in hell ;) ). Otherwise, give me some comments on it and help me make it better!
The date has come, and passed! Me, Jonas and Johan are at the Music Hack Day in London like we planned last time. We continued working on PartySaver and focused on two major additions: a Deezer app and a connection to Philips HUE lamps.
The architecture of PartySaver separates the player app from the party functionalities. Meaning it was pretty simple to create a Deezer app since we already had a Spotify app. (actually, it required quite some refactoring since this is hackathon code :P)
Integrating Philips HUE proved to be quite easy, but also disappointing at the same time. The idea was to take the dominant color from the artist wallpapers and just set the lights to that color. First we noticed that the dominant color was actually most often a shade of gray. The second surprise was how lacking the lights are in the color spectrum. If you don’t send a color it can handle, it will grab the “nearest” thing which is not the nearest color as I’d imagine it (different hue basically) but instead it gets whitened.
The image above shows a CIE color chart, and the little green triangle inside it is what Philips HUE can handle. Not much in the blue/green/yellow space… Next hack I’ll try to find a better color matching algorithm than the built in one.
Oh, a small improvement we made is that to find a party you just go to partysaver.se and it’ll check for parties within your wifi (actually, your public IP).
Next time we’ll also try to create the “standard” party functionality: party queue manager for party guests.
Curious on when we release PartySaver? Sign up on our website!
Finally! That sums up how it feels right now. My third attempt at creating a Spotify Screensaver! [Read about #1 and #2] Jonas, Johan and me took a different approach this time and were much more successful. Now we have a Spotify app that sends information about what song is currently playing to our broadcaster, which sends it to all connected devices.
As you can see in the image, it opens up a whole new bag of tricks! Like communicating back to Spotify from other sources. We even did that! We made a small controller app that you can access from your phone for example.
So the flow’s like this: Start Spotify and our app. That will give you a link to follow for receiver clients that will show a nice visualization (like your TV and an iPad). It’ll also give you a link to the controller (like your phone). Then you’ll use Spotify just as usual. Queue songs, search for artists, play and skip songs, etc. PartySaver will keep the clients in sync. If you need the music to stop, just pull up your phone!
So there we have it! On my next party I’ll definitely use this and put on my iPad (next to the window) and on my TV. If I don’t like the song that’s playing, I’ll just change it from my phone.
Hopefully we’ll continue this next time and add more “party features”. Such as anyone being able to add songs to the playlist from their own phones. Or make alternative visualizations, like 3D thingies.
About 8 months ago me and my friend Jocke did a screensaver for Spotify, based on an idea I had blogged about earlier. The main idea circles around the web player version of Spotify, because it’s the only way we’ve figured out how to do full screen apps. Our last attempt was a bit of a failure, because nothing was animating (which makes for a really bad screensaver). So during Way Out West I gave it another try, this time with Johan and Jonas who I’ve made Spelkalendern with.
Early we concluded that web app was the only way, again. So we changed our bookmarklet into a Chrome extension. As a little cute trick, the Chrome extension automatically adds a “hack” button to the page when you visit the player. When clicked it opens our app and hacks the iframe around it to allow fullscreen.
We really should change it to allow any app to go fullscreen. Hmmm…
We had one small problem though. The app SDK for the web player was no longer supported! It took a few hours to hack around it but we were able to solve it by changing the local server a bit.
Last time we mucked around with WebGL and that slowed us down. So this time it was simple HTML and CSS for the styling. We went with a clean look that’s very appealing. Using a service to get cool desktop sized artist photos and then the regular album art of the upcoming songs.
Since it was coded very modular, we could have a view to show various playlists to start with but we could also visualize anything you’re playing (like search results or just start playing inside some artist page). This was useful at my party last weekend.
Update: See version 3 of this project.
Some time ago I blogged about an idea of making a Spotify screensaver. This weekend at the MusicHackDay in Stockholm me, Jocke and Vincent finally tried our hands at doing this by creating PartySaver. The first quest was: How do we play music and show music info, in fullscreen?
There’s several ways to play Spotify music: Spotify players (Win, Mac, iOS, etc), Spotify web player, and libspotify. We opted for the web player, but a developer edition which supports apps. We quickly noticed the apps aren’t allowed to run in fullscreen! So we created a bookmarklet that “hacks” the player to allow fullscreen apps.
Then I focused on the new 1.0 API to get the users playlists, and then the tracks from that playlist. While Jocke spent most of his time on WebGL and three.js so we could have the cover arts in a 3D mosaic that would animate and move. Sadly, we never got that far. Regardless, it went pretty good and we’re happy – so we’re going to try a CSS3 version. If we make it, we might even have a sponsor for a real screensaver. The question is, how should it be done?
Do you ever get the feeling that the taxi you took didn’t go the shortest route? Sure it could be because of traffic or road work, but you still wonder if he’s taking a longer road than necessary. And why wouldn’t you? The driver gets paid by kilometer after all!
The idea would be to have an app that you start when the taxi starts, and then stop when you’ve arrived at the location. It would then plot out the route on a map, with some stats as time taken and lenght “driven”. It would also plot out the Google Map route so you can compare.
I run a small media computer on my TV and often have Spotify running. The problem is that the screen gets burned in if I don’t have a screensaver, but if I have a screensaver on I can’t see the name of the song playing.
So the simple idea would be a neat screensaver that shows the current playing track. A bonus would be to show the album cover and next track, and follow the beat. As it would be a third-party application the easiest way would be to parse the artist and song title from Spotify’s Window title.
By using Gracenote it could show the album cover and lyrics, but probably not feasible for a free screensaver.
The hardest part would be inventing a cool or fun enough visualization. Maybe a self playing game, like Tetris, Audiosurf, Pong or Snake? A Rubicks cube solving itself? Maybe a nice fish tank? Or random particle effects? What would you like to see as the visualization?