Rusty Pipes Logo
Command Line Options

Command Line Parameters

All options can also be set via command line parameters:

Usage: rusty-pipes [OPTIONS] [ORGAN_DEFINITION]

Arguments:
  [ORGAN_DEFINITION]  Path to organ definition file (e.g., friesach/friesach.organ or friesach/OrganDefinitions/Friesach.Organ_Hauptwerk_xml)

Options:
      --midi-file 
          Optional path to a MIDI file to play
      --precache
          Pre-cache all samples on startup (uses more memory, reduces latency)
      --convert-to-16bit
          Convert all samples to 16-bit PCM on load (saves memory, may reduce quality)
      --log-level 
          Set the application log level [default: info] [possible values: error, warn, info, debug, trace]
      --ir-file 
          Optional path to a convolution reverb Impulse Response (IR) file
      --reverb-mix 
          Reverb mix level (0.0 = dry, 1.0 = fully wet) [default: 0.5]
      --original-tuning
          Preserve original (de)tuning of recorded samples up to +/- 20 cents to preserve organ character
      --list-midi-devices
          List all available MIDI input devices and exit
      --midi-device 
          Select a MIDI device by name
      --audio-device 
          Select an audio device by name
      --audio-buffer-frames 
          Audio buffer size in frames (lower values reduce latency but may cause glitches) [default: 512]
      --preload-frames 
          How many audio frames to pre-load for each pipe's samples (uses RAM, prevents buffer underruns)
      --tui
          Run in terminal UI (TUI) mode as a fallback
      --api-server-port 
          HTTP Port that the REST API server will listen on [default: 8080]
      --lang 
          Force a specific language/locale (e.g., "en", "de", "nl-BE")
  -h, --help
          Print help
  -V, --version
          Print version

Selecting a MIDI device via command line

First, list available devices:

$ rusty-pipes --list-midi-devices
Available MIDI Input Devices:
  0: Midi Through:Midi Through Port-0 14:0
  1: Scarlett 2i4 USB:Scarlett 2i4 USB MIDI 1 24:0
  2: LUMI Keys Block 80FR:LUMI Keys Block 80FR Bluetooth 129:0

Then, select the device (omitting the index number prefix):

$ rusty-pipes --midi-device "LUMI Keys Block 80FR:LUMI Keys Block 80FR Bluetooth 129:0" Organs/Friesach/Friesach.organ

Command line example with reverb

This example loads the Hauptwerk sample set "GreenPositiv", using convolutional reverb at a 70% wet mix:

rusty-pipes --ir-file BureaChurchRev1at24-48.wav --reverb-mix 0.7 /home/user/Hauptwerk/Organs/GreenPositiv/OrganDefinitions/GreenPositiv.Organ_Hauptwerk_xml