Advanced Gtk+ Sequencer
`gsequencer` is a computer program and a introspected framework for Linux, FreeBSD, macOS and Windows. It comes with a Gtk4 user interface providing a piano roll, wave form, automation and tempo editor. You can add different machines to it, first you usually add the Panel acting as output sink, followed by one or more mixers, effect plugins and instruments. The machines context menu allows you link lines together or add plugins to it. The number of audio channels and pads are adjustable. Either use Drum or Matrix step sequencer or edit notes using the editor to play PCM files, builtin synths, Soundfont2 and SFZ synths. These instruments can capture MIDI and you may save your playback using the XML project file. The audio recorder allows you to capture music from your microphone or open any other PCM file from disk. Then you can edit wave form within main window. The automation and tempo editor allow you to program values of controls at arbitrary time. To ramp to certain value there are dialog windows allowing you to do so. There 2 fashions of the OSC content format server, non-routable SLIP encoded UDP/TCP packets or routable AGS-OSC-OVER-XMLRPC with basic authentication. Thought, the server implementation allows you to configure IPv4 and IPv6 addresses to listend at specified port. The framework provides you a library to use VST3 plugins from your ANSI C application, many utility functions like copy between different audio formats, adjusting volume, interpolation or to handle audio container files. Supports to interface with ALSA, Pulseaudio, JACK, CoreAudio or WASAPI soundcard backends.
GSequencer is different in terms of multi-channel editing, you can adjust single controls assigned to an audio channel or line, multiple controls by grouping them and sticky controls from machines context menu. Multi-threaded synchronization strategy gives the application much processing power on modern hardware like SMP (Symmetric Multi Processing) machines.