Practicing Yoga with Linux!

Setting Up Triangle - Trikonasa - Bikram Yoga

–BYCA Guest Blog Post–

The author is a scientist, musician, and occasional computer programmer based in Lansing, MI.

He is a founding member of “Los Tres Yogamigos”, BYCA’s premiere yoga buddy challenge team.

Kapalbhati Home Practice Bikram Yoga Computer Program

I suffered from chronic back pain for fifteen years. Episodic attempts at cultivating a yoga (or Pilates, or Alexander technique, or self-medication) practice would temporarily ease this pain, but it was not until I moved to Lansing and had the opportunity to practice the 26+2 sequence daily at Bikram Yoga Capital Area (BYCA) that I was able to make the (hopefully somewhat permanent) changes to the structure of my spine that were necessary for me to sit comfortably and live without chronic pain.

Life is taking me away from mid-Michigan however, and I am currently preparing myself for a future of solitary practice punctuated by occasional trips to the nearest Ghosh-lineage yoga studio (which will be many miles away from my future home). Ultimately, I would like to build up the discipline to practice a 26+2 or equivalent routine alone and in total silence. But in the meantime, I have been supplementing my daily 26+2 practice at BYCA by practicing selected asanas at home using customizable audio instructions.

These instructions are generated from a Python script that I wrote, and have recently released with an open source license. The script is admittedly primitive and uses a text-to-speech tool that is not particularly aesthetically pleasing, but it is, after all, only a temporary solution. If you are a Linux user, and you think that you might find this tool to be useful for your home asana practice, then read on!”

Introducing psetcounter: a primitive open source python script for creating customized audio instructions for home yoga practice


First of all, the script has been tested with Python 2.7.13 and Ubuntu 17.04, although it should run on any Linux system with Python and sdf-say libraries installed. The script can be downloaded here:

In addition to the script file,, the github repository also contains a sound file, bell.wav, which may be downloaded as well. If the script is run from a directory that also contains bell.wav, the script will play a bell sound instead of instructing the user to relax in savasana with a computerized voice. Once the script is downloaded, it would probably be best to take a look at the customizable parameters which are listed in the help message. This can be done by opening a Terminal window, changing the directory to the location of the downloaded script file, and executing the following command:

python -h

The script can then be used to generate audio instructions for a set of asanas with each of several parameters customized by including the appropriate arguments. For example, to hear audio instructions for a set of 4 asanas, each held for 20 seconds and followed by 10 seconds of savasana, the following command can be executed:

python -n 4 -l 20 -b 10

Audio instructions for multiple sets with varying parameters can also be executed sequentially at the command line by stringing them together with a semi-colon. In doing this, it is important to suppress the valediction in non-terminal sets of asanas using the “-v” flag. For example, for a set of two asanas, each held for 10 seconds, followed by a second set of two asanas, each held for 20 seconds, the following command can be used:

python -n 2 -l 10 -b 5 -v; python -n 2 -l 20 -b 5 -i 3

Good luck, and please send feedback and suggestions directly to the github page above!