History of Changes: Difference between revisions

From STX Wiki
Jump to navigationJump to search
Line 26: Line 26:


* Added pole-zero to {{Viewer2}} Sectioner
* Added pole-zero to {{Viewer2}} Sectioner
* Bugfix: pane sizes are no longer reset in {{V2}} when sectioner settings dialog is closed.


===4.2.9===
===4.2.9===

Revision as of 11:47, 10 November 2015

Current Version: 5.0.6

Release Date: unreleased

New Features

  • The speed of audio playback can now be set in the project interface
  • The menu shell item has been given the alias 'DIALOG' and will now be refered to as such in the documentation (r8578)
  • Support for Windows 2000 has been removed

Bug Fixes

  • The settings should update correctly (fixed bug from r7596 introduced in STx 4.0)

Older Versions

4.2

Pole-Zero SPAtom and EVAL methods are now available and are integrated into the Spectrogram and Parameter viewer.

4.2.x

Released: ?

  • Added pole-zero to Spectrogram & Parameters Viewer Sectioner
  • Bugfix: pane sizes are no longer reset in when sectioner settings dialog is closed.

4.2.9

Released: 16 October 2015

  • Bugfix: saving to PNG working again

4.2.8

Released: 5 October 2015

  • Bugfix: the pole-zero method spectrogram overlay is now working correctly.

4.2.5

Released: 30 September 2015

  • Feature: the pole-zero method is now available as an overlay in the spectrogram and parameter viewer's spectrogram graph. Note however, that this is not bug free, so please wait for 4.2.6 if you're interested in this feature.

4.2.4

Released: 10 September 2015

  • Bugfix: added missing Visual C++ 2013 Redistributable Package

4.2.3

Released: 26 August 2015

  • Metasegment size modification now locks modification mode

4.2.2

Released: 15 June 2015

  • Viewer print font now legible

4.2.0

Released: February 2015

  • Pole-Zero SPU and EVAL methods
  • Multiple bug fixes

4.0

4.0.0

Released: 2012

3.9

3.9.4

Released: 15th October 2009

  • BUGFIX: real-time analyser drawing more smoothly

3.9.3

Released: 16th September 2009

  • BUGFIX: sequences now being saved.

3.9.2

Released: 30th July 2009

  • BUGFIX: segments no longer duplicated in un-linked datasets when importing metadata.
  • BUGFIX: user-defined amplitude range working in waveform viewer
  • BUGFIX: spectrogram amplitude floor now correct after using settings dialog
  • BUGFIX: recorder application now recording

3.9.1

Released: 3rd July 2009

  • BUGFIX: cmenu check/uncheck working for consecutive items
  • BUGFIX: text files items and the load command can now read files encoded with an "FE FF" byte order mark (encoded in UTF-16BE). The error message "unsupported byte order mark" is returned if a UTF-32BE or UTF-32LE byte order mark is found.Supported encodings specified using a byte order mark: UTF-8, UTF-16LE, UTF-16BE
    Other supported encodings:windows-1252
  • BUGFIX: wave files with chunks defined after the data chunk now have the correct length.
  • BUGFIX: saving dataset faster
  • BUGFIX: "load soundfile" options should no longer conflict with each other
  • BUGFIX: prevent stack overflow in XML files with many siblings (~ 20000)
  • BUGFXI: closing rtanalyser whilst it is running now exits shell correctly (without leaving ghost process).

3.9.0

Released: 15th April 2009

Graphical User Interface

General

S_TOOLS-STx now supports all fonts available on the host system.

Comboboxes in ASegTemplates can now be made editable using the flag /E.

You can enable/disable runtime error reporting in the Log Control dialog. It is disabled by default, and should only be enabled if you are having problems with S_TOOLS-STx.

Workspace

The segment list can now be edited in the Workspace.

A summary of existing parameters can now be displayed in the segment list (see the Display and Layout Settings dialog).

The Workspace Detail cells can now display text in multiple lines (see the Display and Layout Settings dialog).

Spectrogram & Parameters Viewer

The Spectrogram & Parameters Viewer can now display a harmonic cursor in the spectrogram graph.

The Spectrogram & Parameters Viewer spectrogram method Wavelet has been extended, and a new Cohen's class distribution method has been implemented.

An amplitude legend is now available in spectrogram plots (via the context menu).

DSP

The band-pass filters now have a window parameter.

Toolbox

The toolbox AutoSeg is available in Spectrogram & Parameters Viewer (if loaded) to automatically segment using peaks, clicks or pauses.

A range of Klatt speech synthesis and resynthesis toolbox functions are available.

The toolbox file 'SegmentImEx.sts' implements toolbox functions to import and export segments in the PRAAT file format. These functions are available in the Workspace.

Scripts

A script specifically designed for transcription and annotation has been developed and included in the default installation of S_TOOLS-STx. The script can be found in the script directory in the file SPExL.sts. There is also a new entry called transcription in the Workspace script tree, which calls the default segmentation routine. The SPExL macro documentation is still being written.

Macro Language

General

Modal window handling has now been moved to the NEW DISPLAY command. Use the option /O=$#ownerDisplay to set the owner (which is behind the new display in the z-order. You may also use the option /Modal to specify that the owner should be disabled whilst the new display exists.

The NEW command can create objects which are protected from deletion (option /U|u).

The command STXCONSTANTS now supports the keywords BITMAPS and BUTTONS.

The command TRANSLATE can now translate the contents of a variable or table.

The command EXIT -xLevel now returns to the first macro defining the label label "OnExitAll" or to the toplevel macro (1st called macro) (rather than to the first macro where the variable #EXITLEVEL = xLevel).

The new command TOKEN, an extended form of the command WORD, can tokenise a string using the specified delimiter.

The new command TRIM can be used to trim characters from the beginning and end of a string.

The new command QUOTE can quote all special characters in a string.

The new command LINELENGTH, although similar to LENGTH, returns the length of a line including delimiters.

The NAME command can now check XML attributes and S_TOOLS-STx XML IDs for syntactical validity. The NAME command can also return a UNC file name for a file on a mapped drive. This is useful, for example, for making DataSets portable in a network environment.

The new command ARG can be used to retrieve macro arguments.

The IREF command supports the option /I to simplify and suppress certain error messages.

The global variable @REPORTRUNTIMEERRORS can be set to 1 to display a dialog every time a error occurs when processing a command. Many commands can now take an option specifying that warnings should be generated, rather than errors (DRIVE, LOAD, UNLOAD, SET file LOAD|SAVE|STATUS|DELETE|RENAME|COPY|POSITION), READ, SEGMENT). If set to specify warnings, they will not cause a runtime error.

The READ command (and its variants READSTR, READTAB and READVAR) have a new option /E which can be used to escape characters in the input from being used as separators.

Format strings can now add a new line character (\n), using the tag %n. The standard C format tags %x and %X are now supported.

The KEYWORD command now supports the option /F which prevents abbreviations from being found and /C to make the comparison case sensitive.

The new commands SYSTEMCALL and SYSTEMCALLX are variants of SYSTEM and SYSTEMX which return warnings rather than errors on failure.

The command TGET can now return elapsed milliseconds, when the new option /ms is used.

The NAME command, when used with the new UNC subcommand can convert a file path on a mapped drive to its UNC equivalent. This help keep project files portable when accessed from multiple computers (E.g. when the z drive is mapped to \\server\data, the command "name 'z:\ds.xml' unc" will return "\\server\data\ds.xml".

The READ commands have a new option /T which prevents arguments from being trimmed.

The macro WINDOWSIZEDLG can be used to allow a user to set a window's size (width and height in pixels).

SPAtoms

The new SPAtom MIXALL mixes up to eight input arrays/vectors into an output array/vector with gain scaling.

The new SPAtom WLANA performs a general wavelet analysis, and the SPAtom CCANA implement a Cohen Class distribution.

The SPAtoms PVANA and PVSYN no accept a windowing function parameter.

The new SPAtom KLATTSYN can be used to generate synthesised speech.

EVAL command

The EVAL command has the following new subcommands:
formants - a new formant tracking algorithm.
limit, limitlow, limithigh - limits values to within a range of values.
min, max - can receive more than one parameter.
cdot, ctrn, conj - complex dot product, matrix transposition and conjugation.
f0ac - F0 detection using autocorrelation.
The EVAL command now supports numerical (e.g. >=), logical (e.g. &&) and ternary (e.g. eval $#a > $#b ? $#a : $#b).

The Macro Library

The DATASETCMD has a new subcommand AUTOSAVE with which you can turn the DataSet autosave feature on and off.

The GRAPHSETUP macro.

The new CGRAPHSETUP command GRAPHLEGEND displays an amplitude legend in a spectrogram plot.

The new CGRAPHSETUP command GETCOLORPALETTE retrieves the print or screen palette in an extended table.

The new CGRAPHSETUP command GETPROFILELIST returns a simple table with a list of color profiles defined in the settings file (S_TOOLS-STx INI).

Classes

BXMLDoc class

The SETELEMENT function can now take a table containing attribute/value pairs.

CMenu class

The new CMenu function AddToolBoxMenu adds the standard toolbox menu items to the menu.

XPlot class

When constructing an XPlot instance, an owner window may now be specified.

Shell Items

Dialog Item

The dialog edit control has a new option '/F' which forwards KEY messages to the shell.

There are now four 'types' of edit control and a host of new parameters, which means it can display syntax highlighting, be used as a command line interface, etc.

A listview's cells can now be editable. The option /E which must be set for a ListView to be editable. The message CELLEDITED is sent if it is editable and its contents has been changed. If the user cancels editing, the message CELLCANCELLED is sent to the shell. If editing is ended because the user presses TAB or Shift TAB, the CELLEDITEDTAB or CELLEDITEDBACKTAB messages are sent. You can set the focus to a specific cell and enter editing mode using the new command SET dialogItem listviewIndex STARTEDIT.

The listview now supports the /F flag which forwards specific key types to the shell.

The listview supports a new option /R=n, which determines the maximum number of lines of text which can be displayed in the listview.

The new attribute !FOREGROUND returns 1 if the dialog window is in the foreground, 0 if it is not and -1 if the command fails in some way.

The new dialog attribute !EDITING can be used to ascertain if a listview is currently being edited or not.

File Item

The NEW FILE command can now take the option /S, to suppress error messages on creation failure.

The new file item command COPY /Z can be used to encrypt/decrypt a file, including optional password protection.

The new command TRYLOCK will try to get a lock on the file but will not block the script.

The !CHANGED attribute can now be explicitly set or reset. This functionality is new, in as much as versions previous to 3.9.0 could only reset the attribute. The meaning of assigning '1' to the attribute has changed, since assigning '1' now *sets* the attribute, whilst assigning '0' resets the attribute.

A new file item type - the GDX file item - has been developed, which can be used to create files containing graphic data which are passed directly to a graph item. GDX stands for "graphical data exchange". Currently, the spectrogram is the only plot which supports the GDX file type.

Graph Item

The command ADDMARKER can now be used to add a 'Box and Whiskers' metasegment.

The metasegment font can be specified on an individual basis using the ADDMARKER command.

A metasegment may be told not to change color on selection. This is only available using the "SET graph ADDMARKER table" command with the parameter "invertSelected" set to "true" if the metasegment color should be inverted whilst selected or "false" if not. The default is "true".

The key used to make a metasegment moveable can now be set using a 'modifyKeys' entry in the ADDMARKER table parameter.

A simple marker can now be displayed as a single vertical line (option /M).

The command OVERVIEW, which toggles between the 'view' and 'overview' modes, has been documented.

The graph supports a new attribute !CURSORMODE which returns the currently visible cursors, as set using the last CURSORMODE command.

The width of a graph's border can now be set using new AXIS command parameters. The default border width is 1 pixel.

The spectrogram palette can be changed at any time using the "SET graph Y * * SPECTROGRAM" function.

The DATASETLOADED message is now sent when a graph finishes loading data for a particular input.

Instance Item

The new command TRYLOCK will try to get a lock on the instance but will not block the script.

Table Item

A table item connected to a ListView must be configured to be editable using the CONFIG command or the !EDITABLE attribute. The CONFIG command has also been extended to allow for a restrictive set of values to be specified for a table field. If specified, the ListView will display a combobox in this column for each entry. All parameters set using the CONFIG command can now be queried via table field attributes.

The new command TRYLOCK will try to get a lock on the table but will not block the script.

The command NEW TABLE supports a silent error flag.

A table field can now display multirow entries, if the !MULTIROW attribute is set to 1, or the CONFIG command multirow parameter is set to ON.

The last user input for a particular column can now be used as the default for that column using the CONFIG command's setuserdefault parameter.

The DEFINE command can now be used to rename an existing field.

Wave Item

The wave item now supports the new attribute !PLAYSRATE which can be used to return the sampling rate currently used to for playback or set a new sampling rate for playback.

Changes

Changes in S_TOOLS-STx <CURRENT_VERSION>:

Graphical User Interface

F0 Test, F0Lookup, Amplitude Spectrum Statistics

The F0 Test, F0 Lookup and Amplitude Spectrum Statistics functions in the Spectrogram & Parameters Viewer sectioner have been moved to the toolbox file SpectrumTB.sts.

Macro Language

UNLOAD command

The command UNLOAD MACROCODE, UNLOAD SPUCODE and UNLOAD SOURCECODE take one parameter - the name of a sourcecode file (relative or absolute). The MACROCODE variant used to take a blank separated list of macro names and the SPUCODE version used to take a blank separated list of SPU names.

Display and Dialog DROPFILE message

The DROPFILE message sent to displays and dialogs when files are dropped onto them has been changed. The filePath parameter is not longer a string, but rather the id of a simple table with one absolute path per entry.

Syntax

The string "123 456" is no longer a valid number.

Bug Fixes

Bug fixes

The waterfall graph now prints correctly.

The BDataSet member function AddASet now selects the new audio set if adding the set succeeds (r5534).

Shell commands using the return value RC now assign the value even if return code equals 0 (indicating success) (r5609).

Spectrogram & Parameters Viewer Sectioner copy to clipboard working again (r5625).

The 'view' graph mode now displays correctly when first drawn (r5643).

The asterisk character * is now officially an invalid hotkey, rather than being one which doesn't work correctly (r5500).

Loading an XML file which an unsupported character encoding now fails rather than asserting (r5614).

The Spectrum viewer can now saving CEPST parameters (r6470).

The color 'GRAY' is now defined as the RGB value 96:96:96, which fixes the bug where cursors were invisible on a 'GRAY' background (r6148).

The "SET graph XSCALE" flag "/I" is now working (r6187).

Using the correct normal/dual/tight phase vocoder pv filters (r5874).

All valid number formats (including mmmE /-eee) can now be used in time-expressions (r5746).

Corrections

S_TOOLS-STx Version: 3.9

A list of documentation corrections since the last release (3.7).

The macro COBJ has been superseded by the COBJ class and no longer exists.

The command SYSTEM MKDIR and SYSTEM RMDIR were undocumented.

The SPAtom ASEG1 parameters are now in the correct order (TABS and TABM were swapped).

The SPAtom VSPLIT was mistakenly documented as VSPLIT1.

The macro DEBUGTB no longer exists.

The descriptions of the different formulas used by the SPAtom MORLET have been corrected.

The section FILE item command LOAD parameters were not documented as mandatory.

Added description of shell variables SCRIPTFILEPATH, SCRIPTDIRECTORY AND SCRIPTMAINNAME.

The AWEIGHT SPAtom has now been documented.

The WAVEOUT SPAtom has now been documented.

A list of documentation corrections since the last release (3.6.2).

The BUTIL FILEDIALOG no longer has a path parameter.

A list of documentation corrections since the last release (3.6.1).

The SET table FIND cexpr format uses colons, not commas as delimiters.

The SET value OUTPUT commands can take /Double options.

The description of the parameters for the NEW TABLE command where field definitions are possible has been corrected.

The SET graph CURSORMODE command now describes the bound and locked parameters correctly.

The VAR arithmetic operators DIV, MUL and SUB are actually called DIVIDE, MULTIPLY and SUBTRACT

The SET graph ZSCALE command parameters were incorrect.

Known Bugs

S_TOOLS-STx Version: 3.9

These bugs were known to exist at the time of the release and are proving difficult, if not impossible to fix.

Interface

Sometimes 44KB soundfiles are created, which are invalid. This bug has not proved easy to replicate, so if you can replicate it, please contact us ( \n This e-mail address is being protected from spam bots, you need JavaScript enabled to view it ).

Can't delete an entry in the DataSet if it has no ID. It is highly unlikely that you will ever have a DataSet entry with no ID. If this is the case however, you must currently delete it by hand (Close S_TOOLS-STx, open the DataSet in a text editor and either give the offending entry an ID, or remove it). Should you be able to reproduce any action which creates an entry without an ID, please contact us ( \n This e-mail address is being protected from spam bots, you need JavaScript enabled to view it ).

Spectrogram & Parameters Viewer

Interpolation of very short signals is incorrect (Deutsch - 2004-11-10 - since 1.0).

Graphics

Copying a display graphic to the clipboard and pasting into a graphics program does not always achieve the desired results. This bug will not be fixed in the foreseeable future. Some graphics programs paste it properly (IrfanView, Microsoft Word), others don't (PaintShop Pro) - (Jonnie White - 2004-07-14).

Selected cursors is not visible if background is set to GRAY (White - 2004-07-12 - since 1.0).

Macro

The dialog control listbox does not handle displaying huge strings properly. This seems to be a problem with the underlying CListBox control (Becker/White - 2004-12 - since 1.0).

The DCOM command INVOKEMETHOD Evaluate always returns an error when communicating with the R DCOM server even if the command was actually successful (Deutsch/White - 2004 - since 3.6.0).

3.8

3.8.3

  • BUGFIX: zoom in in viewer3 now working when zooming around active cursor
  • BUGFIX: spectragram title display corrected (amin/amax)
  • BUGFIX: CDLGMAP now deletes window only if it has created the window during construction

3.8.2

  • BUGFIX: dataset path now displayed, even if it has spaces in it.
  • BUGFIX: Parameter plot explicitly redrawn when new data is sent. This fixes the bug (reported by Julia Brandstaetter) where Set Zero and Undo were not working properly in Spectrogram and Parameter plot.

3.8.1

  • BUGFIX: Warn user that more waveform samples are being sent than expected and refrain from crashing.
  • BUGFIX: CDlgMap now always uses the next free dialog index for a new entry. This means that multiple maps can reference the same dialog and still work. The functions fci and nc were removed since they are never used. Display now using second event to synchronise creation and variable initialisation. This fixes the mysterious bug where the window class was only sometimes used.
  • BUGFIX: If the polyline function is called with less than two points it no longer asserts, but rather ends gracefully.
  • BUGFIX: send keys not processed by dialog on to graph hotkey handlers
  • BUGFIX: spectrogram is now being initialised with the correct context menu when formants are displayed in it.
  • BUGFIX: giving dialog focus if there are no graphs
  • BUGFIX: buttons in dialogs in a graph no longer process normal mneumonics. This means that the graph can process them (for Moosmueller). Buttons can still be activated with return and the space bar and tabbed/arrowed to.
  • BUGFIX: preventing race conditions in Attach/Detach. This removes one possible cause of autosave crashing. It does not guarantee, though, there to be no other reasons for autosave to crash.

Navigation menu

Personal tools