All Projects → maxl0rd → Standingwave3

maxl0rd / Standingwave3

Flash ActionScript3 dynamic audio library

Programming Languages

actionscript
884 projects

Standing Wave 3 README June 7, 2010

ABOUT THIS PROJECT

Standing Wave 3 is an AS3 code library designed for high level control of the Flash Player's SampleDataEvent API for streaming audio output. It is based on a subset of the audio engine used by the Noteflight Score Editor (see http://www.noteflight.com).

  • SW1 was never released.
  • SW2 was a pure AS3 project open sourced by Joe Berkovitz
  • SW3 is SW2 extensively refactored by Max Lord

Standing Wave 3 is very much like SW2, except that all of its core sample storage and manipulation routines have been rewritten with Adobe Alchemy to make them oodles more efficient.

The goal of StandingWave is to encapsulate the following kinds of objects, permitting them to be easily chained together and combined to produce complex, dynamic audio output:

  • audio sources (MP3 or WAV files, algorithmic sound generators...)
  • audio filters (echo, envelope shaping, equalization...)
  • timed sequences of audio sources, which may be hierarchically composed

There are no fundamental musical concepts embodied in StandingWave, but it may be straightforwardly extended with such, for instance by reading MIDI files or by writing utility classes to manage tones, scales, instruments, and so forth.

FLASH and FLEX VERSION REQUIREMENTS

StandingWave requires Flash Player 10. It cannot be built or used with Flash Player 9 or earlier.

The library code is intended to be compiled with the Flex MXMLC compiler, not with the Flash IDE. However there are no Flex APIs actually used in StandingWave.

To use SW3, add the source to your Flex project, and add awave.swc to your library path.

A working Adobe Alchemy install is necessary to recompile the C libraries, but most users will not find this necessary. All alchemy routines are encapsulated within the ActionScript object "Sample".

CONTRIBUTIONS WELCOME

Please contact Joe Berkovitz at [email protected] or Max Lord [email protected] if you are interested in contributing to this project.

LICENSE

All materials in this project Copyright (c) 2010 Noteflight LLC.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].