Skip to content

Technical Reference

Giuseppe GitHub edited this page Aug 4, 2026 · 1 revision

Technical Reference

Main modules

  • main.cpp — application frame, menus, workspaces, project I/O, commands, and integration.
  • song_model.* — singing events, song data, pitch conversion, XML parsing/serialization, and Festival Scheme generation.
  • festival_bridge.* — COM loading, Festival discovery, command queue, playback, stop, and export.
  • piano_roll.* — Festival song piano-roll drawing and interaction.
  • tone_preview.* — local synthesized editing tone.
  • sample_pool.* — WAV metadata and source management.
  • waveform_editor.* — waveform loading, rendering, navigation, and selection.
  • slice_model.* — persistent slice definitions.
  • auto_slicer.* — uniform and transient boundary generation.
  • sample_engine.* — realtime slice playback and voice management.
  • event_timing.* — attack, loop, residual, tail, and duration calculations.
  • slicer_piano_roll.* — sample arrangement UI, editing history, clipboard, and transport.
  • offline_renderer.* — offline Slicer mix and WAV writing.

Audio paths

Festival synthesis uses FestivalTTSCOM.dll. Local note feedback uses a generated tone. Slice audition and Slicer transport use the sample engine. Offline Slicer rendering has its own deterministic mixer.

Project formats

Singing songs use XML. Complete project folders use a line-oriented project.fvsp manifest plus singer.xml and copied WAV files.

Clone this wiki locally