Giter Club home page Giter Club logo

buzztrax's Introduction

Buzztrax

Gitter

quick info

Please turn you browser to http://www.buzztrax.org to learn what this project is about. Buzztrax is free software and distributed under the LGPL.

build status

We are running continuous integration on github actions, get coverage from codecov and have the codebase checked by coverity:

Build Status Test Coverage Coverity Defects

intro

Buzztrax is a music composer similar to tracker applications. It is roughly modelled after the windows only, closed source application called Buzz.

requirements

  • gstreamer >= 1.2 and its plugins (gstreamer, gst-plugins-base and gst-plugins-good).
  • glib, gsf and libxml2 for the core libraries.
  • clutter-gtk and gtk+ for the UI

optional packages

  • gst-plugins-ugly: for the use of mp3 recording
  • gst-plugins-bad: extra audio effects
  • gudev and libasound: for interaction controller support
  • orc: for plugin acceleration
  • fluidsynth: to build a relates gstreamer wrapper
  • check: for unit tests

building from git

To build use autogen.sh instead of configure. This accept the same options like configure. Later one can use autoregen.sh to rerun the bootstrapping. To build from git one needs to have gtk-doc, yelp-tools and cvs (for autopoint from gettext) installed.

directories

  • docs : design ideas and API reference
  • po : gettext i18n catalogs
  • src : the project sources
    • ui
      • cmd : buzztrax tool for the command line
      • edit : buzztrax editor (gtk based ui)
    • lib
      • core : logic, e.g. connections framework, file i/o, ...
      • ic : interaction controller
  • tests : unit tests (same directory structure as src)

installing locally

Use following options for ./autogen.sh or ./configure

--prefix=$HOME/buzztrax
--with-gconf-source=xml::/home/ensonic/.gconf/
--with-desktop-dir=/home/ensonic/.gnome2/vfolders/

when installing the package to e.g. $HOME/buzztrax you ned to set a few environment variables. To use the apps these variables are enough:

# libraries:
export LD_LIBRARY_PATH=$HOME/buzztrax/lib:$LD_LIBRARY_PATH
# gstreamer
export GST_PLUGIN_PATH="$HOME/buzztrax/lib/gstreamer-1.0"
# mime-database & icon-themes:
export XDG_DATA_DIRS="$XDG_DATA_DIRS:$HOME/buzztrax/share"
update-mime-database $HOME/buzztrax/share/mime/

Likewise for the man-pages to be found:

export MANPATH=\$MANPATH:$prefix/share/man

For developers:

# see buzztrax help files in devhelp:
export DEVHELP_SEARCH_PATH="$DEVHELP_SEARCH_PATH:$HOME/buzztrax/share/gtk-doc/html"
# compile against buzztrax libs using pkg-config:
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$HOME/buzztrax/lib/pkgconfig"
#
export GI_TYPELIB_PATH="\$GI_TYPELIB_PATH:$prefix/lib/girepository"

installing in /usr/local

The default value for the --prefix configure option is /usr/local. Also in that case the variables mentioned in the last example need to be exported.

running the apps

cd $HOME/buzztrax/bin
./buzztrax-cmd --command=info --input-file=../share/buzztrax/songs/melo1.xml
./buzztrax-cmd --command=play --input-file=../share/buzztrax/songs/melo1.xml
./buzztrax-cmd --command=encode --input-file=../share/buzztrax/songs/melo1.xml --output-file=./melo1.ogg
./buzztrax-edit --command=load --input-file=../share/buzztrax/songs/melo1.xml

running unit tests

run all the tests:

make check

run all the tests in one suite:

make bt_cmd.check
make bt_core.check
make bt_edit.check
make bt_gst.check
make bt_ic.check

select tests to run:

BT_CHECKS="test_bt_edit_app*" make check
BT_CHECKS="test_bt_edit_app*" make bt_edit.check

activate some logging info that can help while testing:

BT_TEST_DEBUG=1 make check

The tests make use of Xvfb (X Virtual Frame Buffer) to create UI in a headless scenario; if installed, it will be used. Sometimes it's useful to be able to see the UI when writing or debugging tests, though. You can set BT_CHECK_NO_XVFB=1 to disable use of XVfb. You will then see UI windows created on your desktop directly during test runs.

To debug a test suite with gdb, try:

BT_CHECKS="test_bt_edit_app*" make bt_edit.gdb

To run Valgrind's memcheck over a test suite:

BT_CHECKS="test_bt_edit_app*" make bt_edit.valgrind

The Valgrind log file will be found at /tmp/<test_name>.valgrind.. Logs without errors are deleted automatically after test execution.

You may find that you need to tweak the location of the Valgrind suppression files for your OS (the 'default.supp' file is found there.) If you have that issue, try this:

VALSUPP=/usr/libexec/valgrind BT_CHECKS="test_bt_edit_app*" make -e bt_edit.valgrind

reporting issues

Run the application from a terminal like e.g.:

GST_DEBUG=4 GST_DEBUG_FILE=./debug.log buzztrax-edit

and attach the log file to a bug report at https://github.com/Buzztrax/buzztrax/issues.

If there is a reproducible crash, run:

gdb $(which buzztrax-edit)

and in gdb type r for run and when the application crashed bt to get a backtrace. Share that text in the bugreport.

buzztrax's People

Contributors

adrianbunk avatar ao2 avatar bmwiedemann avatar c-a avatar djdeath avatar dlbeswick avatar ensonic avatar gitter-badger avatar loadstar81 avatar rffontenelle avatar sdroege avatar sebras avatar trusktr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

buzztrax's Issues

Question about Live Looping functionality status & plans

Looking at the roadmap for 0.9 and the TODO, there's mention of a Buzztrax-Live module
http://wiki.buzztrax.org/index.php/Buzztrax-live
and remote control:
http://wiki.buzztrax.org/index.php/Remote_control

Just wondering how far you are in the design, as I'm looking eagerly for live looping.
Is the Playback controller intended to provide equivalent functionality as the BTDSys's "LiveJumpHACK"?
http://cdn7.atwikiimg.com/_pub/buzzusers/backup/BuzzMachines_help_backup/BTDSys%20LiveJumpHACK.html

BR,

LX

The zoom is broken

Hi, when I click on the "Zoom in/out so that everything is visible" button, the zoomed image gets shifted on the top-left border of the canvas, and the canvas gets clipped.

The canvas clipping also happens when I zoom in manually.

Thanks,
Antonio

download missing machines

While playing with some sample songs, I disovered that I do not have all machines available to play some songs.

It would be nice, if the user has the abability to download and install such missing machines.

For this we can enhance the program a little bit:

  • a machine should have a origin URL where someone can download binaries and/or souurces
  • buzztard should discover the running system and try to grab the right download from the machine
  • if buzztard downloads the sources, it should try to build them in the background
  • buzztard should install the additional machines in a specific "extra" machine folder
  • a song save format should contain all possible informations about the machines/effects to allow such feature
  • after installing the missing machines, buzztard should reload the song

We can also think about a global machine directory or dowload server (this should stablelize the download avalibility) ... but alternate URL's should also supported (like an private overlay).

Same goes for effects :-)

--disable-deprecated does not work

I have tried (again with my jhbuild stuff) to build buzztrax and wanted to disable the "fail on deprecated" ... but it does not work.

Using something like this (you can check with the latest jhbuild script):

./configure --enable-debug=yes --prefix=/home/waffel/buzztrax/jhbuild/install --disable-deprecated

ERROR:

make[2]: Entering directory `/home/waffel/buzztrax/jhbuild/build/buzztrax'
CC libbuzztrax_ic_la-ic.lo
src/lib/ic/ic.c: In function 'btic_init_pre':
src/lib/ic/ic.c:66:3: error: 'g_type_init' is deprecated (declared at /home/waffel/buzztrax/jhbuild/install/include/glib-2.0/gobject/gtype.h:669) [-Werror=deprecated-declarations]
cc1: all warnings being treated as errors

Selectable UI themes

Replace --enable_compact_ui configure with css - check USE_COMPACT_UI. Allow to choose the theme to use in settings.

Fluidsynth has trouble loading sound fonts.

I'm getting these errors:

fluidsynth: error: Unable to open file "/usr/share/doc/libfluidsynth-dev/examples/example.sf2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/usr/share/doc/libfluidsynth-dev/examples/example.sf2"
fluidsynth: error: Unable to open file "/usr/share/sounds/sf2/Vintage_Dreams_Waves_v2.sf2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/usr/share/sounds/sf2/Vintage_Dreams_Waves_v2.sf2"
fluidsynth: error: Unable to open file "/home/trusktr/sbks/synth/FlangerSaw.SF2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/home/trusktr/sbks/synth/FlangerSaw.SF2"
fluidsynth: error: There is no preset with bank number 127 and preset number 127 in SoundFont -1
fluidsynth: error: Unable to open file "/usr/share/doc/libfluidsynth-dev/examples/example.sf2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/usr/share/doc/libfluidsynth-dev/examples/example.sf2"
fluidsynth: error: Unable to open file "/usr/share/sounds/sf2/Vintage_Dreams_Waves_v2.sf2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/usr/share/sounds/sf2/Vintage_Dreams_Waves_v2.sf2"
fluidsynth: error: Unable to open file "/home/trusktr/sbks/synth/FlangerSaw.SF2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/home/trusktr/sbks/synth/FlangerSaw.SF2"
fluidsynth: error: There is no preset with bank number 127 and preset number 127 in SoundFont -1
fluidsynth: error: Unable to open file "/usr/share/doc/libfluidsynth-dev/examples/example.sf2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/usr/share/doc/libfluidsynth-dev/examples/example.sf2"
fluidsynth: error: Unable to open file "/usr/share/sounds/sf2/Vintage_Dreams_Waves_v2.sf2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/usr/share/sounds/sf2/Vintage_Dreams_Waves_v2.sf2"
fluidsynth: error: Unable to open file "/home/trusktr/sbks/synth/FlangerSaw.SF2"
fluidsynth: error: Couldn't load soundfont file
fluidsynth: error: Failed to load SoundFont "/home/trusktr/sbks/synth/FlangerSaw.SF2"
fluidsynth: error: There is no preset with bank number 127 and preset number 127 in SoundFont -1

Original issue: http://buzztrax.org/bugs/?do=view_issue&issue=18

cannot run buzztrax from jhbuild shell

After success build of buzztrax I tried to run it from jhbuild shell:

jhbuild -f ~/projects/build-tools/jhbuild/buzztrax.jhbuild.rc -m ~/projects/build-tools/jhbuild/buzztrax.modules shell

and get following error:

~/buuztrax/jhbuild/install/bin/buzztrax-edit
Gtk-Message: Failed to load module "canberra-gtk-module"
Gtk-Message: Failed to load module "gnomesegvhandler"

(buzztrax-edit:18093): Gdk-WARNING **: The program 'buzztrax-edit' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadRequest (invalid request code or no such operation)'.
(Details: serial 147 error_code 1 request_code 153 minor_code 19)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the GDK_SYNCHRONIZE environment
variable to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)

I guess there are some other modules missing?

starting buzztrax from jhbuild core dumped in fedora VM

jhbuild ....
*** success *** [8/8]
[waffel@localhost jhbuild]$ hbuild -f ~/projects/buzztrax/build-tools/jhbuild/buzztrax.jhbuild.rc run ~/buzztrax/jhbuild/install/bin/buzztrax-edit
bash: hbuild: command not found...
[waffel@localhost jhbuild]$ jhbuild -f ~/projects/buzztrax/build-tools/jhbuild/buzztrax.jhbuild.rc run ~/buzztrax/jhbuild/install/bin/buzztrax-edit
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
libGL error: failed to load driver: vboxvideo
libGL error: Try again with LIBGL_DEBUG=verbose for more details.
OpenGL Warning: crPixelCopy3D: simply crMemcpy'ing from srcPtr to dstPtr

(buzztrax-edit:7817): GLib-GIO-ERROR **: Settings schema 'org.gnome.desktop.interface' is not installed

Trace/breakpoint trap (core dumped)

Two labels for machines: custom name and machine name.

So for example, the custom name could be changed to anything like "chorus melody" but the name of the machine (the type of machine) would conveniently still be visible.

Each machine would have two labels. So if I make an FSM-Infector machine, the first label would permanently be "FSM-Infector" the user can change the second label to something custom like "Bass Line".

As a result, the machine drop down list in the pattern view and the track labels in the sequence view would show something like:

Bass Line (FSM-Infector)

Original issue: http://buzztrax.org/bugs/?do=view_issue&issue=12

song-io error mesages lack detail

We need better error handling for song_io

  • vmethod need GError, bt_edit_application_{load,save}_song needs GError as
    well
  • e.g. the main-window code can use that for better reporting (same for buzztrax-cmd)

Scroll Wheel in Pattern Editor

Not sure if it's a bug or feature request: In Buzztrax it doesn't seem to be possible to navigate to the bottom of long patterns that do not fit on the screen vertically (ex: 64 steps on my 1280x800). In old Buzz, this is achievable with the cursor, page up/down or the scroll wheel (this is one of the feature brought by Overloader).

Cannot load song from command line

Hi, it looks like the --input-file option is not working.

This is how I am using it:

$ buzztrax-edit --input-file=ao2_buzztrax_audiotestsrc.xml

but the default empty song is displayed, not the one I tried to load.

Thanks,
Antonio

call-to-mktemp

Hello!
I to build package and OBS output gave me the following warning:

libbml1.x86_64: W: call-to-mktemp /usr/lib64/libbml.so.1.1.0
This executable calls mktemp. As advised by the manpage (mktemp(3)), this
function should be avoided. Some implementations are deeply insecure, and
there is a race condition between the time of check and time of use (TOCTOU).
See http://capec.mitre.org/data/definitions/29.html for details, and contact
upstream to have this issue fixed.

https://pmbs.links2linux.de/package/live_build_log/home:awissu:branches:Extra/buzztrax/Factory/x86_64

Thank you for the attention.

Build error

No I get following error:

GEN /tmp/test.wav
Called unk_?DSP_Init@@yixh@Z
Called unk_?DSP_Init@@yixh@Z
WARNING: erroneous pipeline: no element "wavenc"
make[2]: *** [/tmp/test.wav] Error 1
make[2]: Leaving directory /home/waffel/buzztrax/jhbuild/build/buzztrax' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory/home/waffel/buzztrax/jhbuild/build/buzztrax'
make: *** [all] Error 2
*** Error during phase build of buzztrax: ########## Error running make -j 1 *** [16/18]

support alsa sequencer

Right now we're using raw-midi by directly interfacing with physical midi devices. Therefore apps like vkeybd don't work. In order to support them we need to use the alsa sequencer api.

stability issues with latest git

Current git is extremely unstable here (Arch Linux 64bit).
It used to work way better just a few weeks ago.
As of buzztrax-git-0.9.0.r4179.93b2cfc I get freezes a few seconds after starting. Nothing particularly meaningful is logged - appart form a few gtk warnings:

[gimmeapill@pill-mobile4 ~]$ buzztrax-edit
(buzztrax-edit:1681): GLib-GObject-WARNING *: The property GtkSettings:gtk-fallback-icon-theme is deprecated and shouldn't be used anymore. It will be removed in a future version.
(buzztrax-edit:1681): GLib-GObject-WARNING *
: The property GtkImageMenuItem:use-stock is deprecated and shouldn't be used anymore. It will be removed in a future version.
(buzztrax-edit:1681): GLib-GObject-WARNING *: The property GtkSettings:gtk-menu-images is deprecated and shouldn't be used anymore. It will be removed in a future version.
(buzztrax-edit:1681): GLib-GObject-WARNING *
: The property GtkImageMenuItem:accel-group is deprecated and shouldn't be used anymore. It will be removed in a future version.
(buzztrax-edit:1681): GLib-GObject-WARNING *: The property GtkToolButton:stock-id is deprecated and shouldn't be used anymore. It will be removed in a future version.
(buzztrax-edit:1681): GLib-GObject-WARNING *
: The property GtkTreeView:rules-hint is deprecated and shouldn't be used anymore. It will be removed in a future version.
(buzztrax-edit:1681): GLib-GObject-WARNING *: The property GtkWidget:margin-left is deprecated and shouldn't be used anymore. It will be removed in a future version.
(buzztrax-edit:1681): GLib-GObject-WARNING *
: The property GtkSettings:gtk-button-images is deprecated and shouldn't be used anymore. It will be removed in a future version.
(buzztrax-edit:1681): GLib-GObject-WARNING **: The property ClutterActor:anchor-gravity is deprecated and shouldn't be used anymore. It will be removed in a future version.

(buzztrax-edit:1681): GLib-GObject-WARNING **: The property GtkEntry:inner-border is deprecated and shouldn't be used anymore. It will be removed in a future version.

(buzztrax-edit:1681): GLib-GObject-WARNING **: The property GtkWidget:margin-right is deprecated and shouldn't be used anymore. It will be removed in a future version.

Once it happens, I have to kill the process as the whole x session is frozen as well.
It is possibly a missing dependency on my side, as the pkgbuild in Arch is not up to date, but it used to work ok just a month ago.
Any debug switch that should be enabled to troubleshoot this further? core dump?

play pattern in pattern view

... without the need to start a sequence and create a 1 pattern loop ... it would be nice to play a single pattern of a machine which is currently shown in the pattern view ... makes it easier to compose complex rhythm stuff.

segmentation fault

latest version ... on my fedora (not VM! ... real installation).

used jhbuild and run it with gdb:

(buzztrax-edit:24747): Gtk-WARNING **: gtkwidget.c:6151: no accelerator (104,4) installed in accel group (0x884d468) for GtkImageMenuItem (0x88a25d8)
[New Thread 0xadb2ab40 (LWP 24753)]

Program received signal SIGSEGV, Segmentation fault.
0xb7fb85fb in bt_settings_determine_audiosink_name (self=0x82397d0, _element_name=_element_name@entry=0xbfffe368,
_device_name=_device_name@entry=0xbfffe36c) at src/lib/core/settings.c:483
483 if (!strcmp (g_getenv ("GSETTINGS_BACKEND"), "memory")) {
Missing separate debuginfos, use: debuginfo-install GConf2-3.2.6-7.fc20.i686 PackageKit-gtk3-module-0.8.16-1.fc20.i686 adwaita-gtk3-theme-3.10.0-1.fc20.i686 dbus-glib-0.100.2-2.fc20.i686 dconf-0.18.0-2.fc20.i686 gvfs-1.18.3-2.fc20.i686 libbluray-0.5.0-2.fc20.i686 libcanberra-0.30-4.fc20.i686 libcanberra-gtk3-0.30-4.fc20.i686 libcroco-0.6.8-3.fc20.i686 libogg-1.3.0-6.fc20.i686 librsvg2-2.40.1-1.fc20.i686 libtdb-1.2.12-2.fc20.i686 libtool-ltdl-2.4.2-23.fc20.i686 libvorbis-1.3.4-1.fc20.i686 llvm-libs-3.3-4.fc20.i686
(gdb) bt
#0 0xb7fb85fb in bt_settings_determine_audiosink_name (self=0x82397d0, _element_name=_element_name@entry=0xbfffe368,

_device_name=_device_name@entry=0xbfffe36c) at src/lib/core/settings.c:483

#1 0x08093120 in make_audio_sink (self=self@entry=0x8846250) at src/ui/edit/main-page-waves.c:386
#2 0x08093241 in update_audio_sink (self=self@entry=0x8846250) at src/ui/edit/main-page-waves.c:422
#3 0x08098027 in bt_main_page_waves_new (pages=pages@entry=0x81bd2b0) at src/ui/edit/main-page-waves.c:1585
#4 0x0806cf9f in bt_main_pages_init_ui (self=0x81bd2b0) at src/ui/edit/main-pages.c:194
#5 bt_main_pages_new () at src/ui/edit/main-pages.c:234
#6 0x08061535 in bt_main_window_init_ui (self=0x886b168) at src/ui/edit/main-window.c:386
#7 bt_main_window_new () at src/ui/edit/main-window.c:447
#8 0x0805e324 in bt_edit_application_constructor (type=135935632, n_construct_params=0, construct_params=0x0)

at src/ui/edit/edit-application.c:897

#9 0x4ee28ef9 in g_object_new_with_custom_constructor (n_params=0, params=0x0, class=0x881a750) at gobject.c:1665
#10 g_object_new_internal (class=class@entry=0x881a750, params=params@entry=0x0, n_params=n_params@entry=0) at gobject.c:1744
#11 0x4ee2a859 in g_object_newv (object_type=object_type@entry=135935632, n_parameters=n_parameters@entry=0, parameters=parameters@entry=0x0)

at gobject.c:1890

#12 0x4ee2af70 in g_object_new (object_type=object_type@entry=135935632, first_property_name=first_property_name@entry=0x0) at gobject.c:1556
#13 0x0805e697 in bt_edit_application_new () at src/ui/edit/edit-application.c:273
#14 0x0805d3b6 in main (argc=1, argv=0xbfffe874) at src/ui/edit/bt-edit.c:146

build error with latest version (jhbuild)

@ensonic

after getting jhbuild in my VM (fedora) up and running (see also the buildtool branch) I get now many errors ... but configure runs through .... possible we need additional configure checks?

make[2]: Entering directory `/home/waffel/buzztrax/jhbuild/build/buzztrax'
CC libbtedit_la-about-dialog.lo
CC libbtedit_la-change-log.lo
CC libbtedit_la-change-logger.lo
CC libbtedit_la-crash-recover-dialog.lo
CC libbtedit_la-edit-application.lo
In file included from src/ui/edit/machine-canvas-item.h:55:0,
from src/ui/edit/bt-edit.h:79,
from src/ui/edit/edit-application.c:42:
src/ui/edit/main-page-machines.h:43:3: error: unknown type name 'GtkVBox'
GtkVBox parent;
^
src/ui/edit/main-page-machines.h:50:3: error: unknown type name 'GtkVBoxClass'
GtkVBoxClass parent;
^
In file included from src/ui/edit/bt-edit.h:90:0,
from src/ui/edit/edit-application.c:42:
src/ui/edit/main-page-patterns.h:43:3: error: unknown type name 'GtkVBox'
GtkVBox parent;
^

v8 javascript bindings for writing plugins

This idea is way out there, but I think it would be awesome to bind to v8 that we users can create VST via javascript or a subset of javascript. It might also allow use to ship the application in a node.js/webkit wrapper.

Let me know your thoughts.

Implement a tree model for the preset list

Right now we have no signalling to sync the preset list between multiple machines of the same type. Imagine two windows for the same machine type open and adding a new preset in one. As a user I would expect it to show up in the 2nd window too.

Save a song's change history.

Save a song's change history so that it's possible to undo changes even after quitting and restarting buzztrax and reloading a song.

Handle invalid presets

Preset might get corrupted or one might load a preset saved for a different version. While this should be all handled with versioning, it might be a good idea to do a two pass load, first check the ranges and then only load if all ranges are good. This avoid tons of glib warnings like

(buzztrax-edit:32585): GLib-GObject-WARNING **: value "((bml-FSM-InfectorOSC2-Wave) 106)" of type 'bml-FSM-InfectorOSC2-Wave' is invalid or out of range for property 'OSC2-Wave' of type 'bml-FSM-InfectorOSC2-Wave'

compile error with jhbuild

Do we want to have debug enabled? I thought we wanted to disable? (for me it is absolutely ok to have this enabled ... simple we need to fix those error :-))

CC libbtcore_check_la-e-sink-machine.lo
tests/lib/core/e-sink-machine.c: In function 'test_bt_sink_machine_latency':
tests/lib/core/e-sink-machine.c:294:3: error: format '%llu' expects argument of type 'long long unsigned int', but argument 10 has type 'gulong' [-Werror=format=]
GST_INFO_OBJECT (sink,
^
tests/lib/core/e-sink-machine.c:294:3: error: format '%llu' expects argument of type 'long long unsigned int', but argument 11 has type 'gulong' [-Werror=format=]
cc1: all warnings being treated as errors
make[2]: *** [libbtcore_check_la-e-sink-machine.lo] Error 1

buzztrax crashes with "Attempt to unlock mutex that was not locked"

Hi,

using Buzztrax from the master branch I get crashes with the following error when connecting machines:

Attempt to unlock mutex that was not locked

Steps to replicate:

  1. Open a new song
  2. Add an audiotestsrc machine
  3. Select "Connect machines" on the audiotestsrc context menu, and connect to master.

This is the backtrace:

Program received signal SIGABRT, Aborted.
0x00007ffff08a7077 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56      ../nptl/sysdeps/unix/sysv/linux/raise.c: File o directory non esistente.
(gdb) bt full
#0  0x00007ffff08a7077 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
        resultvar = 0
        pid = 25550
        selftid = 25550
#1  0x00007ffff08a8458 in __GI_abort () at abort.c:89
        save_stage = 2
        act = {__sigaction_handler = {sa_handler = 0x11b8a70, sa_sigaction = 0x11b8a70}, sa_mask = {__val = {29338368, 0, 140737351949831, 5, 0, 44, 
              140737228803368, 18582016, 0, 7061888, 140737351975717, 44, 140737229664797, 44, 140737235799040, 0}}, sa_flags = -255760496, 
          sa_restorer = 0x7ffff0f24ce0}
        sigs = {__val = {32, 0 <repeats 15 times>}}
#2  0x00007ffff0ec495d in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#3  0x00007ffff7b9d0f1 in async_add_to_pipeline (peer=0x0, info=0x63ce, user_data=0x11b8a00) at src/lib/core/setup.c:1117
        self = 0x11b8a70
        __FUNCTION__ = "async_add_to_pipeline"
#4  0x00007ffff7b9f0b1 in add_to_pipeline (self=<optimized out>) at src/lib/core/setup.c:1189
        p = 0x11b8a00
        is_playing = 0
#5  bt_setup_update_pipeline (self=0x11b8a70) at src/lib/core/setup.c:1356
        res = 1
        not_visited_machines = 0x0
        not_visited_wires = 0x0
        wire = 0x1bfab00
        machine = 0x1bfab00
        master = 0x11b8a00
        __FUNCTION__ = "bt_setup_update_pipeline"
#6  0x00007ffff7b9f337 in bt_setup_add_wire (self=0x11b8a70, wire=0xe6d8c0) at src/lib/core/setup.c:1448
        src = 0x13bc560
        dst = 0x13bc210
        __FUNCTION__ = "bt_setup_add_wire"
#7  0x00007ffff7bba993 in bt_wire_constructed (object=0xe6d7c0) at src/lib/core/wire.c:1250
        self = 0xe6d8c0
        setup = 0x11b8a70
        __FUNCTION__ = "bt_wire_constructed"

Same happens when diconnecting machines.

So the problem seems to be an unbalanced unlock in async_add_to_pipeline() and async_remove_from_pipeline().

Locking the mutex before calling the offending functions fixes the issue,
patch in http://ao2.it/tmp/0001-Fix-crashes-due-to-an-unbalanced-lock.patch

Ciao,
Antonio

Implement the keyboard shortcut editor for the preferences window

src/ui/edit/settings-page-shortcuts.c has some boilerplate and planning comments.

This needs work on on the settings schema so that we can store the keyboard shortcuts. Alternatively we can store them in the custom css theme.

Ideally each part of the UI that has configurable shortcuts maintains a set of those and registers them 'globally' so that the preferences page just shows all these sections and allows editing them.

shell tests should not crash in uninstalled mode

buzztrax 0.9.0: ./test-suite.log

TOTAL: 5

PASS: 3

SKIP: 0

XFAIL: 0

FAIL: 2

XPASS: 0

ERROR: 0

.. contents:: :depth: 2

FAIL: tests/bt-cmd-info.sh

testing /home/newk/buzztrax-git/buzztrax/tests/songs/buzz1.xml
./tests/bt-cmd-info.sh: line 43: 30665 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/buzz2.xml
./tests/bt-cmd-info.sh: line 43: 30693 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/buzz3.xml
./tests/bt-cmd-info.sh: line 43: 30712 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/buzz4.xml
./tests/bt-cmd-info.sh: line 43: 30733 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/buzz5.xml
./tests/bt-cmd-info.sh: line 43: 30752 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/buzz6.xml
./tests/bt-cmd-info.sh: line 43: 30771 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/buzz7.xml
./tests/bt-cmd-info.sh: line 43: 30790 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/buzz8.xml
./tests/bt-cmd-info.sh: line 43: 30809 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/buzz9.xml
./tests/bt-cmd-info.sh: line 43: 30828 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/combi1.xml
./tests/bt-cmd-info.sh: line 43: 30847 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/combi2.xml
./tests/bt-cmd-info.sh: line 43: 30866 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/combi3.xml
./tests/bt-cmd-info.sh: line 43: 30885 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/melo1.xml
./tests/bt-cmd-info.sh: line 43: 30904 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/melo2.xml
./tests/bt-cmd-info.sh: line 43: 30923 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/melo3.xml
./tests/bt-cmd-info.sh: line 43: 30942 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/melo4.xml
./tests/bt-cmd-info.sh: line 43: 30961 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/melo5.xml
./tests/bt-cmd-info.sh: line 43: 30980 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/melo6.xml
./tests/bt-cmd-info.sh: line 43: 30999 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/samples1.bzt
./tests/bt-cmd-info.sh: line 43: 31019 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/samples2.bzt
./tests/bt-cmd-info.sh: line 43: 31039 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple1.xml
./tests/bt-cmd-info.sh: line 43: 31058 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple2.xml
./tests/bt-cmd-info.sh: line 43: 31077 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple3.xml
./tests/bt-cmd-info.sh: line 43: 31096 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple4.xml
./tests/bt-cmd-info.sh: line 43: 31115 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple5.xml
./tests/bt-cmd-info.sh: line 43: 31134 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple6.xml
./tests/bt-cmd-info.sh: line 43: 31153 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple1.bzt
./tests/bt-cmd-info.sh: line 43: 31173 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple2.bzt
./tests/bt-cmd-info.sh: line 43: 31193 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple3.bzt
./tests/bt-cmd-info.sh: line 43: 31213 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple4.bzt
./tests/bt-cmd-info.sh: line 43: 31233 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/simple5.bzt
./tests/bt-cmd-info.sh: line 43: 31253 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/broken2.xml
./tests/bt-cmd-info.sh: line 43: 31272 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/test-simple0.xml
./tests/bt-cmd-info.sh: line 43: 31291 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/test-simple1.xml
./tests/bt-cmd-info.sh: line 43: 31310 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/test-simple2.xml
./tests/bt-cmd-info.sh: line 43: 31329 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/test-simple3.xml
./tests/bt-cmd-info.sh: line 43: 31348 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/test-simple4.xml
./tests/bt-cmd-info.sh: line 43: 31367 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/test-simple5.xml
./tests/bt-cmd-info.sh: line 43: 31386 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
!!! failed
testing /home/newk/buzztrax-git/buzztrax/tests/songs/broken1.xml
./tests/bt-cmd-info.sh: line 67: 31406 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
testing /home/newk/buzztrax-git/buzztrax/tests/songs/broken1.bzt
./tests/bt-cmd-info.sh: line 67: 31426 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log
testing /home/newk/buzztrax-git/buzztrax/tests/songs/broken3.xml
./tests/bt-cmd-info.sh: line 67: 31446 Trace/breakpoint trap (core dumped) GST_DEBUG_NO_COLOR=1 GST_DEBUG=":2,bt-:4" $LIBTOOL $BUZZTRAX_CMD --command=info --input-file="$song" > $info 2>> /tmp/bt_cmd_info.log

FAIL: tests/bt-cmd-cli.sh

testHelpOutput
testVersionOutput
testOptions
./tests/bt-cmd-cli.sh: line 19: 31617 Trace/breakpoint trap (core dumped) $LIBTOOL $BUZZTRAX_CMD --command=info > /dev/null 2>&1
./tests/bt-cmd-cli.sh: line 19: 31634 Trace/breakpoint trap (core dumped) $LIBTOOL $BUZZTRAX_CMD --command=play > /dev/null 2>&1
./tests/bt-cmd-cli.sh: line 19: 31651 Trace/breakpoint trap (core dumped) $LIBTOOL $BUZZTRAX_CMD --command=convert > /dev/null 2>&1
./tests/bt-cmd-cli.sh: line 19: 31668 Trace/breakpoint trap (core dumped) $LIBTOOL $BUZZTRAX_CMD --command=encode > /dev/null 2>&1
./tests/bt-cmd-cli.sh: line 19: 31685 Trace/breakpoint trap (core dumped) $LIBTOOL $BUZZTRAX_CMD --command=does_not_exist > /dev/null 2>&1
testPlayCommand
./tests/bt-cmd-cli.sh: line 35: 31770 Trace/breakpoint trap (core dumped) $LIBTOOL $BUZZTRAX_CMD --command=play --input-file=$TESTSONGDIR/test-simple1.xml > /dev/null 2>&1
testPlayCommandWithQuietOption
./tests/bt-cmd-cli.sh: line 40: 31791 Trace/breakpoint trap (core dumped) $LIBTOOL $BUZZTRAX_CMD --command=play -q --input-file=$TESTSONGDIR/simple2.xml > /dev/null 2>&1
testConvertCommand
./tests/bt-cmd-cli.sh: line 44: 31812 Trace/breakpoint trap (core dumped) $LIBTOOL $BUZZTRAX_CMD --command=convert -q --input-file=$TESTSONGDIR/simple2.xml --output-file=$tmpfile > /dev/null 2>&1
ls: cannot access /tmp/shunit.HcqBQ1/tmp/simple2_: No such file or directory
ASSERT:output /tmp/shunit.HcqBQ1/tmp/simple2.out.xml file missing, have:
testEncodeCommand
./tests/bt-cmd-cli.sh: line 53: 31840 Trace/breakpoint trap (core dumped) $LIBTOOL $BUZZTRAX_CMD --command=encode -q --input-file=$TESTSONGDIR/simple2.xml --output-file=$tmpfile > /dev/null 2>&1
ls: cannot access /tmp/shunit.HcqBQ1/tmp/simple2_: No such file or directory
ASSERT:output /tmp/shunit.HcqBQ1/tmp/simple2.wav file missing, have:
testEncodeCommandGuessFormat
./tests/bt-cmd-cli.sh: line 61: 31868 Trace/breakpoint trap (core dumped) $LIBTOOL $BUZZTRAX_CMD --command=encode -q --input-file=$TESTSONGDIR/simple2.xml --output-file=$SHUNIT_TMPDIR/simple2 > /dev/null 2>&1
ls: cannot access /tmp/shunit.HcqBQ1/tmp/simple2*: No such file or directory
ASSERT:output /tmp/shunit.HcqBQ1/tmp/simple2.vorbis.ogg file missing, have:

Ran 8 tests.

FAILED (failures=3)

Show a tooltip in pattern view when hovering over a slot.

By "slot" I mean a cell in the table, the ones that contain a . when empty.

When hovering over a slot, a tooltip showing the column and slot info would be nice. The tooltip might show stuff like the column name, column description, datatype, current slot value, a range of acceptable values, etc. Some of the info in the tooltip would match that of the status bar that shows column info in pattern view (when a slot is focused/active/clicked).

Original: http://buzztrax.org/bugs/?do=view_issue&issue=67

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.