Podcaster is a command line podcast player. It uses mpv as media player.
How it works:
- read podcast RSS feeds from
~/.config/podcaster.conf
- parse them using the feedparser library
- user selects podcast and episode using a curses interface
- extract audio file URL via youtube-dl
- play via python-mpv
For a more versatile and feature-complete program, check out podcast-player or castero.
python
, version 3.6 or laterpip
as package manager for Python- Python packages are automatically installed via
setup.py
libmpv
must be available forpython-mpv
to worknotify-send
must be available for error notifications
Debian/Ubuntu:
apt install python3 python3-pip libmpv1 libnotify-bin
git clone [this repository] cd podcaster/ pip install .
Add URLs to RSS feeds of your favourite podcasts to ~/.config/podcaster.conf
like this (comments and blank lines are optional):
# Python-specific https://realpython.com/podcasts/rpp/feed http://feeds.soundcloud.com/users/soundcloud:users:82237854/sounds.rss # import this # AI https://lexfridman.com/category/ai/feed/ # General https://feeds.simplecast.com/XA_851k3 # stack overflow podcast
Then use podcaster
from the terminal.
- Selection menu
- up, down, j, k: navigation
- return, right, l: select
- escape, left, h: back
- q: quit
- Audio player
- left, right, h, l: forward/backward seek
- space, p: pause
- up, down, j, k: volume up/down
- [, ]: playback speed up/down
- espace, q: quit
- Should work on any Linux system, tested on Ubuntu 20.04
- Might work on Windows, besides the desktop notification (this might be useful)
- The podcast list file is specified in
config.py
- The curses interface is not very elaborate and quite fragile. I might fix that later. Pull requests are welcome