The main author of BEAST/BSE is Tim Janik. A list of the various contributions is given in the About box of BEAST.
This FAQ was written by Tim Janik. Initial markup was done by Dave Seidel, until Alper Ersoy implemented a new markup parser for BEAST documentation. Around the 0.4.1 release, the docs got migrated to texinfo format. After the 0.6.6 release, the documentation system was rewritten, so all docs inclusing the FAQ got migrated to doxer format. In 2011 the FAQ got incorporated into the Beast wiki.
Some versions of gdb have problems figuring dynamic plugins, we can only hope that this is going to be fixed some time soon. Newer versions of gdb may already figure what's going on with the plugins if you simply restart BEAST within gdb.
UPDATE: This problem has not been reproduced with gdb versions newer than 5.
There are various possible causes for this. First, make sure you have BEAST correctly installed and accessing your sound card by running one of the synthesis tests in the ./test/ subdirectory. For custom synthesis networks, make sure you have something noisy (e.g. the audio output of an oscillator) hooked up to a PcmOutput module, and have the network's "Auto Activate" parameter (on it's "Parameters" notebook page, section "Playback Settings") enabled.
This is probably a plugin loading problem, most synthesis networks require plugins and won't work if there are any problems loading/finding them. BEAST loads its plugins from some common installation directory. It therefore needs to be properly installed before you can make use of its plugins. Simply starting it from within the build directory is not sufficient.
See previous question.
Import functionality for foreign sample types is always being worked on, but due to the sheer multitude of formats out there chances are that a specific format is not yet supported. However, sample file loaders have much improved in the last versions, and at this point exist for Ogg/Vorbis, MPEG Audio 1.0/2.0/2.5 Layer I/II/III, RIFF/WAVE, and .bsewave (BSE multi sample format) files.
This was due to a bug in the X Keyboard extension. BEAST tries to figure the country specifics of the keyboard layout, using the XKB extension. Apparently, there are some allocation problems in XkbFreeKeyboard() or XkbFreeClientMap() in libX11, which can cause random crashes. Usually BEAST will run fine when restarted.
UPDATE: Recent versions of XKB seem to have fixed this problem.
The song support was completely rewritten for this version. If lots of compatiblity problem reports occur, a converter might be implemented at some point.
BEAST stores saved data in BSE files. These files can hold everything associated with a project, such as the definition of synthesis networks, songs with their notes and tracks, and even complete music sample files. Except for raw sample data, the contents are stored in a human readable text form using lisp syntax. The textual file contents may even be manually edited, as long as the binary appendix used to store wave data doesn't get corrupted. The recommended mime type image for BSE files looks like this: ,,BSE-Mime-Logo,png
This depends a lot on how you utilise BEAST. If you simply want to create synthesis networks or very simple songs, any Pentium II ought to suffice. If you want to lay down a few tracks with effects you may need something more modern like a CPU with 1 GHz or higher core frequency.
BEAST uses the GnomeCanvas Library to display synthesis networks. That library has a malicious redrawing bug in versions up to (including) 2.2.0.1 triggering an assertion if the code is compiled with debugging output, which looks like this GnomeCanvas error:
GnomeCanvas-ERROR **: file gnome-canvas.c: line 3509 (gnome_canvas_request_update_real): assertion failed: (canvas->idle_id != 0)
aborting...
This issue got fixed with version 2.2.0.2, so users encountering crashes with BEAST upon creation of synthesis networks will need to upgrade their GnomeCanvas Library to at least 2.2.0.2.
BEAST comes with a test/midi-test.bse file in the test/ directory of recent releases, it works out of the box with properly setup MIDI drivers and MIDI pianos. Setting up MIDI drivers can be a tough task on its own but is beyond the scope of this FAQ and is already taken care of by The Linux MIDI-HOWTO, which provides good descriptions and further links to related documentation.
Recent versions of BEAST make use of C++ templates pretty heavily. This allowes us to greatly simplify some code portions (for instance the plugin implementations), but it's also a stress-test for the compilers out there. So people encountering problems compiling C++ code in BEAST should try to upgrade their compilers as a first meassure.
The signal output of a song's tracks in BEAST are added up before they are routed to the sound output driver. If this added-up signal exceeds the maximum amplitude supported by the output driver (usually the machine's sound card), the output values are clipped to the supported range, causing the audio signal to encounter distortion of varying amounts, depending on the signal utilization of the channels. In the current version (0.6.2), the distortion can be circumvented by adding a post-processing network to songs which attenuates the incoming signals (left and right). The Quick Start Guide has a section detailing the setup of postprocessing networks. For future versions, a mixer is already in development, which will allow to handle this situation in much more flexible and adequate ways.
Beast is mainly developed under Linux and has been ported to some BSD versions. The Download page of the Beast website links to the available packages and source code repositories for the various supported Linux and BSD variants. Some effort also went into a Windows port, more details about the state of which can be found on the Beast Windows Port wiki page. Other operating systems are currently not supported, but the project is always taking patches and looks for new volounteers. So to start a new port, simply write your patch and contact the mailing list and developers.
If correctly installed, BEAST should play the demo song from the Demo-menu out of the box, unless it cannot acquire a suitable PCM device. To debug PCM problem causes, the following can be used:
$ beast --bse-debug=pcm
This can produce message like the following:
beast-0.7.1[999]:BSE-ALSA:1: ALSA: opening PCM "hw:0,0" readable=1 writable=1: Device or resource busy
This is an indication that you have other audio programs (players or sound servers) which currently access your PCM device and block it for BEAST. Stopping or closing the other applications should free the audio device for use by BEAST.
beast-0.7.1[26493]:BSE-ALSA:1: ALSA: opening PCM "hw:0,0" readable=0 writable=1: Failed to configure device frequency
This one is a bit more tricky. Some ALSA drivers only allow very specific playback rates to be used by audio applications. BEAST uses the playback rate specified in the user preferences which comes with plausible defaults upon installation. If you see this message, try to adjust the "Synth Mixing Frequency" on the "BSE" page of the Edit/Preferences dialog.