gpodder

gPodder – podcast client written in Python

Last Updated on September 1, 2020

gPodder is an open source tool that downloads and manages free audio and video content (“podcasts”) for you. The software is written in Python and sports a simple GTK interface. The software package also includes a command-line interface which is called gpo. It lets you listen to podcasts on your computer or on mobile devices. The software is very mature; it’s been in development since 2005.

Installation

gPodder is a cross-platform utility running on Linux, macOS, and Windows operating systems. The developers provides binaries for macOS and Windows with the latter getting a portable version too. For Linux users, most good distributions have packaged the software. The developers of gPodder don’t produce packages for current releases citing a “… sorry state of packaging on Linux distributions, and incompatibilities even between e.g. RPM-based distros”. Hmmm.

I’m a fervent Manjaro user, and their community repository offers a convenient package for gPodder, which installed without a hitch. Normally I prefer compiling the source code of a project, but there’s no need with gPodder. As the software is written in Python, you can run it from a source checkout. That’s the way I’ve used gPodder.

In Operation

gpodder

The above image shows gPodder in operation. The interface is well-thought out and clean. I particularly like how feeds are appended by two numbered symbols. The light grey number shows the number of podcasts that have been downloaded which haven’t been listened to. The dark grey number indicates the number of podcasts downloaded for that particular feed.

When you’re starting out in the podcast world, it really helps to have a client that makes it easy to discover interesting podcasts. And gPodder is particularly strong in this area. Accessing Subscriptions / Discover New Podcasts offers a curated Top 50 podcast list, although the choices aren’t ideal. For example, the top entry “Linux Outlaws” stopped doing new shows in 2014. More useful is gPodder’s search facility which is a boon in discovering new content.

There are a few idiosyncrasies in the software. For example, new users to gPodder may think they have to download an episode before listening to it. That’s not the case. Streaming is available. By default, it’s true the stream option is greyed out. To stream an episode you must change the audio and video player (in Preferences) from default application to a specific application. In my case, I changed the audio and video players to vlc. You can then stream episodes without having to download them. Ideally, on the first run of the software, the software could prompt users to pick their audio and video player. This would remove any confusion.

There are a few inconsistencies between the Linux and Windows versions of the software such as differences in the menus. In Windows, you can access the preferences from the gPodder menu. But in Linux, you’ll need to enable the toolbar (View / Toolbar) before you can access them.

The software is very configurable, there’s lots of setting in preferences that you can tailor the software to how you like it. Besides changing the audio and video players, users can synchronize with gpodder.net, and define the time for updates. There’s also a useful slider which lets you delete played episodes after a set period or once you have listed to an episode. Users can also define their preferred YouTube format, as well as enable various extensions. And there’s also its gPodder Configuration Editor.

gPodder-Configuration-Editor

I’ve tried lots and lots of podcast clients. Some of them download episodes to unfathomable locations buried deep in hidden directories. Fortunately, gPodder takes an eminently sensible stance with downloads saved to ~/gPodder/Downloads/. Ideally, I prefer software that lets me define the download directory, if only because I don’t want precious SSD space taken up. While there’s no way to configure the download directory in the GUI itself, there is provision to set the directory via a runtime environment variable. There’s another environment variable to set the location of gPodder’s database and settings files.

gpo

gpo

gpo is the text mode interface of gPodder. gpo lets you manage podcasts from the command line without needing to start gPodder. The command-line software also automate tasks such as downloading or updating feeds.

Features include:

  • Supports RSS, Atom, YouTube, Soundcloud, Vimeo and XSPF feeds.
  • Lots of configuration options.
  • Synchronize between devices with full gpodder.net integration.
  • Easily customizable – support for user-defined hooks and plugins.
  • Extensions:
    • Desktop integration:
      • MPRIS listener – convert MPRIS notifications to gPodder Media Player D-BUS API.
      • Ubuntu app indicator – show a status indicator in the top bar.
    • Interface:
      • “Open website” episode context menu – adds a menu item for opening the website of an episode.
      • Concatenate videos – add a menu item for joining multiple videos.
      • Queue/resume in media players – add a menu item for queuing/resuming playback of episodes.
      • Minimize on start – minimize the gPodder window on startup.
      • Search for new episodes on startup.
      • Stream to Sonos – stream podcasts to Sonos speakers.
    • Other:
      • Rockbox Cover Art Sync – copies cover art to Rockboxed medial player.
    • Post download:
      • Convert audio files – transcode to mp3/ogg formats.
      • Convert video files – transcode to avi/mp4/m4v formats.
      • Convert video files to Rockbox-compatible MP4
      • Normalize audio with re-encoding.
      • Remove cover art from ogg files.
      • Rename episodes.
      • Run a predefined external command on download.
      • Download .srt subtitles for TED Talks Videos.
      • Tag downloaded files using Mutagen – add episode and podcast titles to mp3/ogg tags.
  • Manage your subscription list.
  • Import from OPML1 file.
  • Export to OPML1 file.
  • Use a HTTP proxy server for downloading episodes and feeds.
  • Internationalization support.

The software needs Python 3.5 or later, as well as Podcastparser 0.6.0 or later, mygpoclient 1.7 or later, and the Python D-Bus bindings.

Summary

gPodder is a very useful tool for podcast enthusiasts. It makes lots of sensible choices and doesn’t try to reinvent the wheel. For example, it lets media players handle playback. The project has also written a particularly concise yet informative manual. With a few improvements to make it beginner friendly (streaming — mentioned earlier) and better keyboard support, it would be my preferred podcast player.

Website: gpodder.github.io
Support: Mailing List, GitHub code repository
Developer: The gPodder Team
License: GNU General Public License v3.0

gPodder is written in Python. Learn Python with our recommended free books and free tutorials.

gPodder features in our Group Test: Best Podcast tools. Learn about other excellent, free, open source podcast software.

1OPML is an acronym for Outline Processor Markup Language – often used as the import/export format for RSS feed reader and podcast programs.

Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments