James McKay

Sermons Encoder

This program converts lossless audio files into a set of smaller audio files with certain presets, including ID3 tags. This is used to encode church sermons from the original recording into MP3 and Opus files in order to be put onto the church website.

The motivation for the program was personal, as I wanted a system that worked better than the system that I was currently using by combining several steps into one step (resulting in a quicker process that is easier for others to follow) and having a solution that would work on both Linux and Mac (the process was using iTunes for lots of the steps.)

The program has several features:

This program has two major versions. The initial version was written is PHP and the latest version is written in Python


The main screen of the sermons encoder

The version is created in PHP, HTML, Javascript (AJAX) using a small MYSQL table to store the latest sermon series and the date that they were used. A bash script is created by PHP and run in order to convert the files.

Since developing the program, a few issues developed that hindered the use of the program.

The installation difficulty arise due to incompatibilities that come as a result of the target platform being a PPC based OS X machine.

The program is not ready for release due to the user's input bot being validated due to the need being absent, and the difficulty to setup the system to work correctly. The people that use the program are trusted, and the program can only be access locally on the computer.


The main screen of the sermons encoder

This version was written using Python 3 and tkinter. The encoding is done by calling ffmpeg, lame and oggenc at the appropriate times. As long as the listed programs are installed, it is able to be run directly from where it is. I have also created a Mac Application in order to improve the user experience on OS X.

Downloads can be gotten from the github release page