||1 year ago|
|LICENSE||1 year ago|
|Makefile||1 year ago|
|README.md||1 year ago|
|potcasse||1 year ago|
potcasse, pronounced "pot kas" is meant to help people to publish and self host a podcast easily without using a third party service.
- rsync (could use cp but avoid recopying audio files locally).
- a posix compatible OS (Linux, *BSD, Solaris).
- some webserver to host the files.
How to use
The idea is to regroup audio files with their metadata in a directory and generate the structure that you will publish on a web server.
index.html file is also generated in the process to give an easy list without using the RSS file.
This will create a file
metadata.sh that you need to edit accordingly to your setup.
It has the following variables:
TITLE: this is the podcast title.
AUTHOR: this is the podcast author (doesn't support multiples authors yet).
SITE: base HTTP URL where your podcast will be available (for example
RSSLINK: name of the RSS feed.
IMAGE: if value is not empty, potcasse will use the file
LANGUAGE: language code (such as
en-us) that can be potentially used by some players.
You will share the link
$SITE/$RSSLINK to your listeners.
potcasse episode "Episode XX: trying something weird" /path/to/audio/file
This will create a directory episodes/YYYYMMDDhh so you can't publish more than a podcast every hour using this command. The audio file inherits the directory name.
You can force a directory name with a parameter after the audio file.
potcasse episode "Episode XX: trying something weird" /path/to/audio/file this_is_my_podcast_episode_i_want_to_name
this will create or update the
output_html directory with your audio files, the RSS file, an index.html file listing all the episodes and the logo file if any.
Real world example
My podcast feed is available at
https://perso.pw/lambda/feed.xml which is on server
I add new episodes with
potcasse episode "A made something nice" ~/Podcast/episodeXX/file.ogg then I use
potcasse gen that will refresh the directory
public_html with metadata and episodes, finally I put it online with
rsync -av public_html/ perso.pw:/var/www/htdocs/lamda/.
metadata.sh looks like this:
TITLE="Lambda Solene" AUTHOR=Solene SITE=https://perso.pw/lambda/ RSSLINK=feed.xml IMAGE=YES