Be a time warrior with Player FM’s playback rate

So you’ve got 30 minutes to learn everything about basket-weaving. You search for basket-weaving (I love how that actually returns four episodes). It returns the fabulous “Everything You Need to Know About Basket Weaving in Sixty Minutes” show (we’re well into hypothetical territory at this point). 60 minute show, but 30 minutes to countdown! Not to worry. Go double-speed with Player FM’s new playback rate feature. It’s literally* like warping time (* but not literally).


And thankfully, the browsers make this a chipmunk-free zone. They modulate frequency as you speed up the episode, so it’s sounds quite normal.

It works as a slider control, just slide up and down from 0.5x to 3x in the permaplayer area. As always hit “?” to see keyboard shortcuts, where you’ll discover you can also speed up and slow down with “<” and “>” keys.

The new control is available on desktop browsers only, since I’ve discovered the main mobile browsers don’t support it so far. Also, it’s only available with browsers supporting MP3 in native HTML5, which rules out Firefox until the planned MP3 support lands (this is available in their bleeding-edge Windows releases, so the wait is maybe a few months for everyone). I hope to add playback rate to the Android app too … playback rate is one of those features that separates true podcast apps from music apps.

This latest update also introduces a volume control, and again there’s keyboard shortcut support — “+” and “-” will increase/decrease volume, and “m” will mute it. Because I’m lazy, I like hitting “+” without shift, so “=” will also work to increase volume (nice for QWERTY keyboard owners anyway).

One more thing …

Player FM now supports the SubToMe standard. This is a fabulous initiative to make the whole process of subscribing and RSS easier across the internet. Wherever you see a “Sub To Me” button on a website, you can just hit the button and you’ll be presented with a list of your favorite blog readers and podcast apps, so you can quickly subscribe to them. You can try it by clicking the “Sub To Me” button on HNPod’s website (as long as you’ve visited the updated Player FM from the same browser).

Why Player FM Went Native

In this recent contribution to GigaOM, I explained why a web app wasn’t enough. Why Player FM went all-out native with an Android app.

To be clear, the web app is alive and well, and in fact has received several upgrades recently. A few years back, the question was “Web versus Native”, but now it’s well-understood this is a false dichotomy. A cloud-based service like Player FM needs to get the most out of both.

Website update, Channel history, Faster topic updates

It’s not all Android around here. Big update on some other fronts today …

Website Design

First up, the website gets a fresh lick of paint.


  • The sidebars have been re-designed and are now more consistent in appearance.
  • Channel/topic views have also been re-designed.
  • Full-length topics side-menu is gone; it now opens when you hover the mouse over it (or touch it on mobiles).
  • Some extra tools when viewing the list of series in a channel. You can sort on several criteria and also clear them all in one click.

Channel view shown below:

Channel Archive

As I’ve said previously, Player FM has some wiki-like characteristics, and so it makes sense that you can track past edits to your channel. So there is now an archive feature allowing you to see series you previously unsubscribed from (it’s only active from today, so your archive starts as a fresh slate). Over the years, I’ve lost track of series I had to drop, sometimes just to save space, so I thought it would be pretty handy if I could go back and add them again. This new – and experimental! – feature makes it possible. You’ll see the archived list on the side of the channel – only if any archived series are present:

And then you’ll see the list, where you can easily add the series back:

Archived series are private — only the owner can see it — but maybe it will be an option to make it public at some stage. if there’s demand for it. You can also clear the archive with a single click.

Again, this is experimental and currently only the most recent 50 subscriptions are shown. (Clearing the archive will delete all past subscriptions, however.)

Subscription Dates

The other aspect of history is tracking when you added your current subscriptions. As of today, it’s now possible to see subscriptions dates when you look at the channel in series mode (by clicking the “ Series” button beside the channel). They are only shown when you sort by “Recently added to channel” since most of the time you probably don’t care much about that.

Unlike the archive feature, this is retrospective, so you’ll be able to see subscription dates from the time you began using Player FM. If you signed up before today, you’ll need to turn this feature on in Settings page. I’ll be turning it on for all users on July 1, 2013. I doubt anyone would mind those dates being shown, but in case you do, you can make your channel private by editing it. (Editing is now launched using the top-right pencil icon in your channel.)

Faster Updates to Featured Topics

A number of topics have been updated with more recent shows and there are now a few more topics too. But the more important thing is what you can’t see. A bunch of back-end updates mean Player FM researchers can now update topics directly on the site, whereas the previous process was script-based and meant topic updates were only happening once every month or two. It will soon be possible to update topics in real-time.

Part of this is based on controls to manage multiple channels and I hope to allow users to own multiple channels too. e.g. if you don’t like Player FM’s Baseball channel, you can just make your own version of it. More to come on that front!

As always, interested to know if these features would be useful to you. Any comments ->, thanks!

Player for Android Updates: Search, Import, Bandwidth Controls, and More

Wow! It’s been two weeks since launching the apps, and Player FM received more feedback in that time than in 11 months of being online as a website, a mobile-friendly one even. Here’s a run-down of how we’ve responded to feedback so far…


Browsing is great, but not enough for people who already have a specific show in mind. You can now search for any series to subscribe to, a familiar feature to users of many other podcatcher apps. If you’ve seen the website’s search, you’ll know Player FM can do much more than this and we’ll eventually integrate more advanced search features into the app.

Import OPML

Podcasting thankfully has an industry standard for imports and exports: OPML. So it’s easy to bring subscriptions in from iTunes or other players, and now Player FM supports this directly in the app. In the event we don’t yet have a series indexed, you can submit it and we’re generally adding them within a few hours; but we’ll also automate this process soon too.

Incidentally, you can export OPML from Player FM subscriptions too. Just add .opml to your channel’s URL. e.g.

Bandwidth Controls

We’ve added several more settings to control auto-updates, and warnings about bandwidth impact of streaming 3G episodes. Furthermore, we’ve now added these settings into the signup process, so users can set up their main preferences without even going into Settings. The view below is present in the current version and will be simplified in the next.

Better Image Loading

Image loading was sluggish at times. We were using a technique to ensure low memory usage, but we needed to tweak settings further to ensure images would load quickly. But what happens when images don’t load? For example, your wifi drops out just after adding a channel. We’ve improved from those “blank images” to incorporate the series title.

And More …

Among other updates:

  • The notification can close itself now. When paused, it shows an “X” button. Simples.
  • Signup is possible in landscape mode. We’re not yet tabtastic, but it’s an okay experience now.
  • Media library option. Funnily enough, people don’t like seeing podcasts appear in their music playlists, e.g. when using Google Music. So we’ve turned this off. But since some people do need this, for integration with apps and hardware, you can turn it back on. Find the option in Auto-Download settings.
  • Bug fixes. There’s always bug fixes. And we have this ready to go for Android version 2.3 users.

A Critical Update: Please update your Player FM for Android

Quick summary

If you’re using Player FM for Android installed before Friday, May 3 (PST) (version 1.0.0 to version 1.0.6, inclusive), it’s strongly recommended to update — you can do so from the following Play link.
Important: Please update Player FM for Android

This is especially important if it’s on a mobile having limited bandwidth limits.

This bug , related to excessive image downloading, has now been fixed, along with many other related changes to reduce bandwidth, make usage clearer, and give users more options in these matters. Incidentally, you’ll also benefit from a number of other enhancements to the app, including the introduction of search and OPML importing, and an improved notification widget. Those features will be covered in a subsequent post, as this bandwidth incident warrants a post all of its own.

What happened?

I started to receive reports of excessive mobile bandwidth usage 2 days after launch (first report on Tuesday). While waiting for clarifications, I decided we should make some educated guesses and start working on it. At first, I assumed it was due to people streaming online content. In other words, a UX problem where it wasn’t clear what’s streamed and what’s played locally. For this reason, we scrambled to re-design the Settings page to make things more clear, add a warning that shows the first time the user streams an episode, and update the FAQ.

Further queries indicated this was not the issue. I thought it might be related to the periodic updates, Player FM’s equivalent of checking RSS feeds. In fact, Player FM’s cloud based approach should make this more efficient than a regular podcatcher, because the server takes care of polling all of the user’s subscriptions, and also because the server uses HTTP best practices to return quick responses and caching to prevent the same response being repeatedly fetched. However, it could still cause in the order of 10s of MB weekly downloads (similar to what a traditional podcatcher might consume); so we added further features to configure this in the settings. Users can now turn off those updates while on 3G.

However, as we looked further on Friday, we discovered the issue was more straightforward. A straightforward bug was causing images, in certain conditions to be re-downloaded on these periodic updates. We’re still analysing the details, but the fix that went live on Friday fixed this issue, and we’ve subsequently added a further update (1.0.8) that downloads pre-rendered, efficiently cached images, instead of downloading them directly from the publishers’ sites. While most publishers have efficient feeds, they still vary widely from each other and some can have problems on occasion; so it’s more efficient for us to serve them via a fast proxy. We’re using Cloudinary, the same service which has reliably cached series images on the Player FM website.

What’s next?

We’re not stopping here. If it’s practical, we’ll provide estimates on mobile bandwidth depending on the user’s settings. We already have that for storage use, where we make a storage estimate based on the user’s actual settings and subscriptions. We’ll make some of this configurable in the initial setup process too, to the extent that we can keep it simple too. And we’ll also be working this week to improve the image display process overall; the default mic icons are showing up too often, instead of the series images. It’s a well-intentioned technique aiming to reduce the app’s memory footprint and make it run smoother; but we can do better to get the best of both worlds.

We’ll also be adding in-app support for suggesting or requiring updates if necessary.

Most importantly, I’ll be far more vigilant about mobile bandwidth issues in the future. I care a lot about bandwidth usage and flexibility, which is why we launched with a lot of flexibility over download options. I’m sorry this bug arose. It slipped past us in the lead-up to launch and I’ll now be watching mobile bandwidth usage much closer.

Player FM Android App

We are launching Player FM’s Android app today.

While the website has been mobile since Day One, a native app allows us to get the best out of the mobile form factor and Android platform. For a podcast app, this means more than the usual look-and-feel factor, as important as that is. It means syncing episodes for offline listening, playing in the background [1], and controlling playback via interactive widgets and notifications.

Update: GigaOM review

Play A Topic, Any Topic

No more hunting through catalogues to find a decent show. A unique feature of Player FM is the way it aggregates by topic. Instead of just playing a single show, you can play an entire topic, and there are 300+ to choose from. Here’s how the Android topic looks in series mode, where you can jump into any series:

… and in episode mode:

You’ll find the same playable topic on the Player FM website. Starring it there will cause it to be starred in the Player FM app.

Getting Started

We’ve taken the app through several months of private beta testing to ensure it’s easy to get started, even for people who haven’t tried podcasting before. It’s possible to try the app without signup, and signup is possible via the new Google+ Login as well as conventional username/password. After signup, there’s an onboarding process to choose favorite topics:

First-time users will also see a convenient suggestions tool to help them build their subscriptions channel.

All this is sync’d with the website. Website users can just log in to find their favorites waiting for them.

Detailed views

It’s not all topics. You can still drill down to an individual series to see shownotes, stats, and all episodes in their feed:

Like a traditional podcast app, users can subscribe to a series by adding it to their channel, and syncing happens fast because the server already knows the state of each feed.

You can also view an individual episode, with shownotes:

Offline use

The user’s own channel is available for offline use. By default, the most recent 10 episodes are auto-downloaded and users can tweak this limit, as well as other download settings.

More to come

I’m excited to be getting out this 1.0 release, but there’s much more to come, so stay tuned and let me know what you’d like to see. Just submit a suggestion or mail

Special thanks to Martin and Geng for their development and design efforts, respectively. And thanks also to the beta testers who have made this a much different product.

Android app on Google Play

Please note we are not affiliated with any of the podcasts shown in these screenshots. Most days we’re lucky if we can string a sentence together and we’re sticking to our day job. And when it comes to the Android Robot, let’s just say “The Android robot is reproduced or modified from work created and shared by Google and used according to terms described in the Creative Commons 3.0 Attribution License.”

1. While Android browser, and now Android Chrome, play in the background, there’s no way to tell the operating system “hey this is important, don’t shut me down to free up memory.

New Status Blog

Running a cloud podcast app comes with the duty to keep it working, occasionally take it down for upgrades, and notify about downtimes. And you don’t want this here blog cluttered with notices like that, so meet the Player FM status blog.

Google Plus Sign-In and Sharing

Player FM now supports Google Plus sign-in and sharing.

The signup page overall got a much-needed facelift too. ABP … Always be prettifying!

Social signup will make it easier to show you what your friends are subscribed to..that’s *if( they’ve made their channel public, since it’s now possible to set make profiles and channels private (everything was previously public). I’m still talking to the G+ platform team to iron out the friend discovery capability.

The share buttons on each episode have always been powered by ShareThis, but if you hit the Google button in the middle and allow the popup, it actually works as a special Google Plus share. Which ends up looking like this:

Should you sign in with Google, Player FM will show up in your profile. Neat, eh?

On a technical note, this is actually the third iteration of Google logins for Player FM, and hopefully the last! I launched with Open ID login, mainly because the decision seemed arbitrary at the time and I wanted to get the site up and running. As I begun development on an Android app, I soon learned OAuth is the way forward for Google, so switched over accounts in a somewhat awkward process. I’ve since de-commissioned those accounts which never logged in to make the move. And just when I was completing that exercise, Google made their big Plus announcements. Having battled through the migration to OAuth, I wanted to be sure we understood the implications of this before putting the Android app in the wild. So it too will support G+ login.

It Took Eight Months, But Mobile Chrome Gets HTML5 Audio Right

Update: As noted on The Verge, this feature is now in standard Chrome for Android. Thanks Nelson for the pointer.

With the release of Chrome Beta, Android now has full-fledged HTML5 audio support akin to that of iOS, BlackBerry, and other operating systems. The new behaviour ensures that MP3s will continue to play even when the user switches tabs, switches apps, or turns off the screen.

Third-party browsers might also have done this already, but Chrome is supported on Ice Cream Sandwich (Android 4.0) and for Jellybean (Android 4.1 and 4.2), it’s become the standard browser; also, it’s worth noting that Android browser is also slow and buggy. Chrome is the future of Android HTML5 audio.

A Bug Reported, A Bug Squashed

If you’ve ever tried walking and listening to music or podcasts on your phone, you’ll pretty quickly realise you can’t do it with the phone screen on. Your pocket will quickly conspire to switch the application, hit the home button, or send a gibberish SMS to your boss.

Turning off the screen, even switching tabs, wasn’t allowed with Android Chrome. I notified the team of this bug eight months ago, shortly after Chrome came out:

What steps will reproduce the problem?
1. Start playing audio
2. Click home or long-hold to switch to another app

What is the expected result?
Audio keeps playing

What happens instead?
Audio stops.

So a web app that plays MP3s was simply not possible. There’s no way a music or podcast app, running a browser, can compete with a native app if the user needs to keep the browser app active, the current tab active, and the screen on.

There were many months of silence, during which time I tried to raise the issue through various channels. The first posting from a member of the Chrome team, some five months later, mentioned inability to raise notifications being a deal-breaker for another app (in fairness, it had been a deal-breaker all along to various MP3-playing apps like Grooveshark and Player FM).

The bug was swiftly fixed after being raised by an insider, but it looked like there would be several months wait for it to filter into the official release on Google Play. But wait no more! A surprise was in store and the timing worked well. Today, Chrome has made the savvy, developer-friendly, move of launching a separate Chrome Beta app. Like the desktop beta channel, it gives developers and early adopters early access to the latest features, and I’m pleased to see the audio bugfix is present from Day 1 of the Beta release. Hopefully, it will enter actual Chrome in a month or two.

Download Chrome Beta from Google Play and experience HTML5 audio as it should be. You can hit up Player FM, turn the screen off, and play from your pocket. None of this says a native app isn’t important for podcasts – it still has benefits like offline support – but web audio definitely just got a whole lot better for Android users.

New, Improved, Feed Importing

Happy New Year! I hope you had a good break and picked up one or two new gadgets to play with. Maybe you discovered a few new podcasts too, in which case, read on …

When I upgraded to the new look a couple weeks back, I mentioned that OPML import was missing. It’s now back again, meaning you can add feeds from other podcast apps.

This tool will show you the feed if we already have it; otherwise, it will look it up and add it to Player FM.

The new OPML import is hopefully a bit more friendly in a couple of ways. First, it auto-refreshes, unlike the original OPML, which said “it will update in a few minutes” but didn’t tell you when it was ready. Second, the OPML import doesn’t automatically subscribe you to the shows you’ve imported. You can hit the Subscribe button next to those you want to add into Player FM.

As well as OPML import, there’s also the ability to add a list of raw URLs. These can be feed URLs, but also – another new capability – you can add iTunes web pages as well as general web pages. The web page functionality relies on RSS Auto-discovery, so won’t always be supported by the publisher, but iTunes web pages should be quite reliable.