Audio setup

From Things and Stuff Wiki
Jump to navigation Jump to search


What?

Specific notes on my Linux audio workflow. See also Audio setup old, Soundbox.

  • All controller and keyboard, minimal/no mouse interaction
  • Headphone click track and visual metronome for beat/bar/section/song/etc
  • Preprogrammed MIDI note patterns
  • Live recording and looping of MIDI note patterns
  • Live recording and looping of MIDI CC patterns
  • Generation of MIDI note and control patterns
  • MIDI patterns compartmentalised into channels for finer control
  • Dynamic routing of MIDI note and control messages
  • MIDI automation/arpeggio
  • MIDI velocity scaling
  • MIDI gating
  • MIDI delay/loop
  • MIDI swing/groove/humanisation
  • MIDI key transpose
  • MIDI scale alteration/filtering
  • MIDI chord generation
  • Modular drum, bass, pad and lead synthesis
  • Sound bank/sample synthesis
  • Audio FX - filters, reverb, delay, gating, distortion, etc.
  • Synchronised audio loop capture and loop FX
  • Have a system that is expressive enough for both live and studio use
  • Have a system that is quick to navigate and configure a workflow in
  • Have a system with robust session management
  • All JACK apps and LV2 plugins
  • Automatable setup of entire session (package all plugins, etc.)

How?

Basics

Control hardware

  • Keyboard: Yamaha DJX
  • 8ch mixer controller: Korg Nanokontrol 2
  • DJ controller: Numark DJ2GO
  • MIDI to USB adapter for DJX
  • Extra: QWERTY keyboard to MIDI via midikb

Audio setup

  • Audio systems
    • ALSA
    • JACK2 - D-Bus enabled, multiprocessor
    • PulseAudio - only for convenience at non-critical times, with apps routed to JACK sinks
  • JACK start+management
    • Cadence - good JACK configuration utility, automatic ALSA/PulseAudio/MIDI bridging

Session management / plugin host

  • Carla - plugin host and graph patcher
    • LV2, LASDSPA, DSSI, Linux/Win VST
    • plugin tempo sync
    • internal/external Patchbay
    • MIDI automation CC per parameter (but no MIDI learn yet)

Click track / visual metronome

  • Audio metronome
klick -tjPv 0.1
  # use transport, accompany transport, JACK audio autoconnect, volume at 0.1
  • Visual metronome
    • JVMetro
    • to do; check others

MIDI setup

MIDI playback

In general;

  • VLC with FluidSynthplugin

General MIDI soundfonts;

  • soundfont-fatboy /usr/share/soundfonts/FatBoy.sf2
  • freepats-general-midi /usr/share/soundfonts/freepats-general-midi.sf2
  • soundfont-arachno /usr/share/soundfonts/Arachno.sf2
  • soundfont-realfont /usr/share/soundfonts/RealFont.sf2
  • soundfont-sgm /usr/share/soundfonts/SGM-V2.01.sf2
  • soundfont-unison /usr/share/soundfonts/Unison.sf2
  • soundfont-generaluser /usr/share/soundfonts/GeneralUser.sf2
  • soundfont-titanic /usr/share/soundfonts/titanic.sf2
  • soundfont-personalcopy /usr/share/soundfonts/PC51f.sf2


MIDI monitoring / tools

MIDI utils:

  • Sherlock.lv2 - MIDI monitor, nice UI
  • VMPK - virtual keyboard with CC send (no JACK MIDI unless version 0.5.1 is used)


MIDI routing

  • MIDI controlled MIDI routing/switching using mididings scenes (or Moony.lv2 / Pure Data)
  • momentary and latched control flow
  • recording and looping of control flow

mididings scenes:

  1. nano control of seq64 horizontal column level selection
  2. channel strip' control of parts using 16 subscenes


MIDI channels to song part mapping:

  1. kick
  2. kick2
  3. snare
  4. hihat
  5. cymbals
  6. perc1
  7. perc2
  8. perc3
  9. bass1
  10. bass2
  11. pad1
  12. pad2
  13. lead1
  14. lead2
  15. lead3
  16. seq64 control


control pattern insert/send patches:

  • notes - delay, sustenuto, arpeggiation, swing/groove, transpose, alteration/filtering, chording generation/splitting
  • control messages - patterns & LFOs - volume level override / scaling / gate, modulation, pitchbend, detune, etc.


Notable status bytes:

  • Note Off, Note On, Polyphonic Key Pressure (Aftertouch), Control Change (CC), Program Change (PC), Channel Pressure (After-touch), Pitch Bend, Channel Mode


routing patch destinations:

  • for percussion - ALVDrums, DrMr, Stegosaurus, DrumSynth, soundfonts, etc.
  • for synths - ZynAddSubFX, etc.


problems with control pattern routing:

  • when a pattern is disabled, no reset mechanism and the last sent value will "latch" (could be 'off')
  • seq64 allows for a "17th" beat (in a 16 long pattern) for off comments
  • a half-normalised patching system would therefore be advantageous
  • break this out to an advanced argeggiator?


MIDI CCs

Notable CCs (by the GM spec.):

  • 0 - Bank Select (MSB)
  • 1 - Modulation Wheel (MSB)
  • 2 - Breath Controller (MSB) (Carla Dry/Wet)
  • 3 - Undefined
  • 4 - Foot pedal (MSB)
  • 5 - Portamento Time (MSB)
  • 7 - Volume (MSB) (Carla)
  • 8 - Balance (MSB) (Carla)
  • 9 - Undefined
  • 10 - Pan position
  • 11 - Expression (sometime Filter or Aftertouch)
  • 14-15 - Undefined
  • 20-31 - Undefined
  • 32 - Bank Select (LSB)
  • 33 - Modulation Wheel (LSB)
  • 34 - Breath Controller (LSB)
  • 36 - Foot Pedal (LSB)
  • 37 - Portamento Time (LSB)
  • 38 - Data Entry (LSB)
  • 39 - Volume (LSB)
  • 40 - Balance (LSB)
  • 42 - Pan (LSB)
  • 43 - Expression (LSB)
  • 64 - Hold Pedal (on/off) Nearly every synth will react to 64 (sustain pedal)
  • 65 - Portamento (on/off)
  • 66 - Sustenuto Pedal (on/off)
  • 67 - Soft Pedal (on/off)
  • 68 - Legato Pedal (on/off)
  • 69 - Hold 2 Pedal (on/off)
  • 71 - Resonance (aka Timbre)
  • 72 - Sound Release Time
  • 73 - Sound Attack Time
  • 74 - Frequency cutoff (aka Brightness)
  • 80 - Decay
  • 81 - Hi Pass Filter Frequency
  • 84-90 - Undefined
  • 91 - Reverb
  • 92 - Tremolo Level
  • 93 - Chorus
  • 94 - Celeste Level or Detune
  • 95 - Phaser Level
  • 102-119 - Undefined
  • 120 - All Sound Off
  • 121 - All Controllers Off
  • 122 - Local Keyboard (on/off) You might actually crash your keyboard if you use this one.
  • 123 - All Notes Off (Heh, your song will go haywire if you use this assigned to a knob.)
  • 124 - Omni Mode Off
  • 125 - Omni Mode On
  • 126 - Mono Operation
  • 127 - Poly Operation

ZynAddSubFX:

  • Pitch bend
  • 1 - Modullation wheel
  • 7 - Volume
  • 10 - Pan
  • 11 - Expression
  • 64 - Sustain
  • 65 - Portamento On/Off
  • 71 - Filter Q
  • 74 - Filter cutoff
  • 120 - All sound off
  • 121 - Reset all controlers
  • 123 - All notes off

ZynAddSubFx not defined in GM:

  • 75 - Bandwidth (Sound control 6) - default parameter is 64.
  • 76 - Modulation amplitude (Sound control 7) - ADsynth, default parameter is 127.
  • 77 - Resonance Center Frequency (Sound control 8)
  • 78 - Resonance Bandwidth (Sound control 9)

See also NRPN controls for Reverb, Echo, Chorus, Phaser, AlienWah, Distortion and EQ.


MIDI pattern playback / looping

Software options:

  • sequencer64 - aka seq64, active seq24 fork
  • harmonySEQ - no recording. sequences and LFOs with multiple patterns, MIDI learn for: sequence toggle/one-shot, note/chord/octave change, pattern change, tempo and sequence sync. dead.


  • sequencer64
    • follows a mostly vertical direction
    • how is set play meant to work?

to redo:

  • seq64 - MIDI hardware mapping to seq64 MIDI control - see Sequencer#seq64, MIDI#Specifications
    • start -
    • stop - nano stop - cc42
    • pause (stop/start toggle) - nano play - cc41
    • screen-set up - nano marker > - cc 62
    • screen-set down - nano marker < - cc 61
    • screen-set play - nano marker set - cc 60
    • bpm page down - dj2go left jog - cc#25 - value 127
    • bpm page up - dj2go left jog - cc#25 - value 1
    • mod thru toggle/on/off -
    • mod record -
    • mod queue - b4
    • mod solo toggle/on/off
    • mod replace - c5
    • mod snapshot - c#5
    • mod group learn - d5
    • mod group mute select - d#5
    • pattern toggle - 0-31 in sequencer64 - c2 (32)-g4


[midi-control-out]:

0 [0 0 0 0 0] [0 0 0 0 0] [0 0 0 0 0] [0 0 0 0 0]
    arm         mute        queue       delete
[1 0 144 36 127]
    note on event with pitch 'C' and 127 velocity).
seq64 pattern GUI layout?:
Kick1 Kick2 Snare Hi-hat Cymbal Perc1 Perc2 Perc3
Kick1 Kick2 Snare Hi-hat Cymbal Perc1 Perc2 Perc3
Kick1 Kick2 Snare Hi-hat Cymbal Perc1 Perc2 Perc3
Kick1 Kick2 Snare Hi-hat Cymbal Perc1 Perc2 Perc3

MIDI routing / processing

See also Audio#MIDI routing, Audio#MIDI processing GUI

General processing:

  • mididings - filtering, scripting, switching via 'scenes' and MIDI program change messages. mididings.py


nsm-proxy mididings -f path/to/m_control.py
  # 

nsm-proxy livedings -l 56801 -p 56800 -T -f "Sans 22 bold" -F "Sans 22 bold" -w 50 -n "control"

nsm-proxy mididings -f path/to/m_drums.py
  # drum selection. to redo.

nsm-proxy livedings -T -f "Sans 22 bold" -F "Sans 22 bold"


Notes:

  • midifilter.lv2: MIDI Duplicate Blocker - for live vs. seq64 notes


  • pizmidi: midiAlias - Note values are reflected between a "Nyquist Note" and a "Zero Note," similar to the effect of audio sample aliasing.


Channel:

  • pizmidi: midiChannelize - Transforms everything to the selected channel. When set to "No Change" the plugin will have no effect.


Program Change (PC):

  • pizmidi: midiMultiProgramChange - Uses input program change to trigger selected program changes on all channels.


CC processing

CC processing:

  • pizmidi: midiNotchFilter - Isolate, remove, or channelize up to 4 specific midi messages.
  • midifilter.lv2: ScaleCC - scale CC range sent to delay down for easier time sync length selection


CC routing:

  • pizmidi: midi16CCRouter - Changes up to 16 CCs to 16 other CCs. Optionally responds to Program Change.


CC conversion:

  • pizmidi: midiConverter3 - Change and convert between CC, Channel Pressure, Poly Aftertouch, Program Change, Pitch Bend, NRPN/RPN, Note On/Off, and other messages in various ways. Pitch Bend and (N)RPN conversions will use the full 14-bit values when possible.


  • pizmidi: AudioToCC - Converts audio amplitude (RMS) to CC messages.


CC state:

  • pizmidi: midiCCReset - Remembers CC values and sends them out again at selected times.


Generation of MIDI


See also Generative


  • MIDI generator, related to fractions of bpm
    • either momentary or toggled.
    • passing beats between parts


  • harmonyseq can be used to map MIDI events to one shot or repeating notes/chords/patterns, hard to send the tempo float over osc to....

MIDI automation/arpeggiation

Carla:

  • CC 2 Breath Controller = Dry Wet
  • CC 7 Volume = Volume
  • CC 8 Balance = Left/Right


  • QMidiArp - standalone and LV2
    • MIDI arpeggiator
    • programmable step sequencer
    • LFO
    • transport sync
    • preset grid
  • Hypercyclic - standalone and VST
    • host tempo sync in VST, no Jack Transport sync in standalone.


  • pizmidi: midiCCModulator - Use one CC to modulate another CC (or note velocity) in various ways.


MIDI velocity


MIDI gating

  • pizmidi: midiCCToggle - For changing momentary CC buttons into toggles.


MIDI delay/loop


  • pizmidi: midiNoteRepeater - Repeats every Nth note a set number of times, or blocks it.


MIDI sostenuto

  • pizmidi: midiFingered - Selectively sends standard portamento on/off CC messages to emulate "fingered portamento" for synths that don't have it. For this to work, the target instrument must have a portamento on/off switch that responds to CC 65.


MIDI swing/groove

  • pizmidi: midiSwing - Delays and/or offsets velocity of and applies probability to notes (and optionally also CCs) at every other step of a selected note value.


MIDI key transpose


MIDI scale alteration/filtering


MIDI chord generation

  • midifilter.lv2: MIDI Chord - Harmonizer - midifilter.lv2
  • tonespace - standalone, VST
  • Piz midiChordHold - ??
  • pizmidi: midiNoteGroups - Assign play and/or choke groups to MIDI notes.



MIDI chord note split

  • midifilter.lv2: MIDI Strum - A midi arpeggio effect intended to simulate strumming a stringed instrument (e.g. guitar). A chord is 'collected' and the single notes of the chord are played back spread out over time. The 'Note Collect Timeout' allows for the effect to be played live with midi-keyboard, it compensates for a human not pressing keys at the same point in time. If the effect is used with a sequencer that can send chords with all note-on at the exactly time, it should be set to zero.
  • pizmidi: midiStrum - Sequentially delays notes of an input chord to simulate strumming.


MIDI chord channel split

  • pizmidi: midiChordSplit - For splitting polyphonic material to multiple midi channels based on selected note ranges for each voice. This is different from a straight keyboard splitter because the ranges can overlap, and the plugin attempts to choose the most appropriate channel.


  • chordemux - a MIDI filter/router utility which receives chords on its input channel, routes chords' notes to different channels depending on chord type and inversion
  • pizmidi: midiPolyphony - For spreading polyphony across midi channels, i.e. if you play 4 notes, each one will go to a different channel. Polyphony per channel can be set from 1 to 64 notes for more flexibility. You can also use it to convert polyphonic input to monophonic output.


  • pizmidi: midiChs_noGUI - Channel filter/changer like energyXT1 "MIDI chs" component. [1]

Synthesis

Soundfont and sample bank

For velocity layers: Hydrogen, DrMr, DrumGizmo, Fabla2, AVLDrumkits

  • Samplers (file based)
    • samplv1 - one sample, various pitches. effects but no start/end points or sample editing
    • drumkv1 - many samples, one pitch. effects but no start/end points or sample editing
    • Petri-Foo - multichannel, ctrl-left click to set play start
  • Samplers (with live recording)
    • Fabla2 - velocity multilayer
  • Sample slicing
    • Shuriken - file based beat slicer, MIDI controllable, jack transport sync, soundfont generation
    • Freecycle - file based beat slicer, old n dead.
  • Soundfont hosts
    • Carla - sf2/sfz/gig host (using compiled in fluidsynth support)
    • Hydrogen - velocity multilayer, sequencer
    • DrMr - Hydrogen kit based sampler, 16 voices - LV2
    • DrumGizmo - drumgizmo format, velocity multilayer, velocity/timing humanisation
    • AVLDrumkits - self-contained kit soundfonts (Red Zeppelin stereo, Red Zeppelin multi-out, Black Pearl stereo, Black Pearl multi-out), velocity multilayer - LV2
    • Konfyt - additional soundfont and performance management, uses Carla+fluidsynth as backend

Drums

  • Mixed drum synth
    • Stegosaurus - LV2 - hard to use, kick: c4, snare: d4, closed hat: e4, open hat: f4
    • DrumSynth - LV2/VST - 32 voices polyphonic, 24 drum notes, 1 tone with sweep, 2 overtones, 2 overtones, envelope editor, midi automatable with learn function
    • Rudolf 556 - LV2 - old [2]
    • Smack - Ladspa - deps: Ingen, om, omins, and blop, cmt, and swh


  • Single drum synth - Win VST
    • TW-Opkicker - kick drum
    • TW-Percussion1 - 2.5 osc, various presets
    • KickMaker - kick drum, 4 osc+envelope plus output envelope - Windows VST. Linux build?
  • Mixed drum synth - Win VST
    • ErsDrums - drum machine, phat, track mono/stereo and stereo out options
    • KMT2 - 8 voices, individual outs, sensitive controls

Bass, pad and lead

  • Synths
    • ZynAddSubFX - good, no host tempo sync yet [3][4] - LV2
    • ObXd - nice. Oberheim OB-X
    • Dexed - Yamaha DX7
    • Tyrell N6
    • setBfree - A DSP Tonewheel Organ emulator
  • Synths w/ host tempo sync
    • TAL Noizemak3r - nice - LV2
    • triceratops - LV2
    • Infamous Cellular Automaton Synth - LV2
    • synthv1 - standalone, LV2
    • Tranzistow - standalone, VST2. donationware.
    • PHASEX - standalone


  • Synths w/ host tempo sync - Win VST
    • basic65 - chip tune
    • Crystal - pad
    • Diodow - atmospheric
    • dlM entropy
    • TheBlooo, TheScrooo

Audio routing and FX

  • alsa_in/alsa_out - for adding to JACK additional input and output devices beyond the primary sound device
  • matrixmixer.lv2 - matrix mixer, size set at compile-time
    • 32x32 version


  • Audio mixing
    • MixerStereoEight - 16 ins and outs, 8 stereo channel control
      • AVL Drums Multi out control
    • m_mixer_S4toS32 [5] - lv2, 4 stereo to 8 stereo sends each - for fx sends
    • AMS Stereo Mixer 8 channels (alsa modular) - lv2, 8 mono to l/r stereo
    • AMS Stereo Mixer 2 channels (alsa modular) - lv2, 2 mono to l/r stereo mixdown

Used: MixerStereoEight to AMS Stereo Mixer 2 channel



  • Mechanism with hotkeys for general mute (+volume?) groups
    • drums
    • synths
    • effects


  • Mechanism with hotkeys for effect send trigger/application
    • Seq64 patterns for effect automation
    • audio level fade change cc pattern


  • Visualisation
    • x42 Stereo/Frequency Scope


  • Ardour channels as hosts has bugs, see section below
  • gating, reverb, delay, distortion, filters, etc.


todo:

  • box off an fx plugin rack
    • delay - cc range filter/alter for fine synced delay time control - tal dub - better plugin for delay time sync (options as spectrum of length, not grouped)?
    • gate -
    • eq - dj hi/low pass? - dj2go three faders for low mid hi. eq over master out?
    • filter -
    • autopanner -
    • fuck shit up plugin - anarchy rhythms?


Gating

  • Gate
    • mda Dynamics - lv2, vst
    • GT10QM / GT10QS - lv2
  • Gates with host tempo sync
    • SuperCutSequencer - LV2 - Cut "On/Off" Sequencer (8 steps with smooth) synced to Midi-Clock Beats and Midi-Clock Start/Stop
    • dfx skidder - fun but tempo sync doesn't work properly - Win VST
    • dlM moot - Win VST
    • StormGate1 - Win VST
    • dlM gator - meh? - Win VST
    • gate3 - meh? - Win VST


Filter

  • Filters
    • TAL-Filter-2 (filter) - LV2
    • ams-lv2, avw.lv2, Fomp, BLOP
    • mda: Re-Psycho! - Drum loop pitch changer, RezFilter - Resonant filter with LFO and envelope follower, Round Panner - 3D panner
    • Channelswap, MAutopan, Spectral Autopan
    • Ducka (side-chain envelope), ndcTrem+ (tremelo), dlM bent (desync), Masha (beat grinder), dfx buffer override (stutter), dlM thrummaschine (distortion) Kitchen Sync (complex LFO), The Modulator 2 (amplitude/ring/frequency modulation), dlM sfilter (sequenced filter), dlM pfilter (probabalistic filter), dlM manic (glitch sampler), Livecut (glitch), Muchacho (stutter), Phase Seq (glitch), dlM truc/2 (multi), Frakture (multi), Hysteresis (multi)
    • kn0ck0ut-LV2 - an LV2 plugin to perform spectral subtraction. It can be used to achieve a wide variety of effects, most notably removing or extracting the center of a two channel audio file. As Kn0ck0ut is only a plugin, you will need a host for LV2 plugins in order to use it, such as Ardour, Qtractor, Ingen, jalv, lv2_jack_host, or lv2file.
    • ArtyFX
    • rkrlv2
  • Panoramix - Stereo Panorama/Balance and Volume Automation Tool.


Reverb

  • Reverb
    • mverb - lv2
    • Tal-Reverb-III - all plate reverbs


Distortion

  • mod-distortion
  • gx_vobtb.lv2 - fuzzbox
  • deteriorate-lv2
  • Deathcrush
  • bitfilter.lv2
  • bitrot

Granular

  • Granular
    • Argotlunar - tempo sync, multiplatform VST
    • grANALiser - Windows VST
    • 23_words - Host-synced randomised sample player/modulator. Windows VST
    • Muchacha - Applies David Haupt's granulator to clock-synced probability sequencer. Windows VST

Pitch shifting

  • Pitch shifting:
    • talentedhack
    • x42-autotune (fat1.lv2)
    • TAL-Vocoder
    • VocProc
    • mod-pitchshifter
    • lv2vocoder


Delay

  • Delays with host tempo sync:
    • TAL-Dub-3 - LV2
    • Anarchy Rhythms - Win VST
    • Calf Vintage Delay, Calf Reverse Delay, ZamDelay (mono), Della (mono), Leet Delay 2 (Win VST), TigerDelay (Win VST), Spaceship Delay (Win VST), PPD Echobox (Win VST), Tapatiki (Win VST), Delazi (Win VST), Rubbadub (Win VST), KR-Delay FS, SoundHack +delay (Win VST)


Looping

  • SuperBeatRepeater - Carla doesn't see?
  • DeLooper
  • beatslash-lv2
  • InstaLooper - vst
  • Tempo Sync Reverser
  • SooperLooper - larger, proper
  • Luppp - Ardour-like

Slicing

  • Tranches
  • boucle

EQ

  • EQ
    • x42-eq - LV2
    • Lv2fil - Stereo and mono LV2 plugins, four-band parametric equalisers
    • HiLoFilter - vst

Compression

  • Compression
    • Radium Compressor - over master out
    • New Visual Compressor - LV2

Structures

ABAC, etc. with length and intensity as a varying state.

AB either harmonic relation or on/off.


Kick

  • 4/4 - variations of
  • Swung / offbeat
  • Matching bass

Bass

  • 8 beats one tone, 8 another
  • 64 beats one tone, 64 another


Bugs

(and nitpicks)

  • Cannot yet do/use/is annoying
    • Session management
      • NSM - undeveloped UI, can't delete/move/rename sessions, no delete confirmation, new session/client button confusion, nsm-proxy doesn't save label first time. no jackpatch connection state file save/argument, loses states on bad crash. mostly does its job though..
      • i3 - working towards a sound layout save and restore process..
      • Carla - plugin state has to be manually loaded, plugin windows need to be manually opened (nsm?) [6]
      • Carla - takes a while to close [7]
      • Carla - no NSM portability yet [8]
    • Routing
      • jack2 - lacks Metadata API so no pretty device port names [9]
      • Patchage - doesn't auto-refresh when a client changes input/output ports.
      • Carla - crashes after a plugin is renamed [10]
      • Carla - has a max plugin instantiation limit of 10s, ErsDrums loads only 50% of the time depending on load
      • Carla - cannot reorder/group plugins in rack [11]
    • MIDI
      • MIDI controlled MIDI looping - no software good enough enough yet, would allow live loop of mute and effect changes. seq64 is closest.
      • sequencer64 - no MIDI start/stop/arm just yet [12].
      • sequencer64 - can't change BPM whilst running yet [13].
      • sequencer64 - can't see if text field is active or button is selected (accidental space) in editor window
      • Giada - audio/midi looping - problems between nanoKONTROL2s no button off note off CC and parameter scales [14]. fiddly midi control; learn but no 'mod' like sequencer64, i.e., no MIDI 'channel' (sample/sequence) select or channel groups - every item requires unique MIDI CCs and learns for each of it's functions.
    • External interactive tempo changes
      • klick doesn't do JACK transport and OSC mode (from gtklick) at same time [15]
      • Jack Director only has set bpm presets triggerable by midi
      • InConcert doesn't take external input or display bpm, crashes often
    • DAW
      • LMMS - no LinuxVST or LV2 [16]
      • Qtractor - doesn't see some VSTs linked by Airwave..
      • Qtractor - plugin MIDI ports are exposed through jack "system" block?! name is unuseful "midi_playback_13"
      • Qtractor - clicking on a bus option bus not changing it, then clicking another bus prompts to save (no) change
      • Qtractor - ERSDrums - on a MIDI track and no audio outs, on a Audio track and no MIDI ins?
      • Ardour - can't undo various tasks
      • Ardour - "Add New Subgroup Buss" doesn't work
      • Ardour - can't create busses in routing page
      • Ardour - plugin output channel numbering reversed/whack! (ERSDrums at least)?
      • Ardour - no virtual piano to plugin MIDI input for testing
      • Ardour - metronome is a fixed pattern, faster would enable quicker beatmatching with external source [17]
      • Ardour - no VST tempo sync? :( [18]
      • Ardour - no Jack tempo sync! [19] also no MIDI Clock sync [20]
      • Ardour or sequencer64 - with seq64 as Jack Transport Masteer, Ardour starts but doesn't use the correct tempo
    • Synthesis
      • ZynAddSubFX / Yoshimi - no host tempo sync for lfo/etc. [21] [22]
    • Samples
      • petri-foo - broken, always starts from 0 :(
      • Shuriken - no mp3 at least until the end of 2017 due to patents [23] [24]
      • Shuriken - playback line position becomes incorrect after change to/from Zoom Original scale [25]
      • Shuriken - cannot zoom in after enabling or disabling Slice [26]
      • Shuriken - sometimes crashes when rearranging samples [27]
      • Shuriken - major problems with Export As... feature [28]