Shortcuts
Latest additions
Latest updates
All modules updated to FSF version 0.7.
Contents
Introduction
Utilities
Playing with images
Playing with sound
Interaction devices
Networking
Index
This document is a repository of pointers to available modules. Each module has a short description. For complete module description, reference guides and code, simply follow the links. A typical module is composed of three files: a header and a cpp file for the code, and an html file for the documentation (description and/or user guide, and reference guide). This format has been adopted to provide maximum flexibility in the use of these open source modules. Some can be directly included and used in a project without having to know anything about the internal implementation details (so-called "black box" modules), others require some programming to apply in a specific context ("white-box" modules). Some customizing is always possible, just (please) respect the terms of the license agreement. Module source files are available for download from MFSM Source Forge page: sourceforge.net/projects/mfsm (package name: mfsm (legacy); file name: modules_7.0-1.0).
Version numbering for the modules follows the syntax: <FSF code version>-<module code version>. For example, version 0.7-1.0 means that the code is version 1.0 of this module for FSF version 0.7.
- Scripting [0.7-1.0]
- Provides a set of shortcut functions to instantiate sources and cells, instantiate nodes and place them in source pulses, connect cells to other cells and to sources. The name "scripting" comes from the fact that the functions provided by this module are coding equivalents of user actions in an interactive system. In particular, the scripting module uses aspects of the FSF implementation that are related to dynamic system evolution, such as class factories.
Documentation: ScriptingModule.html
Source files: ScriptingModule.[h|cpp]
- Flow Monitor [0.7-1.0]
- Provides a cell to compute throughput and latency statistics on an active stream.
Documentation: FlowMonitorModule.html
Source files: FlowMonitorModule.[h|cpp]
- Image [0.7-1.0]
- Defines the basic node specialization to represent images.
Documentation: ImageModule.html
Source files: ImageModule.[h|cpp]
- DshFileInput (DirectShow) [0.7-1.1]
- Defines the necessary nodes and cells to read images from a video file, using DirectShow. Requires Image module.
Documentation: DshFileInputModule.html
Source files: DshFileInputModule.[h|cpp]
- DshLiveInput (DirectShow) [0.7-1.2]
- Defines the necessary nodes and cells to connect to, and read images from a video camera, using DirectShow. Tested with USB and FireWire cameras. Requires Image module.
Documentation: DshLiveInputModule.html
Source files: DshLiveInputModule.[h|cpp]
- Display (GDI/Video for Windows) [0.7-1.2]
- Defines the necessary cell to display images on the screen using the basic Windows GDI and Video for Windows. Requires Image module.
Documentation: DisplayModule.html
Source files: DisplayModule.[h|cpp]
- AviFileOutput (GDI/Video for Windows) [0.7-1.0]
- Defines the necessary nodes and cells to write images to a video file (AVI format), using the basic Windows GDI and Video for Windows. Requires Image module.
Documentation: [AviFileOutputModule.html]
Source files: AviFileOutputModule.[h|cpp]
- ConnectedComponents [0.7-1.0]
- Implements the classical two-pass non recursive connected components algorithm. Requires Image module.
Documentation: [ConnectedComponentsModule.html]
Source files: ConnectedComponentsModule.[h|cpp]
- RGB Segmentation [0.7-1.0]
- Implements an RGB version of the now classical adaptive Gaussian color background model-based segmentation technique. Requires Image module, and is typically used in conjunction with the Connected Components module.
Documentation: RGBSegmentationModule.html
Source files: RGBSegmentationModule.[h|cpp]
- Rendering (OpenGL) [0.7-1.0]
- Defines all the elements necessary to perform 3-D rendering using OpenGL. The actual rendering is left blank, to be customized for specific needs ("white-box" module). Requires Image module.
Documentation: RenderingModule.html
Source files: RenderingModule.[h|cpp]
- WaveInput (Win32 waveform API) [0.7-1.0]
- Waveform audio input
Documentation: WaveInputModule.html
Source files: WaveInputModule.[h|cpp]
- WaveOutput (Win32 waveform API) [0.7-2.0]
- Waveform audio output
Documentation: WaveOutputModule.html
Source files: WaveOutputModule.[h|cpp]
- Midi [0.7-1.0]
- Provides a number of specialized nodes to encode MIDI events.
Documentation: MidiModule.html
Source files: MidiModule.[h|cpp]
- Midi Device I/O [0.7-1.0]
- Provides a number of cells and interface nodes to connect to, read from, and write to, input and output MIDI devices. Requires Midi module.
Documentation: MidiDeviceModule.html
Source files: MidiDeviceModule.[h|cpp]
Interaction devices
- Keyboard [0.7-0.5]
- Provides interface node and cells to interface with the keyboard, using the Windows SDK.
Documentation: KeyboardModule.html
Source files: KeyboardModule.[h|cpp]
- Gamepad (Windows SDK) [0.7-0.5]
- Provides interface node and cells to interface with game devices, using the Windows SDK. Tested with various USB gamepads and other USB control devices.
Documentation: GamepadModule.html
Source files: GamepadModule.[h|cpp]