Request for Comments: The Future of Mopidy-Podcast

Dear all,

I’m in the middle of updating/refactoring/finally making sense of Mopidy-Podcast (which is a Mopidy extension for searching and browsing podcasts, in case you haven’t heard of it), and somehow I’m not quite sure which direction this project should take. Especially its extensibility with multiple (well, actually it’s two) pluggable “directory extensions” keeps getting in the way, lately.

So, let me pose a question to you: Do you really use Mopidy-Podcast-iTunes? Or Mopidy-Podcast-gpodder.net?

Me, I’m usually listening to the same three or four favorite podcasts of mine, and if I discover a new one that sounds interesting, I’m okay with adding it to podcast/feeds (don’t worry, Mopidy-Podcast v2.0 will support OPML so you’ll also be able to import your favorite feeds from other Podcasting clients). I’m hardly ever browsing/searching iTunes for something new (at least not on Mopidy), let alone gpodder.net. So, unless there’s an outcry in this forum, I’ll consider letting the directory extensions like Mopidy-Podcast-iTunes and Mopidy-Podcast-gpodder.net go, and concentrate on making Mopidy-Podcast a better Podcasting client in it’s own right, e.g. improve search capabilities, add OPML import, maybe (later) automatically download episodes, etc.

Please let me know what you think of this, any suggestions are more than welcome!

P.S.: Recent bad karma with otherwise completely unrelated commercial Web services did have some influence on this :wink:

I’m not a big user of any of these, but I think the proposed way forward makes a lot of sense. Most users probably prefer using the web to discover new podcasts and only need a proper way to listen to them.

Thanks! Of course, this would also mean having two Debian packages less to support :wink:

Hi tkem!

I want to step up as a current user or Mopidy-Podcast-iTunes :smiley:. Anyway, I find your thoughs quite right and I think that refactoring, even broking compatibility with extensions, is the move you should do now. Later on, the extensions can be rebuilt either by you or any other in the community.

I use ivoox.com as my main podcast source - I think it might be only popular in Spain or around, since I haven’t seen many info in english/american forums -. The thing is that many spanish podcasters uploads to both ivoox and itunes, so I use the podcast-iTunes extension to find those podcast I usually find in ivoox on my phone.

In fact, I only attend to two or three different podcast, and I haven’t added them to the feeds for immediaty/laziness. If I could just “share” the content I browse on my phone to mopidy on my RPi then I wouldn’t even need that.

Some weeks ago, I though about making a mopidy-podcast-ivoox extension, but ivoox doesn’t seem to have a public API. While writing this, I have found an unofficial node-ivoox project so maybe I can give it a try. Anyway, imho, the better and “free of charges” you improve the mopidy-podcast main extension, the better it will be for all the mopidy environment.

Hope that helps on your decision.

@ismailof: Thank you very much for your feedback! I really appreciate it!

Your usage pattern resembles very much what I expected: people browsing/searching podcasts hardly do so using Mopidy (well, I don’t for sure). OTOH, having to mess with the config just to get your favorite feeds into Mopidy is not the best solution, either.

Current plans are therefore to support some sort of OPML import in Mopidy-Podcast v2.0. Most desktop Podcast clients support exporting your subscribed podcasts to an .opml file, which is an open XML format. Even some Podcasting apps for mobile phones do, letting you save your favorite feeds as an .opml file to SD card (or mail it to yourself, save to your Dropbox/Google Drive, post it on Facebook, etc.). The idea is that you’d simply drop that file into a (configurable) directory on your Mopidy server, and Mopidy-Podcast would use that for browsing (and eventually download the podcasts in the background and index them so they can be searched, too). No more messing with the config or having to restart Mopidy.

Sounds good?

Cross-posted from https://groups.google.com/forum/#!forum/mopidy:

Mopidy-Podcast is a Mopidy extension for browsing and playing
podcasts.Version 2.0 is a major rewrite, aiming for simplification and
easier maintenance. Users of previous versions will find some
features missing in this release, but without this it may have
ended up as one of the far too many “orphaned” Mopidy extensions
out there…

The biggest improvement from a user perspective is probably newly
added support for OPML files. Most podcasting clients, including
iTunes, can export subscribed podcasts in OPML format. To
migrate your favorite feeds from your “other” Podcast
application, just export as “Podcasts.opml” and drop that file
into Mopidy-Podcast’s config
directory (~/.config/mopidy/podcast when running Mopidy from
your user account, /etc/mopidy/podcast when running Mopidy as a
service). Note that when installing from PyPi, this directory
may need to be created manually.

The downside is that configuring your “feeds” in mopidy.conf is
no longer supported. Sorry for the inconvenience, but supporting
both would have seriously complicated things. If you’re not
already using a Podcast client with OPML export capabilities,
OPML is a rather simple format and can be easily created using
your text editor of choice. See the OPML 2.0 specs
[http://dev.opml.org/spec2.html] for more information and
examples.

Mopidy-Podcast is available from PyPi
[https://pypi.python.org/pypi/Mopidy-Podcast/], documentation is
on Read the Docs
[http://mopidy-podcast.readthedocs.org/en/latest/index.html] and
source code is available on GitHub
[https://github.com/tkem/mopidy-podcast].

Mopidy-Podcast’s companion extension Mopidy-Podcast-iTunes,
which lets you search and browse podcasts on Apple’s iTunes
Store, has also been upgraded. This is now a proper Mopidy
backend extension, so it uses a new top-level root directory for
browsing the most popular podcasts on iTunes.

Mopidy-Podcast-iTunes v2.0.0 is also available from PyPi
[https://pypi.python.org/pypi/Mopidy-Podcast-iTunes/] and GitHub
[https://github.com/tkem/mopidy-podcast-itunes]

Enjoy,Thomas

1 Like

Hi @tkem! I’m getting a lot of trouble to convert my podcast list to OPML format. Online converters seem to be down all at a time. I do not use iTunes and my podcast app/directory (ivoox.com) has not that feature.
At most I’ve been able to export each of the podcast to RSS. Is it still possible to use that format? If so, where to add to configuration?

Another question I’m wondering is if it is possible to control the podcast list in Mopidy-Podcast-2.0 dinamically (from command or mopidy API) so I could add that functionality to my client. Otherwise I think I will have to mess with OPML format kindof “manually” and make the client edit the opml file.

Opml files are actually quite simple to create with a text editor; just put the link to the RSS file in the xmlUrl tag:

<opml >
<body>
<outline text="Learning about Python" type="rss" xmlUrl="http://www.awaretek.com/python/index.xml"/>
</body>
</opml>

Thanks for the explanation!
OPML strtucture seems pretty simple once you’re told the importand fields :slight_smile:
I finally managed to do it using a Chrome extension, but for future updates I’ll use this as a reference

I guess this should be added to the documentation, then :wink:
I originally thought people would figure it out themselves from the link to
the OPML spec, but adding a simple example like this would probably make
things easier for upgrades from Mopidy-Podcast 1.x.