From Buzztrax

Jump to: navigation, search

  1. The primary goal is to get as far as buzz did. That means loading buzz song, loading the machines, have similar editing. This goal has been reached.
  2. Second step is small improvements, user guide, intensive testing and collecting ideas. Its very likely that things like midi-support will fall into this phase as well. We're in this phase now.
  3. Third step is more applications, new features and so on.

The section below track what is planned for each release, what of this is done and what is work in progress.

Release Planning


Future ideas are collected on a separate TODO page (new contributors - that's your link :)). There the ideas are developed, details are fleshed out and research is done. When a developer picks one of them for implementation, we'll assign them to an upcoming version below. Even more todo items can be found in the projects TODO files and at the top of each source code file.

Version 0.12 (??) 2016

Version 0.11 (??) 2015

Version 0.10 (loud) 24.Aug.2015

  • update gst-buzztrax library to make writing plugins easier
  • add a new synthesizer (ebeats)
  • library updates/migration
    • gtk-stock icon migration

Version 0.9 (ascension) 13.Jun.2015

From this version on we'll aim for new features and add some secondary features from buzz.

  • midi (jack, alsa seq)
  • gstreamer
    • Replace PropertyMetaFlags with ParamSpecFlags and new types
  • ui improvements
    • make custom widgets react to theme changes: machine-canvas, pattern-editor, signal-analyzer, vu-meter, wave-viewer
    • move all colors to the theme
    • generate AUTHORS to be used in about dialog
  • settings
    • settings to select dark/light theme
    • improve interaction controller settings and replace the learn dialog
  • library updates/migration

Version 0.8 (bladerunner) 24.Oct.2014

This version is mostly updating the base libraries.

Version 0.7 (victory, not vengeance) 18.Jan.2013

This version aims to catch up with api-updates and as a bug-fix release for 0.6.

  • switch from svn to git on
  • audio engine
    • configurable latency
    • refactor controller to use own pattern control sources
    • support alternative tunings
      • add some extra 12tone tunings to the GstToneControl
      • make tuning configurable in machines (sidsyn, simsyn)
      • need ui to set the tuning per song
      • need to be able to set the musical key over time on the sink
  • settings
    • device selection for e.g. alsa & co. using gst property probe
    • make interaction controller page useful
  • ui
  • refactor/update
    • use LT_INIT instead of AC_PROG_LIBTOOL
    • use G_DEFINE_TYPE:
      • buzztrax
      • gst-buzztrax: lib, plugins (need gst-1.0)
    • use own treeviewmodels (implement the GtkTreeModel interface)
      • build a GObjectListStore
      • build a pattern-list and a machine-list
      • build a sequence-grid
      • build a wave-list and wave-level-list
    • use g_timeout_add_seconds() (glib-1.14)
      • 2 cases left buzztrax/src/ that update play-position in song and wave
    • use gst_element_link_pads or even gst_pad_link instead of gst_element_link{,_many} in core (do the same for gst_element_unlink)
      • machine.c, sink-bin.c (1), wave.c (4), wire.c (1)
  • module reorganisation
    • move bsl -> buzztrax/src/lib/core/song-io/buzz

Version 0.6 (black beats blue) 25.Dec.2011

This version will target to provide some more minor features of buzz, some more enhancements, usability and performance improvements.

  • ui improvements
  • gstreamer integration: buzztrax-dec, allows to play buzztrax songs in e.g. totem, rhythmbox, banshee, ...
  • improve translators life - add comments above translatable text
    • find . -name "*.c" -exec egrep -Hn -B1 "[^N]_\(\"" {} \;
    • or look at po/buzztrax-0.X.pot
  • interaction controller profiles
  • refactoring & cleanup
    • using proper singletons
      • BtUIRessources
      • BtEditApplication and its usage
    • less G_OBJECT casts
    • port from gnomevfs to gio/gvfs
      • 3 files use gnome_vfs_url_show() if we don't have gtk-2.14 (that is okay)
    • migrate from HAL to GUdev
  • test single inlcude build (gtk-3.0)

NEWS: current text

Version 0.5 (crown of thorns) 06.Sep.2009

This version will target to provide all major features of buzz

  • audioengine
  • pattern view
    • play notes
    • more keybindings
    • handle note-off commands
    • faster redraws
  • sequence view
    • faster redraws
  • machine menu
    • support for hierarchies (buzzmachines index, ladspa lrdf categories)
  • machine window
    • add parameter group for wire-pattern controls (volume/pan of previous machines)
  • refactoring
    • refactor _new methods to make it more binding friendly (see BtApplication and the subclasses for an example)
    • remove gtk_widget_set_name() to save translations or atleast remove _(). widget names are used for e.g. themening. they are not shown for e.g. a11y.
    • rid of libgnome dependency
    • read this autotools guide and improve our use of them

NEWS: current text

Version 0.4 (the light in your eyes) 26.Nov.2008

This version will bring wavetable support and UI usability improvments.

  • ui improvements
  • vu-meters in machine icons
  • wavetable
    • loading waves
    • handle more wave properties (volume, loop-mode)
    • loop playback (including ping-pong)
    • playing at different piches
    • waveform display with loop/play markers
    • wavetable mapping into buzzmachines
      • buzztrax to gstbml (need iface or property)
      • gstbml to bml (needs api in bml)
  • support song files as zip files
  • register with the Translation Project
  • Refactoring

NEWS: current text

Version 0.3 (a tale of ice and darkness) 26.Mar.2008

This version will improve stability and make the pattern editor useable.

  • lots of Keyboard shortcuts
  • improved editing of sequence and patterns
    • selection fixes
    • navigation workaround (gtk+ bugs)
    • better input handling
    • insert and delete for lines and tracks
    • pattern editing
      • custom widget for patterns
      • support volume and panorama in sources and processors
      • support master volume
  • improved machine view
    • show volume and panorama
    • add panorama editing
  • better format negotiation when connecting machines
    • autoplug panorama element if needed
  • partial ui state persistence
  • GObject update
    • static strings in param specs
  • Refactoring
  • Multitrack recording

NEWS: current text

Version 0.2 (sunrise) 02.May.2007

This version will target UI usability improvments and introduce more interactivity.

  • preset handling in machines
  • sequence and pattern view table headings
  • allow to confirm dialogs with enter key
  • check installed utility elements
  • help view for machines
  • enhance machine window layout
  • make more settings instant apply
  • interaction controller and playback controller foundation
    • new baselibrary interaction controller
    • UI settings for controllers
    • popup-menu for machine preoperties to assign controllers

NEWS: current text

Version 0.1 (genesis) 30.Oct.2006

This version should serve as a technical preview. That is - everything can change. These are the pending TODOs:

  • check machines when loading song
  • preview warning requester/ first time install requester
    • merge with about, show NEWS (ReleaseNotes)
    • need to show this once per version, settings news-seen="0.1"
  • gui-dialog screenshoter for the manual
  • bring manual up-to-date
  • update german translation
  • add lgpl headers in sources
  • change /home/ensonic in READMEs to $HOME

NEWS: current text

Release Names

  • a game of light and shadows
  • children of the night
  • pretty, annoying, death
  • a sign of life
Support Us


GStreamer Logo
Become a Friend of GNOME
Linux Sound Logo
GNU Library Public Licence
GNU Free Documentation License 1.2