Make media enclosure link/info visible in feed view (for podcasts)

In e.g. podcast feeds there is usually a link to audio file in tag.
E.g. http://geekbox.libsyn.com/rss has

http://traffic.libsyn.com/geekbox/Gee…" />

Firefox just adds that info below item descriptions, like http://i.imgur.com/35Gvn.png which is perfectly satisfactory.

3 Likes

Finally committed this. Sorry for the long wait. Media should now be able to be played directly in the Feed view. Let me know if you’d prefer a link instead (or both!)

I personally believe links will have to be added in some way as well. Now it still doesn’t tell me about other types of enclosures. RSS allows for any file to be attached to any item. And any number of them. Torrent sites make use of this (example) as well, if you want to be able to keep your downloads of series up-to-date. (Legal series only, mind you ;-))

http://camendesign.com/rss adds its photographs as enclosures as well. Sometimes I might want to be able to access these.

Maybe even add a ‘download as archive’ function for when there are several enclosures? (See ‘frozensolid’ in Kroc’s feed.)

I added a download link for audio, but I didn’t consider other types of enclosures, since I wasn’t exactly sure what their types were. I’ll just go ahead and add every type I find, and if it’s audio it gets an automatic audio tag.

I didn’t consider other types of enclosures, since I wasn’t exactly sure what their types were.

Yeah, that’s what made me comment after I tested for enclosures. I guess I know what to test for after my years of using a multitude of different feeds with different features.

MIME types are required for enclosure elements so just test for ‘audio/’ on the type attribute and you will know when to offer an audio tag. This could also be used to display small file-type icons (like h5ai does in directory listings) for non-audio entries.

Atom feeds support enclosures in the form of rel=“enclosure” which is burried inside the rel attribute specification. Atom does not require the type attribute on these links, which is a bit of a let down. But you might want to build in support of these in NewsBlur either way.

Should really get myself a NewsBlur premium and start testing even more feeds. (Probably will upgrade to premium around the holiday season.)

I refactored a bit and added support for both inline audio and images, as you can see from this commit: https://github.com/samuelclay/NewsBlu…. I’m also showing download links to everything found in the enclosure, so if you find that another type (say, video) should be embedded, let me know.

(BTW, you should follow me on GitHub: http://github.com/samuelclay. You get to watch the development happen in real-time, AND I live off the props that following me would give. And since you clearly know what you’re talking about, the code may give some insight into what’s actually happening.)

Followed and watching the NewsBlur development. (I thought I was already doing the latter but apparently not.) The reason I haven’t been active with the project on GitHub is because I’m not a Python developer. I do mostly front-end web business and PHP on the back-end.

New enclosure type, like so: (feed)

<enclosure type="video/x-m4v" url="http://www.29content.com/29guide/29G500_days.m4v" length="19594350"></enclosure>
Would still like for NewsBlur to show all unknown types in the form of a link list.

Is this ever going to happen? I love the player for the audio feeds I subscribe to, but where it would be really nice is for video feeds.

Here’s an example of a video feed from my subscriptions:

http://www.soundnotion.tv/media/rss/s…

I’d like to see the length of a podcast episode which I follow via Atom/RSS within NewsBlur in form of HH:MM:SS.

Not, because I listen via NewsBlur (which I don’t) but I want to know if I want to switch over to my Podcatcher and download the episode there.

The length is crucial to me here, because for an interesting topic that takes a couple of minutes, there is a higher chance that I want to download it compared to a long-run where I don’t have the time right now.