Fixed a few things with the playlist, artists and titles, and Last.fm now works again. You can click what used to be the Profile button (renamed Last.fm Scrobbler button) to connect your Last.fm account to Streampad and have your listening history scrobbled to Last.fm. Note: only posts with proper artist and track titles will get scrobbled.
Get the updated Streampad v2 here!
(Note: you'll need to delete everything you've copied from previous installations and re-paste the entire code)
Here's something to pass the time with while waiting for me to fix the problem with Streampad v2 not being able to add SoundCloud Sets to the playlist. I'll get to updating it soon, and it should be easy to do because the code used to achieve the following too uses the same concept as the potential fix I have in mind.
A quick and dirty javascript bookmarklet for loading a SoundCloud Set (playlist), track, or user URL into Streampad v2. My motivation for creating this was SoundCloud's extremely crappy or non-existent support for repeating or shuffling songs on their own website. I really like their site/player design, but as it is a music streaming site, I was kind of disappointed that they didn't offer user-friendly ways for repeating playlists or shuffling them during playback. Therefore, if you ever want to just load SoundCloud songs into Streampad v2 and play them there (which supports repeat and shuffle), you can do so via this bookmarklet.
All you have to do is enter a URL (make sure it starts with http:// or https://) that points to either a SoundCloud user profile (plays all the user's tracks), a SoundCloud Set/Playlist (plays all tracks in playlist), or a single track (plays just the one) when prompted. If it's a private playlist or track, you will need to enter the full URL including the 'secret token/key'.
Steps to install:
Step 1) Basically like all other javascript bookmarklets, just
right click this link:
Tumblr | Load SoundCloud Playlist/User/Track into Streampad v2
and click “Bookmark This Link”, or bookmark it to your bookmark bar, or whatever.
Step 2) Then, when you're on a tumblr blog with Streampad v2 installed, click the bookmark and enter the SoundCloud URL in the box that pops up. It should load the appropriate songs, if any exists for the URL entered.
---
jQuery 1.5 dependent, bundled inside since this uses $.ajax / JSON-p to fetch data from the SoundCloud API.
Javascript bookmarklet generated with Ben Alman's jQuery Bookmarklet Generator
NEW feature: Seamless Cross-page Playback.
You can now keep Streampad v2 playing while navigating through your own blog’s pages! No more music resetting for users without infinite scroll! ;)
This is enabled by default, but it is still an experimental feature so you may experience some problems. Needless to say, I’ve done almost a week’s worth of testing up to this point so it should be alright, but if you’re having trouble you can turn it off.
Also, I’ve condensed the scripts into one so the copy-and-paste won’t be as large.
Get the updated Streampad v2 here!
(Note: you'll need to delete everything you've copied from previous installations and re-paste the entire code since this introduces another option to your Customization. Or you can add the <meta> tag in manually if you know how.)
---
Achieved using iframes and HTML5 history.pushState.
Everything written in vanilla javascript!
Longer explanation will be written in the future when I find spare time.
Tested working in Firefox, Google Chrome, Opera, Safari.
Internet Explorer + mobile browsers unsupported/untested.
Short explanation: If you have the Safari or Opera browser, Streampad v2 should now work properly for you! woot!
I also added a counter for how many songs have loaded so far to the 'Loading Audio Posts...' indicator so that people with large playlists (like thousands of songs) won't be wondering if their player is stuck or something.
Get the updated Streampad v2 here
---
Long explanation:
Spent the morning trying to debug streampad on Safari and Opera to figure out why it kept getting stuck at "Loading Audio Posts...", but after visiting the page again it would work, and the songs (which were now in browser cache) would start playing. Turns out it was an error on part when I started removing the scripts which were dynamically loaded via appending. Basically for every 20 or 50 chunk sets of songs on your blog, you request some information from tumblr's servers (via their API) to get things like the song URL, the title, artist, # of plays, etc. and this information is basically thrown into an invisible part of your blog page. However, to prevent clutter I tried to remove this 'pasted' information after all the songs were done loading, but apparently Opera and Safari didn't like it. They couldn't build a playlist without the information staying on the page, as opposed to Firefox and Chrome which could. So to fix it for these two browsers, I disabled the function to clean up this excess information which will just sit on your blog invisibly and do nothing. I don't think you'll notice any difference, but yeah that's so far as the explanation goes.
NEW feature: Repeat. You can now repeat a single track over and over again by toggling the Repeat button.
NEW feature: Toggle Shuffle Button.
You can now turn shuffle on/off by toggling the Shuffle button.
Update or get Streampad v2.
Just a minor fix, not mandatory unless you post from SoundCloud a lot.
Updated code to fix SoundCloud Sets from choking up the player.
To clarify, if you post your SoundCloud Set/Playlist to tumblr, it won't play on Streampad. Make sure to post the individual songs from SoundCloud, and not the playlist collection that groups them all together, even if it means posting every single track from that playlist.
Sorry for the trouble :s