Archive for April 25, 2019

Thursday, April 25, 2019

Luminary Proxying Podcasts Without Asking


Luminary is caching 3rd party podcast MP3s on their CDN. Their iOS app doesn’t even go to the ATP RSS feed. How do you feel about Luminary redistributing ATP without permission?

Luminary’s show notes UI doesn’t have clickable links. And some shows have show notes truncated. Removing sponsors, promo codes. And call to action links to directly support podcasts.

This weird behaviour isn’t done by the app. If you look at the podcast “feed” the show notes have been edited in their backend.

This kind of reminds me of that time Google scanned books with an opt-out instead of an opt-in.

Nicholas Quah:

The Joe Rogan Experience, one of America’s most popular podcasts, has requested to be removed from Luminary, the new $8-a-month premium podcast platform, I’ve confirmed. The show explicitly cites licensing issues as the reason behind the intent to withdraw: “There was not a license agreement or permission for Luminary to have The Joe Rogan Experience on their platform,” a representative told me last night. “His reps were surprised to see the show there today and requested it be removed.”

David J. Loehr:

It’s not just copyright infringement, it seems like this would potentially affect the statistics we use in order to show advertisers what kind of downloads we have, which would drive down ad rates, etc. Right?

Marco Arment:

Yup. The podcast economy works on download counts, not RSS subscribers.

Re-hosting platforms (Spotify, Google, formerly Stitcher) prevent each download from being counted properly by the publisher, under-reporting their audience size.

That’s why re-hosting requires opt-ins.

Federico Viticci:

We have requested @hearluminary to remove @appstoriesnet from their service.

We have agreed to nothing yet our content appears to be cached on their servers and our show notes (with sponsor info) were stripped.

Their behavior is appalling and we want nothing to do with this.

John Voorhees:

Here’s the thing. @hearluminary is trying to build a spoken work subscription service that isn’t podcasting on the back of free podcasts it’s using to backfill their meager selection of original shows. If someone wants to be part of that fine, but they didn’t ask us and we don’t.

Marco Arment:

Luminary’s responding in this thread, claiming (I think) that they’re proxying, not caching — still re-serving, but making a new request to the publishers’ servers for each request.

If so, that’s still a copyright issue and still breaks most stats, which de-dupe by request IP.

John Voorhees:

Setting aside the fact that you shouldn’t have to opt out of someone scraping your show, if you have a podcast and want to remove it from @hearluminary, they have a support page with the details they want before they’ll remove it.

Marco Arment:

It’s not faster if it’s 1:1. That means for each request, a Cloudflare server must fetch the file from the publisher’s servers, then re-serve it to you. It will always be slower, even if only slightly. CDNs are only faster if they cache.

There’s also little speed difference to be had in practice even with caching, since most podcasts are already hosted on CDNs.

If @hearluminary is truly 1:1 proxying podcast files and not modifying them, they should be able to switch to HTTP redirection and achieve the same goals as whatever their problematic proxy/CDN is doing.

Marco Arment:

Proxying breaks any modern podcast stats (including IAB-compliant ones) because they require algorithms to exclude multiple requests from the same IP address.

Every proxy download will appear to come from the same small number of IP addresses, thus being undercounted.

Federico Viticci:

To clarify my stance on this: I’ve seen enough startups come and go over the years that promise to aggregate RSS blog/podcast content to “elevate the medium”. They don’t care. Creators are just a commodity to them. They never ask for consent and act like the saviors of a medium.

Marco Arment:

Confirmed, the @hearluminary podcast-masking proxy URLs are now serving HTTP 302 redirects.

Glad they responded quickly. Should’ve been done properly from the start, but at least they fixed it.

Federico Viticci:

This is better. But we’ll still be pulling AppStories due to Luminary’s behavior (we did not ask to be included in a closed platform), because they hide show notes, and because they won’t let listeners subscribe with our own, open RSS feed. We’re not interested in this business.

Update (2019-04-28): See also: Accidental Tech Podcast.

Federico Viticci:

To clarify my stance on this: I’ve seen enough startups come and go over the years that promise to aggregate RSS blog/podcast content to “elevate the medium”. They don’t care. Creators are just a commodity to them. They never ask for consent and act like the saviors of a medium.

Joshua Benton:

Now Luminary says to podcasters:

— it’s not copying your podcast files, and
— it’s no longer screwing with your stats, BUT
— but it really is killing all your show-notes links on purpose for your own safety

John Gruber:

If you want to read a particular website, you can enter the URL for that website into any web browser. In the same way, if you want to listen or subscribe to a podcast, you can enter the URL for that podcast’s RSS feed into any podcast client. And all popular podcast players make it easy to search for podcasts by name so that you, the user, don’t have to know the URL or even know what a URL is.


So is a podcast a “podcast” if it only works in one app? I’m going to say no.


So putting aside (for the moment) whether Luminary’s own original shows qualify as “podcasts”, as a podcast player, Luminary’s app is in the incredibly bizarre position of not playing several very popular podcasts that every other podcast player in the world can subscribe to and play.

Dave Winer:

We need a new name for podcast-like things that have no feeds, are locked behind a paywall, can’t be archived, cited or shared, and don’t create any kind of record.