the automatic annotation and analysis of speech

Releases and Changelog

This page lists SPPAS-5 releases, version numbers, and major changes.

It serves as the official changelog and roadmap for the project.

Click here for changes from SPPAS-1.0 to SPPAS-4.31.

Major changes from SPPAS-5

SPPAS-5 is a major release introducing significant architectural changes. Please read the following notes carefully before upgrading from SPPAS-4.x.

SPPAS is distributed as two independent components:

  1. The SPPAS application (SPPAS-5.x): released once or twice a year, when significant architectural changes are made.
  2. The sppas Python package (sppas-5.x.y on PyPI): updated independently for bug fixes and minor improvements.

The SPPAS application always installs the latest compatible version of the sppas package.

The SPPAS package no longer includes the source code.

SPPAS 5.0

French and English linguistic resources are no longer bundled — they must now be installed explicitly during setup, in the same way as all other languages.

The Python virtual environment has been renamed from .sppaspyenv~ to sppas-venv.

The sppas.command launcher (macOS/Linux) has been replaced by sppas.sh. On macOS, sppas.app is also provided as a double-clickable launcher.

sppas-5.0.0

Interface

  • The home page of the Desktop is replaced by the Dashboard, which opens in the default web browser. Everything starts from it.

Annotations

  • Hand & Pose Detection is temporarily unavailable, waiting for an update of the MediaPipe library by Google.

Setup

  • preinstall.py is replaced by sppassetup.py.

Developer

  • Extensive cleanup and refactoring throughout the code.

sppas-5.0.1

Interface

  • The log window is removed. All the messages of SPPAS are collected and displayed in the Journal page.
  • About, Feedback, How to cite and Infos are pages of the web interface instead of dialogs of the Desktop.
  • The Dashboard displays the name of the current workspace, and follows the Desktop when it changes.

Annotations

  • Face Detection: fixed a warning raised when enabling a model before the models are loaded.

Setup

  • OpenCV is pinned to >=4.5.4,<5.0 in features.ini.
  • The missing default vocabulary files are created when needed.

Developer

  • Audio: the simpleaudio backend is replaced by sounddevice, and miniaudio is added to fix the glitches of the playback.
  • The swapp package is reorganized into wappcore, wappbase, widgets and panels.
  • Updated to Whakerexa 3.2.

sppas-5.0.2

Setup

  • Maintenance release: updated version and dependencies.

sppas-5.0.3

Annotations

  • Formants: F3 and F4 are estimated in addition to F1 and F2. Each method is limited to the formants it estimates reliably, and the values of each method are stored into their own tiers. The values of F1 and F2 differ from the ones of the previous releases.
  • VowelFilter: a new annotation. It discards the erroneous formant values of a corpus with the Mahalanobis distance.

Interface

  • The Journal page displays the update status of SPPAS, like the About page does.
  • Fixed the sppas feature of the Setup, enabled while no update is available.

Setup

  • The commands of the automatic annotations are declared in pyproject.toml: they are usable when the wheel is installed.

sppas-5.0.4

Annotated files

  • Converting a file keeps what the destination format can't hold. The metadata, the controlled vocabularies and the media are written into a tier named DoNotEdit, and SPPAS reads them back. TextGrid, CSV and MRK are using it.

Interface

  • A new link is added to configure SPPAS.
  • The About page links to the website, to the download and to the source code. The Source code card left the Dashboard.
  • When the Desktop closes unexpectedly, it can be launched again right away.
  • A button switches the colors of the whole software.

Developer

  • anndata: two properties are added to the formats. comments_support() tells whether a format can hold comments, empty_tier_support() whether it can hold a tier with no annotation. Both were known only by attempting to write.
  • anndata: what a format can't hold is written into a tier by create_unsupported_tier() and read back by parse_unsupported_tier(). A caller writing one file decides for that file alone with set_preserve_unsupported(); the default is the interoperability setting of the application.
  • The two interfaces exchange a new message, SHOW_PAGE: the web interface asks the Desktop to show one of its pages. The Desktop signs its presence every 30 seconds, so its silence reports a crash.
  • Updated to Whakerexa 3.4.