Podcast

poddl is a cross platform command line podcast downloader

A podcast is rich media, such as audio or video, distributed via RSS. Podcast derives from the words broadcast and iPod. Podcasting lets you automatically receive the latest show of your chosen programme as soon as it is available. Podcasts are shows, similar to radio or TV shows, that are produced by professionals or amateurs and made available on the internet to stream and/or download.

poddl is a cross platform command line podcast downloader for batch downloading all, individual, or a range of podcast episodes from an RSS feed.

Installation

There are precompiled binaries available for Linux and Windows, but let’s build the program from source. I built the software with Ubuntu 24.04.

My test system was missing the libcurl4-openssl-dev package which is installed with the command:

$ sudo apt install libcurl4-openssl-dev

Next clone the project’s GitHub repository:

$ git clone https://github.com/freshe/poddl

Build the program:

$ g++ *.cpp -O2 -std=c++11 -lcurl -o poddl

I can now move the poddl binary to somewhere on my PATH e.g. /usr/local/bin

$ sudo mv poddl /usr/local/bin

In Operation

I can see how to use the software and the various optional arguments by issuing the command $ poddl

Available options with poddl

To get started, you’ll need to know the RSS for a podcast. There are many online services that make this process simple.

Let’s say you want to download podcasts from Destination Linux. Their RSS feed is at https://destinationlinux.org/feed/mp3/

I can download podcasts with the command, setting the output path as follows.

$ poddl https://destinationlinux.org/feed/mp3/ /home/luke/Podcasts/Destination-Linux/

Downloading podcasts with poddl

If you’re going to pass any optional arguments, you’ll need to also use the -o flag for the output path. For example, I find it useful to append the publish date to file names. The previous command then becomes:

$ poddl https://destinationlinux.org/feed/mp3/ -o /home/luke/Podcasts/Destination-Linux/ -p

You may not want to download every podcast. There are options to download a single episode, a range of episodes, or to download only a specific number of episodes. There are a few other common combinations I use such as only downloading the most recent episode:

$ poddl "https://podcast-feed" -t 1 -r -o /output-path

Summary

poddl is a useful tool if you like listening to podcasts offline. The program skips files that already exist in the output folder.

Website: github.com/freshe/poddl
Support:
Developer: Fredrik Blank
License: MIT License

poddl is written in C++. Learn C++ with our recommended free books and free tutorials.

Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Read our Comment FAQ.

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments