Software
Browse all details of the software used for the Vibravox project.
Browse all details of the software used for the Vibravox project.
The frontend, built with the tkinter library, consists of 9 sequential windows. The user interface is duplicated on a Wacom tablet used by the participant in the center of the spatialization sphere. Multiple threads were required to allow simultaneous actions, such as updating a progress bar while waiting for a button to be clicked.
The backend part is comprising:
A dynamic reader implemented with the linecache library to avoid loading the entire corpus in memory when getting a new line of text.
A cryptography module using cryptography.fernet to encrypt and decrypt the participant identity, necessary to assert the right to oblivion.
A ssh client built with paramiko to send instructions to the spatialization sphere when playing the sound, changing tracks, and locating the reading head with jack_transport and ladish_control bash commands.
A timer with start, pause, resume and reset methods.
A non-bocking streaming recorder implemented with sounddevice, soundfile and queue libraries.