Fragment

Web-based audio-visual live coding environment

Join a session below and start to experiment!

Create/Join Session

About

Fragment is a real-time collaborative cross-platform audiovisual live coding environment with pixels based image-synth approach to sound synthesis, the sound synthesis is powered by pixels data produced on the graphics card by code.

Fragment can be thought of as an oscillator-bank and filter-bank synthesizer driven by bitmap data.

It has many features making it a bliss to produce any kind of sounds and visuals and is aimed at artists seeking a creative environment with few limitations to experiment with, a programmable noise-of-all-kinds software / sound design tool.

Videos of most features are available on the official YouTube channel

If you have any questions or require help, a documentation and a discussion board is available.
Features

  • Real-time, reactive audiovisual live coding environment with GLSL and Processing.js support
  • Oscillator-bank and filter-bank spectral synthesizer driven by graphics data
    • Stereophonic
    • Polyphonic
    • Multitimbral
    • 32-bit float images data; provide high dynamic range
  • Wide range of instrument types, all driven by pixels data
    • additive, subtractive, spectral, granular, phase modulation, physical modelling, wavetable, bandpass, modal, formant, string synthesis...
    • new instruments can be created live through the Faust language
  • Multi-output, ASIO / JACK support, virtual channels with over 30 stereo effects
  • Fully featured list of input data (note : most imported audio is converted as a sonogram using gabor wavelet transform)
    • camera and microphone capture
    • images files
    • audio files
    • videos with basic playback features
    • desktop capture allow to use any kind of programs to drive the synthesizer
    • canvas with brush based drawing
    • Processing.js sketchs
    • graphics data produced live can be imported back
  • MIDI in/out support
    • MIDI IN with Multidimensional Polyphonic Expression (MPE) support
    • MIDI OUT with JavaScript scripting
  • OSC in/out
  • Graphics data recording with WAV export (additive synthesis)
  • Anonymous online sessions, no authentifications required, can also work offline or locally
  • Distributed sound synthesis, multi-machines/multi-core support (Fragment Audio Server with fas_relay)
  • Free, cross-platform, open-source software (Simplified BSD License)
Downloads

Fragment require an audio server in order to output any sounds, the audio server must be launched and run alongside any sessions. It is available for Windows as a .zip package and Linux as an installation free AppImage packaged into a .zip.

Platform Description Download
Linux 64 Bits without JACK (44MB; .zip / AppImage)
Linux 64 Bits JACK only (43.9MB; .zip / AppImage)
Windows 64 Bits (39.9MB; .zip)
SHA3-256 Checksum

 Instructions to run the AppImage (note : must be run into a terminal)
  • sudo chmod +x fas.AppImage in a terminal (or allow the file to be executable through file properties)
  • launch with ./fas.AppImage command in a terminal
Fragment source-code
  • Web. Application & tools : GitHub
  • The Audio Server : GitHub
Requirements

  • Web. browser such as Chromium (recommended), Brave, Opera, Safari or Firefox
    • Web. browser should support WebGL 2
    • MIDI compatibility is restricted to a few browsers (Chromium, Brave...)
  • Mid-range GPU, Fragment develoment use a GeForce GTX 970
  • Mid-range multi-core CPU, a beefy CPU may be needed for some instrument type such as granular synthesis
  • MIDI device such as a MIDI keyboard/controller is recommended
Note : Performance and latency may vary with the overall computer load, Fragment is quite latency sensitive.

Tools download

 Fragment File Server (only required to upload samples from the client)
 Fragment FAS relay (only required to use multiple audio server for multi-machines/multi-core distributed sound synthesis)

Real-time programmable audio-visual environment

Share on