Skip to main content

Generate RSS feeds from media files in a directory

Project description

genRSS

genRSS is a tool to create an RSS 2.0 feed from media files in a directory. Files can be looked for recursively in subdirectories and can be restricted to a given set of extensions.

Installation

pip install mutagen eyed3 generss

Determining file duration

To include media file duration in your feeds (using the <itunes:duration> tag), genRSS use tries the following options.

  • mutagen: a python package installed alongside genRSS that can deal with audio and video files.
  • sox: can only handle audio files, runs faster than ffprobe.
  • ffprobe: normally installed with ffmpeg, can deal with audio and video files but it is the slowest of the three options.

In any case, if genRSS fails to get media file duration with one tool, it'll fall back to the next one. If none of these tools is installed or if file duration cannot be obtained, no <itunes:duration> tag will be inserted.

Usage options

  -d DIRECTORY, --dirname DIRECTORY
                        Directory to look for media files in.
                        This directory name will be appended to the host name
                        to create absolute paths to your media files.
  -r, --recursive       Look for media files recursively in subdirectories
                        [Default:False]
  -e STRING, --extensions STRING
                        A comma separated list of extensions (e.g. mp3,mp4,avi,ogg)
                        [Default: all files]
  -o FILE, --out FILE   Output RSS file [default: stdout]
  -H URL, --host URL    Host name (or IP address), possibly with a protocol
                        (default: http) a port number and the path to the base
                        directory where your media directory is located.
                        Examples of host names:
                         - http://localhost:8080 [default]
                         - mywebsite.com/media/JapaneseLessons
                         - mywebsite
                         - 192.168.1.12:8080
                         - http://192.168.1.12/media/JapaneseLessons
  -i URL, --image URL   Absolute or relative URL for feed's image [default: None]
  -M, --metadata        Use media files' metadata to extract item title [default: False]
  -t STRING, --title STRING
                        Title of the podcast [Default: use directory name as title]
  -p STRING, --description STRING
                        Description of the podcast [Default:None]
  -C, --sort-creation   Sort files by date of creation instead of name (default)
  -v, --verbose         set verbose [default: False]

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

generss-0.3.0.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

generss-0.3.0-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file generss-0.3.0.tar.gz.

File metadata

  • Download URL: generss-0.3.0.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.6

File hashes

Hashes for generss-0.3.0.tar.gz
Algorithm Hash digest
SHA256 d92b634572775ce08d9a3534a38ee8744047cdf2af6aed144d0c4f2b2fb152fa
MD5 c59205c391193d86f9db203ac6e8c4cd
BLAKE2b-256 477cd7a475fb7df59d9a6d8de7a3432cbf2369c79d43a57860b2353465593934

See more details on using hashes here.

File details

Details for the file generss-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: generss-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.6

File hashes

Hashes for generss-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f4a01e9de225bd8b8ee97f8b716378527660139def646e48767a60bec1d12451
MD5 d5cd006b69201a69dd55f582e1bef1a4
BLAKE2b-256 5985f779c6d3c827ee971f6253111d4579da4ce6a5730e81654b7e5532c23183

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page