Skip to content
SirGFM edited this page Jun 16, 2016 · 4 revisions

Welcome to the c_synth v2 wiki!

NOTE: c_synth v2 is still a work in progress. It can't be found on the master branch (which has no documentation). For now, this wiki is intended at describing what the lib's newer version should be like.

c_synth is a "synthesizer written in c" (hence the name). It's a kind of music tracker suite, with tools for parsing songs from a file, synthesize it (i.e., compile it) into a PCM stream and even "render" it into an audio file.

Synthesized songs are meant to sound chiptune-ish and to take up few space on the hard drive. Although they might be fully compiled to RAM before playing, a parsed song may be incrementally compiled, also requiring few RAM.

The suite uses its own language based on Macro Music Language. Because of the chiptune-ish nature of the songs, each is composed of separated tracks, which loosely represents a channel in a sound chip. Each track has its own "instrument", which may be loaded from pre-defined ones and later modified at compile time.

The suite is also integral part of GFraMe, as such it has tools to measure how much memory it will need to parse and compile a few songs. It is also able to be loaded into a pre-alloced buffer.

Clone this wiki locally