FLI Logo
Welcome to FASTLab

FASTLab is a software development, system integration, and engineering consulting firm based in Santa Barbara California. Our main competencies are in the areas of:

Application Portfolio

CREATE Real-Time Applications Manager

The CREATE Real-time Applications Manager--CRAM--is a framework for developing, deploying, and managing distributed realtime software. It has evolved through three implementations over the space of five years. The background of CRAM is the work done since the early 1990s on distributed processing environments (DPEs), which started in the telecommunications industry. A DPE generally consist of at least three components: a node manager, a service interface, and a system manager. The node manager is a simple daemon (a stand-alone program) that is assumed to be running on each computer that the DPE intends to manage. Node managers accept commands from the network application manager to start/stop/monitor remote services. A DPE service interface is a simple set of functions that applications need to implement in order to be managed by a DPE. The third component is the system manager; it uses node managers to start the components of a distributed application. DPE systems often use databases to describe network hardware facilities and applications.
CRAM

CREATE Signal Library

The CREATE Signal Library (CSL) is a portable general-purpose software framework for sound synthesis and digital audio signal processing. It is implemented as a C++ class library to be used as a stand-alone synthesis server, or embedded as a library into other programs. CSL is a simple yet powerful library of sound synthesis and signal processing functions. It is packaged as an object-oriented class hierarchy for standard DSP and computer music techniques, and is suitable for integration into existing applications, or use as a stand-alone synthesis/processing server. CSL is similar to the JSyn, CommonLispMusic, STK, and Cmix frameworks in that it is integrated as a library into a general-purpose programming language, rather than being a separate “sound compiler” as in the Music-N family of languages.

Expert Mastering Assistant (EMA)

Several of our products involve the FASTLab Music Analysis Kernel (FMAK), a comprehensive library for music information retrieval (MIR). As an example of its scope, FMAK was used as the core of the Expert Mastering Assistant (EMA) program we developed under contract from Panasonic. The goal of EMA is to assist in the remastering of stereo CD-based music to higher-resolution surround-sound formats. The EMA system analyzes a musical selection and classifies it using more than 100 parameters within a detailed genre database. In the next stage, a rule-based expert system compares the recording and production of the current selection to that of its genre, and proposes high-level mapping parameters (dark/bright, loose/tight, narrow/wide, small/large, and focused/diffuse) for the remastering. Finally, mastering signal processing (e.g., gain control, equalization, reverb, and dynamic-range processing) can be done in real-time with high-level and low-level interactive control. A screen shot of the EMA application's main display is shown below.

EMA Screen Shot

Other applications of this kind of analysis-classification-processing-display software include music finger-printing, summarization/thumb-nailing, content-based search engines, smart players, speaker identification, and post-production for streaming or broadcast. The white papers available below describe FMAK and the other FASTLab, Inc. technologies.

Siren Music/Sound Framework in Smalltalk

The Siren system is an open-source general-purpose software framework for sound and music composition and production; it is a collection of about 375 classes written in the Smalltalk programming language and intended for use with for the VisualWorks Smalltalk system. Siren includes cross-platform support for MIDI and audio I/O. There are several elements to Siren:

SoLaTi Music Recommender System

SoLaTi is a content-based music recommender system based on the FMAK framework. Given a database of musical songs (such as a large iTunes collection), SoLaTi analyzes the songs and "listens" to them, recording a set of over 100 features in a database for later use. the recommender system then takes one or more target songs and creates a playlist of similar songs.


JUCE-based Audio Signal Processing Tools

We have developed a suite of audio signal processing tools in C++ using the JUCE framework. These include simple signal generators as well as more sophisticated analysis/resynthesis packages that use the Fourier transform, linear predictive coding, and other techniques.





Music-to-Frets Music Transcription System

Unsupervised music transcription has long been one of the "holy grail" tasks in audio signal analysis. The FASTLab Music-to-Frets application takes a mixed MP3 file and applies a variety of signal analysis techniques and data mining expert systems to create a MIDI output file with several versions of a simplified score of the given song, appropriate for use in a "guitar hero" style video game. The screen shot below shows the debugging GUI in which the top pane displays the audio signal (in light blue) along with the outputs of a family of onset detectors (small colored vertical lines), beat detectors (longer vertical lines), and note-steady-state detectors (horizontal bars along the top of the pane). The four panes in the middle of the screen are the resulting scores for the four levels of user (expert at the top to novice at the bottom).

M2F

BeastBox Voice-to-Drum Replacement Framework

Drum-replacement software scans a recorded drum recording and identifies the individual notes (drum or cymbal hits) in order to derive a "score" that can be used by a sampler to resynthesize the drum part using (better-recorded) drum sample libraries. In the FASTLab BeastBox framework, we have built a voice-input drum replacement tool that analyzes "beat box" style voice input and classifies the results accordinfg to the uesr's choise of a library of drum (or melody) instrument samples. The view below shows the BeastBox test tool, in which the top pane shows the input sound and the detected note onsets. The missle view shows the resynthesized drum sounds, and the parameters of the input sound (e.g., pitch, spectral centroid, spectral band, etc.) the bottom pane is the spectrum of the input sound, and the input widgets at the bottom of the view control the parameteric and rule-based expert system that serves as the note classifier. The before and after sound examples below the screen shot illustrate the process on an early test example.

M2F

Before: beat box voice input
  • BeastBox input sound

  • After: resynthesized drum track
  • BeastBox output sound

  • Binaural Sound Playback using Head-Related Transfer Functions

    There are several popular techniques for creating 3D-spatialized surround sound. The most efefctive method for use with headphone output involves computing the exact echoes that would be produced by a sound source at the desired location: the so-called Head-Related Transfer Function or HRTF. Computing these functions in real time used to require expensive custom hardware, but can now be done on a lap-top or even a mobile device. The FMAK HRTF player is a development tool for HRTF-based media players or games that allows the user to select from a collection of measured HRTFs for different heads, and to test the accuracy of the 3D spatial sound using sound sample playback that can be positioned anywhere (or set on a trajectory of motion) in the simulated 3D space.

    M2F


    Please feel free to contact us with questions on any of these systems.


    Downloads (PDF files)


    Contacting FASTLab, Inc.

    FASTLab, Inc.
    220 Santa Anita Rd.
    Santa Barbara, CA, 93105 USA
    Tel: (805) 895-6252
    Email:   info - at - fastlabinc.com


    Related Sites