RTMix
<< | table of contents
| >>
6. Development
This chapter covers the current development status including the ChangeLog of past fixes and improvements, TODO list for the future versions, and the information about bug reporting and other feedback.
6.1 ChangeLog
v.0.72 rev.a (3/14/2003) -- Maintenance Release
Fixed install error message that was caused by two of the Powertools tutorial scriptfiles having "&" in their name.
v.0.72 (3/13/2003) -- Maintenance Release
Fixed bug where parsing 'change' values would cause segfault when targeting non-existing real-time event.
Corrected 'change' value assigning and error reporting.
Made transport controls visible even when verbose control is off.
Included 'verbose' option which toggles verbose run-time output.
Annotated verbose and midi logging options as 'capable of hindering factors to real-time performance'.
Made verbose option automatically be enabled when midi logging is activated.
Added more scriptfile examples.
First release including Powertools tutorials.
Removed dependency on "pthreads" and ported main timer to Qthread.
Added filtering to the sys-calls triggered by the continuous MIDI controllers, they can now happen max 20 times per second (this is to minimize CPU overload due to external sys call volume).
v.0.7 (3/10/2003) -- Major Release
There is simply a huge number of fixes and improvements. I'll do my best to list them all. Here they are, in no specific or organized order:
Internal error widget has been removed.
External Error Log now became a general purpose Console.
Added visuals for monitoring of data flow at the bottom of the external Console.
Sped-up the start-up time by 300-400% (literally :-)
Fixed bug where global transport events did not execute on a local client causing many scripts to fail.
Reordered Tabs on the main widget.
Made External resizable widgets resizable only when performance was not in session (in order to minimize cpu-utilization by RTMix during the performance settings).
Fixed Metronome weird resizing bug. Now when the meter is changed, the widget resizes appropriately.
Fixed color coding errors for the notification interface.
Re-arranged the settings saving routines.
Added new parameters to the config file.
Added networking authentication code and made it configurable in the settings tab.
Added filter for events in order to disable potentially malicious sys-calls to be executed.
Fixed gazillion (literally :-) bugs in the parsing engine.
Standardized error and logging output messages.
Color-coded Console messages.
Added "go-to-error" feature.
Implemented MIDI protocol as a separate thread. Users can now use MIDI for real-time events, as well as MIDI routing.
Provided new tabs in the settings menu that enable user to specify the appropriate MIDI port.
Implemented OSC (Open Sound Control) for inter-app communication.
Implemented generic OSC network communication.
Implemented OSC routing for the purpose of sharing the MIDI port.
Enabled variables to be included in notification interface messages.
Enabled multiple instance of variables and MIDI parameters to be included in functions, assigns, and events (sys calls and others).
Fixed metronome's inconsistent resizing.
Fixed bug where BPM's on the metronomes 2-4 were corrupt.
Jump events now interpret events they jump to in a proper fashion.
Added this full-fledged HTML documentation (Yay!)
Included more tutorials and provided better annotations for the older ones.
Made apply button disabled in the settings menu, unless something was changed.
Made MIDI monitoring and MIDI logging buttons disabled by default, unless the real-time monitoring is enabled.
Added color-coding and more verbose descriptions of the real-time events in the table.
Enabled differentiation between keyboard presses and releases and their mappings to the real-time events.
Added line-number tool for the editor.
Fixed behavior of the probability parameters.
Annotated more parser's warnings.
Implemented protection against infinite recursion scripts.
Other stuff that I cannot think of at this moment.
v. 0.52 rev.b (12/16/2002) -- Maintenance Release
Yet another fix for the KDE-less build (thanks to Richard Green for the bug report)
v. 0.52 rev.a (12/1/2002) -- Maintenance Release
v. 0.50 (11/1/2002) -- Maintenance Release
v. 0.48 (9/15/2002) -- Major Release
v. 0.16 (1/29/2002) -- Major bug fixes
The previous "bug-fix" was actually more
of a bug-maker than a fixing release, rendering
v.0.15 useless. Parser had
problems parsing data correctly thus failing to time events
correctly. Thus
fixes included in this version are:
Parser now WORKS and has been tested thoroughly
Error checking is now vastly improved
When user put "&" at the end of
their [do] parameter in the event, it caused the program to fail to execute
the syscall, due to fact that "&" was hardwired and automatically added by
the app, resulting in a <syscall> &&, which then opened-up a
sub-shell that did not understand any subsequent commands resulting in errors
like this one:
sh: -c: line 1: unexpected EOF while looking for
matching `"'
Now the app detects whether you have a "&" or not and
adds them appropriately.
Most of the "WhatsThis" docs have been
added and extended making the documentation
more complete
v. 0.15 (1/7/2002) -- bug fixes
The only fix was to improve the parser
error recognition. Now you have to bracket-off
the values with both curly
brackets and quotation marks, for example:
text ( [at]= {"0.4"}
[say]={"Hello!"} );;
There are other cosmetic changes but nothing major.
v. 0.1 (12/10/2001) -- Initial Release
Welcome to my first GUI audio-related application!
6.2 Future
v0.8
Add additional external windows: secondary absolute timer and notification interface (for Xinerama).
Add right-click menu to the editor for faster event-inserting.
Add variable monitoring widget.
Add more MIDI ports (4 max).
Let the user choose between "allowable" events and "restricted" events by listing them in settings menu.
Make process monitoring better by using QProcess, rather than a syscall.
Make main window resizable.
Add resizable splitters on the main widget.
v0.9
Make sure that accelerators work throughout the application.
Add File menu toolbar.
Enable saving window sizes and positions.
v1.0
Clean-up bugs.
Clean-up code.
v1.x
Embed the RTCmix?
v2.x
Trackview?
6.3 Bugs, Comments, and Suggestions
RTMix is continuously being improved. However, often it is not the development of new features, but rather the bug-hunting that steals a lot of time. Therefore any comments, suggestions, and ESPECIALLY BUG-REPORTS are greatly appreciated. Together we can make RTMix better -- if you encounter a bug or desire a particular feature, simply e-mail the author and be sure to include all pertinent information in order to expedite its resolution and/or implementation.
<< | table of contents | >>