Although progress may be slow this month, much was accomplished during the month of September.
The most visible (or, rather, audible) change is that Tinara’s Interface component now produces audio output. When the “Play” button in the Interface is pressed, two sawtooth waves are generated, and they are sent to the default stereo audio device. This continues until the Interface is closed, or until “Stop” is pressed.
The Interface’s transport position display was operational for a time (using a temporary/throwaway implementation), but it is currently broken, so the “Rewind” button remains inoperative (pending a more “proper” transport implementation).
Much of last month’s progress was behind-the-scenes restructuring. I made numerous improvements to the build system, added command-line selection of which components should be loaded, and removed the GTK+ dependency for Linux builds of the Server and Engine components, allowing the loading of these components by the new “tinara-daemon” component, on systems without a running X server.
I am currently refactoring Tinara’s core library into a plain C API, with a separate C++ wrapper library. This approach will make the system more portable and extensible, by allowing the creation of bindings for other popular languages such as Python and Java.