Ir al contenido principal

Text base music editor

 Text-to-MIDI Compiler: Streamlining Retro Music Composition

In the spirit of keeping our development pipeline lightweight, fast, and independent from heavy, bloated software, we’ve been working on a new internal utility at CG Cellula Studio: a Text-based MIDI Compiler and Sequencer.

Traditional DAWs and large music composition suites often introduce unnecessary overhead when dealing with straightforward chiptune or retro-style soundtracks. To solve this, we designed a minimalist text-driven syntax that translates plain source files directly into standard MIDI byte structures.

Key Features

  • Lightweight Text Syntax: Write sequences, notes, durations, and commands using a clean, human-readable scripting format.

  • Flexible Notation Systems: Fully supports both American notation (A-G) and Standard scientific pitch notation, allowing for fluid composition based on your workflow preference.

  • Dual Output & Synthesis Compatibility:

    • Native MIDI: Generates standard .mid files with full compatibility for external software synthesizers, hardware sequencers, and game engine integration.

    • SF2 Support: Built-in support for SoundFont (SF2) files, allowing for custom sample-based instrument mapping and high-fidelity retro sound reproduction within the compiler.

  • Direct Binary Translation: Compiles plain text directly into binary, ensuring immediate compatibility with standard playback environments.

  • Precise Temporal Parsing: Implements a robust event-handling architecture to manage ticks, tempos, and precise timing alignment across multi-track sequences.

  • Multi-Channel & Polyphony Support: Handles independent instrument channels, velocity parameters, and overlapping note durations seamlessly within a single script.

By bridging code-level control with classic musical structures, this tool gives us absolute precision over our soundtrack creation process while staying true to our philosophy of independent, high-performance software engineering.