Skip to content

Latest commit

 

History

History
916 lines (785 loc) · 38.3 KB

NEWS.md

File metadata and controls

916 lines (785 loc) · 38.3 KB

Beast 0.16.0-alpha:

Note: This is the master branch of Beast, which contains alpha version software. Beware of file format instabilities and report any bugs you find in it.

Beast 0.15.0: (2019-11-05)

System Requirements

  • Linux - Ubuntu 18.04 or Fedora-28 are needed to run the Beast AppImage.

User Interface EBEAST

  • Added Beast HTTP manual popup window.
  • Added scrollable track view.
  • Integrated material-icons and fork-awesome sprites.
  • Added popup menus, modal dialog and preferences.
  • Added proper command line argument handling to ebeast.
  • Tracks now have a context menu with various editing functions.
  • Support secondary UI via URL with auth-cookie.
  • Support UI rendering in Firefox 68.
  • Added song position pointer with realtime updates.
  • Added bpm and song position counter display with realtime updates.
  • Added focus handling for piano roll notes.
  • Started file system selector for instrument assignments.
  • Added user interface for manual PCM/MIDI driver selection.

Synthesis Changes

  • Added support for separate fluidsynth instances per track. #102 [stw]
  • Rewrote PCM driver integration and selection.
  • Added optional PCM driver support for Jack. #128 [stw]

Jsonipc

  • A dedicated Rapidjson based IPC layer was developed to move the synthesis engine out of the UI process (Electron based). This solved several major stability issues and also allowes use of Firefox for UI rendering.
  • Added Json based IPC layer between Javascript and C++17.
  • Moved Electron <-> Bse communication to Websocket-based IPC.
  • Moved BSE sound engine functionality into a separate executable BeastSoundEngine with async Javascript bindings.
  • Added a Websocket binary message bridge for realtime monitoring of shared memory region changes.

Upgrades

  • Integrated Rapidjson 20190628 (> v1.1.0).
  • Upgraded to Electron 6.0.11
  • Upgraded babel to 7.6.2.
  • Upgraded node-sass to 4.12.
  • Managed to eliminate jQuery dependency.
  • Depend on fluidsynth to 2.0.5. #108 [stw]
  • The v8pp binding was superceeded by Jsonipc.
  • Depend on pandoc >= 2.
  • Depend on clang++-6 and g++-8.3.0 for full C++17 support.
  • Updated CI builds to use Fedora-28.

Other Changes

  • Modernized several property implementations. [stw] #109 #110 #112 #114 #115 #116 #117 #118
  • Rewrote Vue data dependency integration for async Javascript calls.
  • Several code areas got modernized, making use of C++ >= 11.
  • Support proper versioning information even from Github ZIP files.
  • Added PDF generation for the BSE API reference manual.
  • Resampler cleanups. #121 [stw]
  • Added new XML serialzation infrastructure (defaults to OFF, MVP roadmap goal).
  • Added ZIP storage for BSE files (defaults to OFF, MVP roadmap goal).
  • Added infrastructure for stereo device/effect chains (still disabled, MVP roadmap goal).

Beast 0.14.0: (2019-07-02)

System Requirements

  • Linux - Ubuntu 18.04 or Fedora-27 are needed to run the Beast AppImage.

User Interface EBEAST

  • Added a preferences dialog.
  • Properly support Open and Save of .bse files.
  • Completed the Javascript IPC binding to support notifications and Anys.
  • Added new styling for browser scrollbars.

Build Improvements

  • Rewrote the entire build system to purely use non-recursive GNU Make and to get rid of autoconf, automake, libtool and related auto* tools.
  • Support make help to outline build rules and build variables.
  • Introduce make default MODE=release to configure for for production builds.
  • Build artefacts are now generated under ./out/, adjustable via make default builddir=...
  • Merged all unit tests into a single binary which can run fully parallelized.
  • Removed checks for pre-2009 POSIX systems and other legacy configurations.
  • Replaced lengthy checks with __has_include and compiler builtins.
  • Support builds from Github source code archives.
  • Streamlined release process and version extraction.

Size Reductions

  • Rewrote the Aida IPC layer to make it leaner by using C++ lambdas.
  • Removed a lot of outdated code, which remains an ongoing effort.

Upgrades

  • Upgrade to node-gyp-3.8 and node-sass-4.11
  • Update to vue-2.6
  • Upgrade to browserify-16 and babelify-10
  • Upgrade electron to 2.0.18.
  • Upgrade to fluidsynth 2.0.4. #101
  • Fixed pandoc usage to support pandoc-2.
  • Updated the C++ dependency to C++17.
  • The build now makes use of g++-7 and clang++-6 optimization facilities.

Regression Fixes

  • Fixed deadlock in DavOrgan during unref.

Other Changes

  • Moved to XDG compliant config files in ~/.config/beast/.
  • Integrated all Beast documentation artefacts into a single manual.
  • Support latex formula rendering and proper fonts for the manual.

Beast 0.13.0: (2019-02-08)

System Requirements

  • Linux - Ubuntu 18.04 or Fedora-27 are needed to run the Beast AppImage.

New Features

  • We now build AppImage binaries for beast and ebeast.
  • Added relocation support, resources are found relative to libbse.so now.

Upgrades

  • Updated the electron-packager to 12.2.0. #87

Improvements

  • Support translation of the new electron based UI.
  • Ported song propeties to new IDL system. #64 #65 #68 #69 #81
  • Completed the clang++ porting so everything now builds with clang.
  • Merged libsfi and libbse, reduces compilation time and installed size.
  • We now test Fedora builds automatically.
  • Updated German translation.

Bug Fixes

  • Fixed crash during undo. #77
  • Fixed IDL string parsing.
  • Fixed the playback state indicator.
  • Fixed several translation generation bugs.
  • Fixed missing UI updates for some properties.
  • Fixed memory allocation/release in several places.
  • Fixed several issues pointed out by newly automated linters.
  • Lots of build system and CI/CD fixes.

Beast 0.12.0: (2018-08-20)

System Requirements

  • Linux - Ubuntu 16.10 is needed to install the .deb package

New Features

  • New user interface: EBEAST, an electron based DAW GUI
  • Added ANSI colors to logging output for non-dumb terminals.
  • Added shared memory allocator with external bookkeeping (without boundary tags). Communicate dB meter levels and other values via shared memory between DSP engine and UI code.

User Interface EBEAST

  • Development of a new user interface based on Electronjs has started and the first (pre-alpha) bits are shipped and installed with this release under $prefix/beast-0-12/bin/ebeast.
  • Added About, Tracks with dB meters, Parts with thumbnails.
  • Added Play Controls, Piano Roll, color picker palette.

Improvements

  • Merged and enhanced the new Beast IDL layer AIDA.
  • Introduced asynchronous Events to replace signals.
  • Removed all C procedures, migrated method calls to Aida IDL.
  • Integrated required utilities from Rapicorn.
  • Renamed Demos/, Effects/, etc resource directories.
  • Continued migration of C structs to C++ classes.
  • Adjusted remote reference GC for Beast work loads.
  • Clarified licensing, Beast is released under LGPL-2.1+.
  • Added various documentation improvements.
  • Added internal integrity tests.
  • Display summary message at the end of configure. #33
  • Adjusted versioning and provide wip/latest-stable for rolling updates.

Size Reductions

  • Removed CPython runtime dependency.
  • Removed large chunks of old and outdated code.
  • Removed Rapicorn as build and runtime dependency.
  • Reduced libbse.so size down to 14% by splitting debug syms.

Upgrades

  • Upgrade to Electron-1.8, Vue-2.5, Chrome-59.0, V8-5.9, Node-8.2.
  • Adapted code to depend on and make use of C++14.
  • Fixed code to compile cleanly with g++-7.2.

Regression Fixes

  • Fixed auto_activate networks not working. #38
  • Unhardcode launcher icon file type. #57
  • Fixed activity led staying dark. #62

Bug Fixes

  • Fixed memory corruption crash. #25 [stw]
  • Fixed fluid synth test on Bionic. #42 [stw]
  • Fixed crash when adding mixer bus during playback. [stw]
  • Work around apport reporting assertion tests.
  • Handle UTF-8 mixed with Latin-1 gracefully.

Beast 0.11.0: (2017-06-27)

  • Added Soundfont support so Beast can play .sf2 files. [stw]
  • Execute the DSP engine multi threaded with nproc many threads.
  • The startup time could be reduced significantly.
  • Build all plugins with SIMD support always enabled.
  • Started alternate HTML/JS GUI based on electron.
  • Improved IDL representation of old procedure types.
  • Removed guile dependency.
  • Removed extern "C" left overs.
  • Fixed NULL string crashes. [stw]
  • Fixed signedness bug in FFT windowing. [stw]
  • Fixed namespace issues in public BSE headers. [stw]
  • Fixed small translation issues (GB#626760). [stw]
  • Fixed Public Domain licensing of some demos. [stw]
  • Fixed uses of assert in library code.
  • Improved generated documentation.
  • Sources were ported to Kubuntu-16-04. [stw]
  • Manual pages are updated and are converted to Markdown.
  • Improvded diagnostics, build and audio testing toolchains.
  • Fixed MIDI voice allocations taht could lead to premature voice shortages.
  • Majorly improved Docker build setup.
  • Require srcdir=destdir upon distcheck.
  • Tarball/git dependencies now include Rapicorn 17.0.0.
  • The Beast project now provides Debian binary packages at: https://testbit.eu/pub/dists/beast/debs

Beast 0.10.0: (2016-04-07)

  • Memory leak and stability fixes.
  • Removal of deprecated Glib/Gtk+ functions.
  • A new binary bsetool subsumes several old utilities.
  • Removal of unused utilities and several places with dead code.
  • Several classes are now (fully) ported to new AIDA IDL: SNet Track TrackPart Bus SampleFileInfo Project MusicalTuning NoteDescription Icon
  • More porting work to use Rapicorn C++11 utilities.
  • Fixes for g++-4.9 which has become a hard dependency.
  • Support and use the TAP protocol for unit test evaluation.
  • New versioning: Releases increase MAJOR for major API changes.
  • New versioning: Releases increase MINOR in case of any ABI breaks.
  • New versioning: Releases increase MICRO for backwards compatibility.
  • Now libbse supports parallel installation of runtime library packages.
  • Now various program and module installation paths include MAJOR.
  • Fix build issues with external libbse plugins.
  • Fix LADSPAv1 plugin registration failing to detect some plugins.
  • Provide C++11 API for undo/redo functions.
  • Add pybse API wrapper that allows Python to import Bse.
  • Start a Python interpreter from Beast.
  • Split up Beast main() methods to run event loop from Python.
  • Port libbse to use C++11 scoped enums.

Beast 0.9.2: (2015-09-16)

  • Workarounds were added for broken GLib compatibility.
  • Files for the BSE runtime are now compressed and stored via rapidres(1).
  • A good chunk of the Beast & Bse API has been migrated to use Rapicorn's AIDA IDL.
  • The complexity of the BSE startup process could be reduced.
  • A workaround for crashes in vorbisfile-1.3.4 and earlier was added.
  • Shutdown crashes were fixed by stopping BSE threads via atexit.
  • A new bse tool with commands check-load and render2wav replaces SCM scripts.
  • Lots of fixes and optimizations for parallel builds were applied.
  • All files are now installed under versioned directories, e.g. /usr/share/beast-0.9/
  • Execute audio tests with make check for development versions.

Beast 0.9.0: (2014-10-28)

  • Fixed missing includes. [stw]
  • Updates to build with Rapicorn1410.
  • Work around GClosure API breakages in GLib.
  • Work around GLib API deprecations.
  • Remove old autotools and libtool workarounds.
  • Updates to compile with g++-4.9.1.
  • Fix issues on 32bit platforms.
  • Optimize ELF relocations.
  • Dependency update to Python 2.7.5.
  • Updates to the manual pages.
  • Improved utilization of compiler vectorizations.

Beast 0.8.2: (2013-07-06)

  • Introduced Rapicorn1307 dependency.
  • Establish Aida remote interfacing between Beast and BSE.
  • Removed birnet/ sublibrary entirely, replaced with Rapicorn uses.
  • Added support for loading and saving of FLAC encoded samples. [stw]
  • Ported code to use Rapicorn's type safe cxxprintf instead of vprintf.
  • Lots of documentation improvements and fixes.
  • Automatization of documentation builds documentation uploads.
  • Beast now ships complete documentation builds in tarballs.

Beast 0.8.0: (2013-03-25)

  • Added use of the Rapicorn library, require version 13.0.0.
  • Adapted IDL types to other projects.
  • Adapted code to make use of C++11 and STL threads.
  • Various performance improvements through EventFD, Spinlocks, lambdas, etc.
  • Major documentation improvements, see: http://dev.testbit.eu/beast/latest/
  • Fixed printf format-security issues (GB#665097). [Alessio Treglia]
  • Lots of code cleanups, licensing cleanups.

Overview of Changes in BEAST/BSE 0.7.8:

  • Wave oscillator fixes for 96k samples (GB#612281). [stw]
  • Performance improvements of the scheme shell. [stw]
  • Allow Alt+MouseButton1 to drag synthesis modules.
  • Merged plugin libraries, improved build times.
  • Use the ALSA default PCM driver by default.
  • Adapt code to allow fftw drop ins. [stw]
  • Migrated code base to compile as C++11.
  • Lots of simplifications and cleanups.
  • Extended MIDI device listing.
  • Improved Beast startup time.

Overview of Changes in BEAST/BSE 0.7.6:

  • Packaging fixups, download and integrate documentation from beast wiki.
  • Work around regressions introduced in recent GLib and GTK+ versions.
  • Various bug and leak fixups.
  • Moved lots of code to C++.
  • Build documentation with doxygen.
  • Code fixups for g++-4.4, g++-4.7.
  • Improved DavOrgan frequency handling.

Overview of Changes in BEAST/BSE 0.7.4:

  • Renamed the project to Better Audio System / Better Sound Engine
  • Moved project website to: http://beast.testbit.eu/
  • Various build system fixes [stw, timj]
  • License fixups for some scripts [stw]
  • Fixed subnormal tests on AMD64 if SSE unit is in DAZ mode [stw]
  • Replaced slow resampler checks with a much faster resampling test [stw]
  • Performance improvements for various tests [stw]
  • GLib 2.28 unit test porting [stw]
  • Speed improvements for record field name [stw]
  • Fixed XRUNs in ALSA driver on 64bit systems [timj]
  • Added beast.doap [Jonh Wendell]
  • PO handling improvements.
  • Updated German translation.
  • Updated Norwegian bokmål translation [Kjartan Maraas]
  • Added e-Telugu translation [Veeven]

Overview of Changes in BEAST/BSE 0.7.2:

  • Moved Beast/BSE to GNU LGPL, use AS-IS license for examples
  • Module changes and additions:
    • ArtsCompressor - Relicensed to LGPL with permission from Matthias Kretz
    • BseContribSampleAndHold - Relicensed to LGPL with permission from Artem Popov
    • DavXTalStrings - Use deterministic random numbers for unit tests
    • BseNoise - Improved random number generator
  • Switched to autogenerated ChangeLogs
  • Error bell can be muted in beast preferences dialog
  • Added multisample creation/editing command line tool: bsewavetool
  • Support adjustable volume, pitching and drum envelopes in .bsewave files
  • Added Retro Acoustic drum kit [Tim, Stefan]
  • New loadable Instruments/Effects:
    • BQS Bass Drum E8012 [Tim, Stefan]
    • BQS Slow Hum [Stefan, William DeVore]
    • FSM Fresh Water Bass instrument [Krzysztof Foltman]
    • FSM Growl Bass instrument [Krzysztof Foltman]
    • FSM Synth String Sweep [Krzysztof Foltman]
  • Added support for loading 32bit and 24bit PCM-format WAV files
  • Added support for gcc-4.4 and automake-1.10
  • Added support for guile-1.8, guile-1.6 remains as minimum requirement
  • Various fixes, improvements and much improved test coverage.
  • Bug fixes: GB#452604, GB#468229, GB#344388, GB#451086, GB#450724, GB#454121, GB#491552, GB#450490, GB#441936, GB#336766, GB#433431, GB#474332, GB#474244, GB#456879, GB#456408, GB#424897 [Tim Janik, Stefan Westerfeld]
  • Migrated translation support to use awk, sed and po/Makefile.am.
  • Updated German translation [Mario Blättermann]
  • Updated Italien translation [Michele Petrecca]
  • Updated Occitan translation [Yannig Marchegay]
  • Updated Brazilian Portugues translation [Leonardo Ferreira Fontenelle]
  • Updated British English translation [David Lodge]
  • Updated Spanish translation [Jorge Gonzalez]
  • Updated Slovenian translation [Andrej Znidarsic]
  • Updated Danish translation [Joe Hansen]
  • Updated French translation [Bruno Brouard]
  • Added Norwegian bokmal translation [Kjartan Maraas]
  • Added Ukrainian translation [Maxim V. Dziumanenko]

Overview of Changes in BEAST/BSE 0.7.1:

  • Fixed SUID security vulnerability by validating success of seteuid/setreuid, related security advisories, describing the vulnerability:
  • Added factor 2 SSE-optimized up/down resampler [Stefan Westerfeld]
  • Added support for varying musical tuning systems: [Hanno Behrens, Tim Janik]
    • 12-TET, 7-TET, 5-TET,
    • Diatonic-Scale, Indian-Scale, Pythagorean-Tuning,
    • Pentatonic-5-Limit, Pentatonic-Blues, Pentatonic-Gogo,
    • Quarter-Comma-Meantone, Silbermann-Sorge,
    • Werckmeister-3, Werckmeister-4, Werckmeister-5, Werckmeister-6, Kirnberger-3 and Young
  • Module changes and additions:
    • Quantizer - Simulate 1-32 Bit quantization effects
    • DavXTalStrings - Added semitone transposition function [Stefan Westerfeld]
    • DavOrgan - Added semitone transposition function [Stefan Westerfeld]
    • Summation - Added difference channel [Tim Janik, Stefan Westerfeld]
  • Fixed exported symbol set to simplify external plugin building
  • Improved startup time by linking multiple plugins into a single library
  • Fixed LADSPA plugin loading to bind symbols only locally
  • Reduced debugging spew for LADSPA plugins
  • Fixed WWW browser launching to cope with launcher script errors
  • Improved performance of floating point block operations
  • Extended test suite and overall test coverage
  • Applied miscellaneous accelerator and cosmetic fixes
  • Improved documentation and label strings
  • Fixed library dependencies in bse.pc
  • Fixed tact numbers in TrackRoll GB#346916 [Stefan Westerfeld]
  • Fixed all reported beast crashes: GB#340437 GB#347319
  • Other bug fixes: GB#364041 GB#386862 GB#387364 GB#336366 GB#353135 GB#353442
  • Fixes for gcc-3.3 and GNU/kFreeBSD
  • Updated Italian translation [Petrecca Michele]

Overview of Changes in BEAST/BSE 0.7.0:

  • Renamed scheme shell to bsescm
  • Optimized core functions for MMX/SSE with runtime CPU detection
  • Fixed CPU profiler to work with newer Linux kernels
  • New probing code for optimized volume meters and FFT scopes
  • Plugins/Module changes:
    • StandardOscillator - Added semitone transposition function
    • FreeVerb - Fixed distortions due to subnormal handling
    • GusPatchEnvelope - Better approximation of GUS Patch envelopes [Stefan]
    • Adder - Deprecated in favour of BseSummation
    • Constant - Number of output channels reduced to 4
    • DavSynDrum - Fixed retrigger logic [Stefan]
  • Added support for MMX/SSE-optimized plugins
  • Converted runtime documentation system to use a local web browser
  • Relicensed all example scripts and BSE files under an "AS IS" license
  • New loadable Instruments/Effects:
    • BQS Organ
    • BQS SynDrum
    • BQS Fretless Bass [Stefan Westerfeld]
    • BQS Queek Synth
    • BQS MoogSaw Bass [Stefan Westerfeld]
    • BQS Merp Pad
    • BQS Compressor [Stefan Westerfeld]
    • BQS Reverb [Stefan Westerfeld]
    • BQS Saturation And Reverb [Stefan Westerfeld]
  • Major code reorganizations, only one library is installed now: libbse
  • Vastly extended test coverage of many core mechanisms
  • Moved source base to automake-1.9 and added support for gcc-4.2
  • Lots of major and minor fixes and improvements
  • Bugzilla issues resolved: GB#337703, GB#342186, GB#343301, GB#340386, GB#340307
  • Updated Canadian English translation [Adam Weinberger]
  • Updated German translation [Hendrik Richter, Jens Seidel]
  • Updated Spanish translation [Francisco Javier F. Serrador]
  • Updated Czech translation [Miloslav Trmac]
  • Updated Italian translation [Petrecca Michele]
  • Updated Catalan translation [Gil Forcada]
  • Updated Dutch translation [Vincent van Adrighem]
  • Updated Swedish translation [Daniel Nylander]
  • Added Nepali translation [Pawan Chitrakar]

Overview of Changes in BEAST/BSE 0.6.6:

  • Improved error messages
  • Improved script handling
  • Implemented translation of scheme script strings
  • Fixed closing of unsaved projects
  • Fixed project Save vs. Save As behaviour
  • Fixed localized numbers being written to .bse files
  • Fixed sample embedding in .bse files (0.6.5 did not store all samples)
  • Fixed stale header files, left out by make uninstall
  • Rewrote message dialogs and message mechanisms
  • Ported MIDI event recording script to new BSE core
  • Updated Canadian English translation [Adam Weinberger]
  • Updated Czech translation [Miloslav Trmac]
  • Updated Italian translation [Petrecca Michele]
  • Updated Spanish translation [Francisco Javier F. Serrador]
  • Added Basque translation [Hizkuntza Politikarako Sailburuordetza]

Overview of Changes in BEAST/BSE 0.6.5:

  • New supported file formats:
    • GUS Patches - Load patchfiles as ordinary samples [Stefan Westerfeld]
    • BseWave - A new tool bsewavetool allows creation and compression of multi-sample files which can be loaded by beast. This tool is experimental and not currently being installed, ask questions or report problems with it on [email protected].
  • New Effects:
    • Saturator - Saturate audio signals, implements various saturation types.
  • New scripts:
    • Track Busses - Automatically create mixer busses for tracks
  • Fixed MIDI file import to create required mixer setup
  • Added playback position indicator to piano roll
  • Fixate zoom position while zooming piano roll
  • Fixed saving of BseMixer state to BSE files
  • Improved sample file caching algorith
  • Improved BSE file parsing robustness
  • AMD64 fixes [Stefan Westerfeld]
  • Lots of miscellaneous bug fixes
  • Updated British English translation [David Lodge]
  • Updated Canadian English translation [Adam Weinberger]
  • Updated Czech translation [Miloslav Trmac]
  • Updated Dutch translation [Tino Meinen]
  • Updated Spanish translation [Jorge Gonzalez]
  • Added Bulgarian translation [Iassen Pramatarov]
  • Added Kinyarwanda translation [Steve Murphy]

Overview of Changes in BEAST/BSE 0.6.4:

  • Fixed storage logic that caused data loss when overwriting BSE files
  • Added -N and -n=<nicelevel> options to drop nice level priorities
  • Removed libbsw from package, glue code is inlined now
  • GCC-3.4 build fixes
  • Fixed high CPU consumption on scope updates
  • Added spectrogram view for module outputs
  • Minor GUI fixups and miscellaneous other buglet fixes
  • Updated Canadian English translation [Adam Weinberger]
  • Updated British English translation [David Lodge]
  • Updated Czech translation [Miloslav Trmac]
  • Updated Dutch translation [Tino Meinen]
  • Updated Spanish translation [Jorge Gonzalez]

Overview of Changes in BEAST/BSE 0.6.3:

  • The package now depends on GLib-2.4 and Gtk+-2.4
  • New/ported/improved Effects:
    • BseContribSampleAndHold - a sample and hold module by Artem Popov
    • BseSummation - a replacement for multiple BseAdder effects
    • DavBassFilter - added trigger input for use in instruments and implemented MIDI automation for all parameters
    • BseNoise - ported to IDL/C++ [Stefan Westerfeld]
    • ArtsCompressor - cleanups, major usability improvements [Stefan Westerfeld]
  • Added song mixer with freely connectable busses
  • Added spline-scale-based DB meters
  • Added MIDI event automation framework
  • Added null PCM driver and command line options for driver selection
  • Added plugin development guide
  • Added audio-feature extractor for automated test suit [Stefan Westerfeld]
  • Fixed dangling part handling by adding them to an extra track
  • Fixed parsing of negative control events and note fine tune
  • Fixed stereo playback in sample editor
  • Fixed undo/redo handling across playback activation
  • Fixed error handling when users form cyclic connections
  • Lots of icon updates [Artem Popov]
  • Mime type fixes [Artem Popov, Tim Janik]
  • Improved GUI responsiveness
  • Made message dialog appearance configurable
  • Consistent support for dialog closing with Escape
  • Dialog size and resizing adaptions for 800x600 screens
  • Lots of miscellaneous bug fixes and refactoring
  • Updated Brazilian Portuguese translation [Raphael Higino]
  • Updated Czech translation [Miloslav Trmac]
  • Updated Dutch translation [Tino Meinen]
  • Updated British English translation [David Lodge]
  • Updated Canadian English translation [Adam Weinberger]
  • Updated Albanian translation [Laurent Dhima]
  • Updated Spanish translation [Francisco Javier F. Serrador, Jorge Gonzalez]
  • Updated German translation [Dirk Janik, Moritz Mekelburger]
  • Updated Russian translation [Artem Popov]
  • Added Punjabi translation [Amanpreet Singh Alam]
  • Added Japanese translation [Satoru SATOH]
  • Added Esperanto translation [Artem Popov]
  • Added Italian translation [Petrecca Michele]

Overview of Changes in BEAST/BSE 0.6.2:

  • Rewrote scrollbar sizing, so tracks and parts are easily resizable
  • Lots of small GUI enhancements and fixes
  • Added CPU usage information view
  • Enabled tooltips on menu items
  • Rewrote logging, messaging and error reporting system
  • Fixed attack time handling in SimpleADSR
  • Added support for 1/32, 1/64 and 1/128 notes and quantization steps
  • Added skin and row highlighting support to the pattern editor
  • Adjusted skins (pacified some of the more disturbing ones)
  • Added British English translation [Gareth Owen]
  • Added Canadian English translation [Adam Weinberger]
  • Added Brazilian Portuguese translation [Raphael Higino]
  • Updated Catalan translation [Xavier Conde Rueda]
  • Updated Czech translation [Miloslav Trmac]
  • Updated Dutch translation [Tino Meinen]
  • Updated Croatian translation [Robert Sedak]
  • Updated Spanish translation [Francisco Javier F. Serrador]
  • Updated Russian translation [Alexandre Prokoudine]
  • Updated Portuguese translation [Duarte Loreto]
  • Updated Albanian translation [Laurent Dhima]
  • Various sfidl fixes [Stefan Westerfeld, Tim Janik]
  • First steps taken towards mixer infrastructure
  • Fixed user configurable debugging support
  • Lots of adaptions to GLib/Gtk+-2.4

Overview of Changes in BEAST/BSE 0.6.1:

  • Added suid wrapper which acquires nice level -20, then drops privileges
  • Improved latency/block-size handling of the synthesis engine
  • Fixed i18n bug which prevents demo song from loading in non-C locales
  • Added i18n support for enum values
  • Support for more note formats like Cis-1, C#-1, #C-1
  • SFI cleanups [Stefan Westerfeld]
  • Restructured sfidl and fixed lots of bugs [Stefan]
  • Switched core language bindnig to C++
  • Added support for per-part scripts
  • New harmonic transposition script which allows to convert between major, minor, dorian, phrygian, lydian, mixolydian and locrian scales [Stefan]
  • Added experimetal pattern editor prototype
  • Added keybinding editor to preferences dialog
  • Added ComboBox widgets to the GUI
  • Updated Catalan translation [Xavier Conde Rueda]
  • Updated Czech translation [Miloslav Trmac]
  • Updated Serbian translation [Danilo Segan]
  • Updated Dutch translation [Kees van den Broek]
  • FreeBSD fixes [Rasmus Kaj]
  • Lots of GUI fixes

Overview of Changes in BEAST/BSE 0.6.0:

  • Moved RC file from ~/.beastrc to ~/.beast/beastrc
  • Lots of major and minor GUI improvements
  • Major improvements and speedups to scrolling code
  • Added sniffer module and per-track scope display
  • Fixed sequencer occasionally swallowing notes
  • Added skin-support to event and piano roll widgets
  • Added support for structures/boxed types in plugins
  • Implemented a-law/u-law decoders
  • Improved configurability
  • Added AIFF file loader
  • Minor and major performance improvements [Tim Janik, Stefan Westerfeld]
  • Incorporated OpenBSD fixes [Nedko Arnaudov]
  • Updated Serbian translation [Danilo Segan]
  • Updated Czech translation [Miloslav Trmac]
  • Updated Portuguese translation [Duarte Loreto]
  • Updated Spanish translation [Yelitza Louze, Francisco Javier F. Serrador]
  • Updated Dutch translation [Tino Meinen, Kees van den Broek]
  • Updated German translation [Christian Neumair]
  • Added Croatian translation [Robert Sedak]
  • Added French translation [Christophe Merlet]
  • Added Albanian translation [Laurent Dhima]
  • Added Mongolian translation [Dulmandakh Sukhbaatar]
  • Added sfidl documentation [Stefan Westerfeld]
  • Miscellaneous bug fixes and cleanups

Overview of Changes in BEAST/BSE 0.5.6:

  • New (or ported) modules:
    • BseEvaluator - highly experimental (available with --devel) expression evaluator by Stefan Westerfeld
    • DavBassFilter - a low-pass resonant TB-303 style filter by David A. Bartold
  • Added support for author and licensing information for plugins, available as "Show Info" in the button3 popup menu on modules
  • Started MIDI file import ability
  • Started new undo-able parasite mechanism for BSE files
  • Fixed default value serialization in BSE files
  • IDL Compiler bug fixes and cleanups [Stefan Westerfeld]
  • Started C++ Language Binding [Stefan Westerfeld]
  • Added i18n support to IDL Compiler [Stefan Westerfeld]
  • Added #include-impl support to IDL Compiler [Stefan Westerfeld]
  • Added toplevel package tests in tests/ [Stefan Westerfeld]
  • Support upper case note names
  • Internationalized plugins
  • Merged translation domains
  • Updated Czech translation [Miloslav Trmac]
  • Updated Dutch translation [Vincent van Adrighem]
  • Updated German translation [Christian Neumair]
  • Updated Serbian translation [Danilo Segan]
  • Updated Spanish translation [Ismael Andres Rubio Rojas]
  • Updated Swedish translation [Christian Rose]
  • Added Catalan translation [Xavier Conde Rueda]
  • Added Greek translation [Kostas Papadimas]
  • Added Portuguese translation [Duarte Loreto]
  • Complete rebuild of the GUI code by moving to XML based widget tree stencils
  • Completely recoded menu generation, activation and sensitivity, based on new simple action lists amd a stencil factory mechanism
  • Rewrote all existing property entry fields and added new types
  • Implemented a couple new widgets to improve GUI experience (GxkMenuButton as GtkOptionMenu replacement, GxkSimpleLable for shortened widths, ...)
  • Added accelerator support for popup menus
  • Lots of overall GUI polishing
  • Added "About" box
  • Miscellaneous bug fixes, lots of code cleanups

Overview of Changes in BEAST/BSE 0.5.5:

  • New (or ported) modules:
    • DavCanyonDelay - Canyon Echo by David A. Bartold
    • BseMidiInput - Monophonic MIDI Keyboard input module
    • BseBalance - Stereo panorama position module
    • ArtsCompressor - Mono and stereo compressor [Stefan Westerfeld]
  • Added utility script to crop and duplicate parts [Stefan Westerfeld]
  • Added "Party Monster" demo song [Stefan Westerfeld]
  • Implemented ability to use sequencer as modulation source
  • Added support for external MIDI events in song tracks
  • Added .bse file playback facility to bsesh
  • Added support for C++ Plugins
  • Now installs bse-plugin-generator for simple creation of C++ Modules
  • Added manual pages for installed executables
  • Lots of small MIDI handling fixes
  • Fixed MP3 loader
  • Major GUI improvements
  • Registered MIME types for .bse files, provided .desktop file
  • Made search paths for various resources user configurable
  • Added prototype support to IDL compiler [Stefan Westerfeld]
  • Work around PTH poll() bug on NetBSD [Ben Collver, Tim Janik]
  • Support NetBSD sound device names [Ben Collver]
  • Added i18n infrastrukture for BEAST and BSE [Christian Neumair, Tim Janik]
  • Added Azerbaijani translation [Metin Amiroff]
  • Added Russian translation [Alexandre Prokoudine]
  • Added Serbian translation [Danilo Segan]
  • Added Swedish translation [Christian Rose]
  • Added German translation [Christian Neumair]
  • Added Czech translation [Miloslav Trmac]
  • Added Dutch translation [Vincent van Adrighem]
  • Lots of bug fixes

Overview of Changes in BEAST/BSE 0.5.4:

  • Ported and improved synthesis module from David A. Bartold:
    • DavSynDrum - Synthetic drum generator
  • Added support for control event editing
  • Added per-note velocity and fine-tune editing
  • Added support for per-track and per-song special effects
  • Some GUI polishing
  • Fixes to compile on NetBSD
  • Miscellaneous bug fixes

Overview of Changes in BEAST/BSE 0.5.3:

  • Seperated core plugin loading from LADSPA plugin loading
  • Fixed memory leaks in various places
  • Added child process (bsesh) error monitoring
  • Fixed bsesh (script) communication for systems with short writes

Overview of Changes in BEAST/BSE 0.5.2:

  • Implemented unlimited Undo/Redo facilities
  • Tracks now support waves directly as Synth input
  • Added wave/synth selection dialog for tracks
  • Major improvements to file/wave selection dialogs
  • Added ability to monitor PCM output to WAVE files
  • Reenabled sample rate adjustments in preferences
  • Fixed signal handling in scheme
  • Fixed time zone handling
  • Upgraded to Guile-1.6
  • Adapted code to gcc-3.3/g++-3.3
  • Documentation improvements
  • Robustness fixes to LADSPA loader [Sam Hocevar]
  • Improved documentation building process [Alper Ersoy]
  • Image (Logo) improvements [Alper Ersoy]
  • Bug fixes for 64bit archs [Sam Hocevar]
  • Miscellaneous major and minor code fixes

Overview of Changes in BEAST/BSE 0.5.1:

  • Added support for LADSPA plugins
  • Improved synthesis network router display
  • Documentation fixes
  • Added support for dsp[0-3] and midi[0-3] devices
  • Fixed memory leaks during playback

Overview of Changes in BEAST/BSE 0.5.0:

  • Moved BSE into its own thread
  • Added IDL based code generator [Stefan Westerfeld]
  • Deployed new middleware layer
  • Major documentation generation improvements [Alper Ersoy]
  • Generate structure documentation [Tim Janik, Alper Ersoy]
  • Added documentation about Gtk+ GUI extensions
  • Made documentation browser navigatable
  • Improved MIDI support
  • Added track editor to allow complex song arrangements
  • The guile shell to BSE is named bsesh now
  • Major code cleanups, bug fixes and refactoring
  • Lots of GUI fixes, improvements and revamps
  • Bug fixes and major cleanups

Overview of Changes in BEAST/BSE 0.4.1:

  • Added cool startup splash-screen from Jimmac
  • Added GSL - a common sound routine library for BSE and aRts
  • Added part support for songs with piano roll editor
  • A Guile based scheme shell for BSE has been added: bswshell
  • Added support for execution of scheme scripts in BEAST
  • Added MIDI synthesis support
  • Added sample/wave display and preview facilities
  • Added sample loaders for .wav, .ogg, .mp3 and .gslwave files
  • Added file descriptor caching layer to lessen the impact of unix' MAX_OPEN_FD limitation
  • Added sophisticated sample caching layer to spare file I/O and mp3 or Vorbis decoding
  • New threaded sound engine which can process synthesis modules in the background or on a seperate processor
  • Many (not yet all) synthesis modules got ported to the new engine and got improved in quality and speed
  • New synthesis modules:
    • FreeVerb - a reverb based on code by Jeremy Wakefield
    • BiquadFilter - various basic IIR (resonance) filter types
    • ADSR Envelope - a simple envelope generator
    • IIR Filter - various IIR filter types
    • Ports/SubSynth - allows synthesis network rerouting
    • Constant - constant value output module
    • WaveOsc - Anti-aliasing wave playback
    • Sequencer - a mini sequencer for harmonic tone switches
    • Amplifier - a VCA equivalent with featurefull control variants
  • Joint (multi-connect) channel support, allowing multiple input connections per channel on some modules
  • Major speed improvements to the threading layer by using pthreads directly where possible
  • New 19"-rack alike GUI front-end for customized GUI presentation of .bse projects
  • Major GUI cleanups and improvements
  • Major documentation improvements
  • Ported BEAST/BSE to Gtk+2.0 and GLib-2.0
  • Moved the BSE type system into GLib-2.0 as GObject
  • A huge amount of bug fixes

Overview of Changes in BEAST/BSE 0.4.0:

  • Various effects are supported for sequencer notes now
  • Sequencer and mixer cleanups and speedups
  • Added support for Cubic Interpolation
  • Complete reimplementation of the type and parameter systems for integration with upcomming GLib 1.4 facilities.
  • New synthesis modules:
    • DavXTalString - string synthesizer
    • DavGuitar - physical modelling acoustic guitar
    • DavChorus - chorusing filter

Overview of Changes in BEAST/BSE 0.3.3:

  • Fixed font specification in pattern editor
  • GNOME Canvas redrawing workarounds
  • Libart hang workaround
  • Libtool update

Overview of Changes in BEAST/BSE 0.3.2:

  • Songs have a pattern play list now that can be altered
  • Major overhaul of the mixing engine which is now agressively optimized and contains all necessary means for effect implementations
  • Synthesis tools palette for the synthesis network router and many other GUI improvements
  • Enabled procedure support for the pattern editor to supply spreadsheet like editing facilities
  • New synthesis modules:
    • BseMixer - mix 4->1 channels with adjustable volumes
    • DavOrgan - a modifiable Additive Organ Synthesizer
    • DavSynDrum - a synthesized drum generator
    • DavCanyonDelay - adds deep, long delay echo effects
    • DavBassFilter - TB-303 low-pass resonant filter clone
  • Pattern editor keytable display
  • Simple sample views for samples used in a project
  • More test files in the test/ subdirectory ;)
  • Vast amounts of code cleanups and bug fixes ;)

Overview of Changes in BEAST/BSE 0.3.1:

  • Fixed a dumb major bug in the ALSA backend that could prevent it from playing at all
  • Preferences dialog contains BEAST preferences as well now
  • Keytable caching to avoid XKB bug triggering
  • Stringified enum and flags support in plugins (autogenerated) and in GUI
  • Made the driver hirarchy of objects more modular in preparation for MIDI devices integration
  • New synthesis object: BseCompressor
  • Runtime display of FAQ ;)
  • Random GUI improvements
  • ALSA 0.5.0 support
  • Miscellaneous minor bugfixes

What's new in BEAST/BSE 0.3.0:

  • Synthesis networks implemented, plugins currently imlemented:
    • noise generator
    • generic oscillator for various wave forms, such as sine, saw, triangle...
    • FIR filter with lowpass and highpass mode
    • multiplier
    • adder (can also run in subtract mode)
    • recording source
  • BseIcon support for C-source inlined RLE-encoded RGB(A) images
  • Envelopes and polyphony for song instruments
  • Incremental keytable patch mechanism
  • Good overall stability
  • Preferences dialog
  • Device Monitor for latency settings
  • New BseHeart object with new PCM device syncronization/mixing model
  • Procedure types
  • Improved .bse file format
  • Bunch of exciting things that I forgot about ;)