Sequencer64(May 2021)

NAME
Sequencer64 - Real-time live MIDI sequencer refactored from Seq24

SYNOPSIS
seq64 [OPTIONS] [FILENAME] seq64cli [OPTIONS] [FILENAME] qseq64 [OPTIONS] [FILENAME] The name of the executable depends on the build: ALSA-only (deprecated), Gtk UI, command-line, and Qt UI.

DESCRIPTION

Sequencer64 is a real-time MIDI sequencer. It was created to provide a simple interface for editing and playing MIDI 'loops'. It uses gtk-2 or Qt 5 for the user interface.

OPTIONS
Sequencer64 accepts the following options, plus an optional name of a MIDI file. Note that the legacy options, which use underscores or are missing the option hyphen, are still unofficially supported. Note that many of the options are "sticky". That is, they will be saved to the "rc" configuration file.

-h, --help
    Display a list of all commandline options.

-V, --version
    Display the program version.

-v, --verbose
    Adds more output to the console, for troubleshooting. This option is not saved to the "rc" configuration file.

-H, --home dir
    Set the directory that holds the configuration files. It is always relative to the user's HOME directory. The default is ./config/sequencer64.

-X, --playlist filename
    Load the given play-list from the HOME directory. The conventional name for this file is, for example, "live-sets.playlist". This file provides one or more play-list entries, each providing a list of one or more songs. Once loaded, the user can use the four arrow keys to move between play-lists and the songs in each play-list. The play-list entries are also controllable via MIDI control values set in the "rc" file. See the Sequencer64 manual for more information. Note that, once set, this option is, by default, saved in the "rc" file.

-l, --legacy
    Save the MIDI file in the old Seq24 format, as unspecified binary data, instead of as a legal MIDI track with meta events. Also read the configuration, if provided, from the ~/.seq24rc and ~/.seq24usr files, instead of the new ~/.config/sequencer64/sequencer64.rc and ~/.config/sequencer64/sequencer64.usr files. The user-interface will indicate this mode. This mode is also used if the application is invoked as the seq24 command (one can create a soft link to the sequencer64 binary to make that happen).

-b b, --bus b
    Supports modifying the buss number on all tracks when a MIDI file is read. All tracks are loaded with this buss-number override. This feature is useful for testing, making it easy to map the MIDI file onto the system's current hardware/software synthesizer setup.

-B b, --buss b
    The same as the --bus option, just for oldsters to use.

-q p, --ppqn p
    Supports modifying the PPQN value of Sequencer64, which defaults to a value of 192. This setting should allow MIDI files to play back at the proper speed, and be written with the new PPQN value. The support values for PPQN (p) are 0 and 32 to 19200. The value of 0 is special. It indicates that the Sequencer64 internal PPQN should be set to the value that is present in the currently-loaded MIDI file.

-L, --lash
    If LASH support is compiled into the program, this option enables it. If LASH support is not compiled into the program, this option will note be shown in the output of the --help option.

-n, --no-lash
    Disable LASH. This option is useful if LASH is enabled in the configuration file, but one wants it disabled.

--file <filename>
    Load the specified MIDI file on startup. This option does not exist. Instead, specify the file itself as the last command-line argument.

-m, --manual-alsa-ports
    Sequencer64 won't attach ALSA MIDI ports. Instead it will make "manual" (virtual) ports. It will create is own set of virtual input and output busses/ports. By default, 16 ports (0 to 15) are created. There is an option in the 'rc' file (sequencer64.rc) to reduces this number. The opposite option is '-a'. Not supported in the PortMIDI build.

-a, --auto-alsa-ports
    Sequencer64 will attach ALSA ports. Useful for overriding the sequencer64.rc configuration file when set up to use manual (virtual) ports. The opposite option is '-m'.

-r, --reveal-alsa-ports
    Do not use the 'user' definition for port names, used the actual port names reported by ALSA. Shows the native system port names. The opposite option is '-R'.

-R, --hide-alsa-ports
    Use the 'user' definition for port names. These option looks up the port names in the 'user' file, sequencer64.usr, and uses them. Useful to show the actual equipment attached to each port. The opposite option is '-r'.

-A, --alsa
    Sequencer64 will use ALSA MIDI ports. This option is useful to override the configuration file, if it was set up for JACK. This is a sticky option. The opposite option (JACK), is '-t'. JACK transport is also disabled.

-s, --show-midi
    Dumps incoming MIDI to screen.

-k, --show-keys
    Prints the pressed key value.

-K, --inverse
    Changes the sequence editor and performance/song editor colors to an inverse-color mode. This mode can be considered a "night mode".

-p, --priority
    Runs higher priority with a FIFO scheduler. This option needs root access to succeed.

-P, --pass-sysex
    Passes any incoming SYSEX messages to all outputs. Not yet fully implemented.

-i, --ignore <number>
    Ignore ALSA device <number>.

-d, --record-by-channel
    Divert MIDI input by cannel into the sequences that are configured for each channel.

-D, --legacy-record
    Record all MIDI into the active sequence. Also set by the --legacy option.

-x, --interaction-method <number>
    Select the mouse interaction method 0 = seq24 (the default); and 1 = fruity loops method. The latter does not completely support all actions supported by the Seq24 interaction method, at this time. The following options will not be shown by --help if the application is not compiled for JACK support.

-j, --jack-transport
    Sequencer64 will sync to JACK transport. Note that JACK transport is separate from native JACK MIDI support.

-J, --jack-master
    Sequencer64 will try to be the JACK master. This is a sticky option.

-C, --jack-master-cond
    JACK master will fail if there is already a JACK master.

-M, --jack-start-mode <x>
    When Sequencer64 is synced to JACK, the following play modes are available: 0 = live mode and 1 = song mode (the default). Live mode means that the musician controls the unmuting of patterns on the main window. Song mode means that the song layout in the "Song" window controls the playback.

-t, --jack-midi
    Use native JACK MIDI. This is a separate option from JACK Transport, and is the default. If JACK is not running, the application falls back to ALSA.

-N, --no-jack-midi
    Use ALSA MIDI, even with JACK Transport. See the -A option.

-S, --stats
    Print statistics on the command-line while running, if built for showing statistics.

-u, --user-save
    Save the "user" configuration file after exiting. Normally, it is saved only if it does not exist, so as not to make certain command-line "user" options (such as --bus) permanent. (Perhaps the same should be true of the "rc" configuration options.)

-f, --rc filename
    Use a different "rc" configuration file. It must be a file in the user's $HOME/.config/sequencer64 directory or the directory specified by the --home option. Not supported by the --legacy mode. The '.rc' extension is added if no extension is present in the filename.

-F, --usr filename
    Use a different "usr" configuration file. It must be a file in the user's $HOME/.config/sequencer64 directory or the directory specified by the --home option. Not supported by the --legacy mode. The '.usr' extension is added if no extension is present in the filename.

-c, --config basename
    Use a different configuration file base name for the 'rc' and 'usr' files. For example, one can specify a full configuration for "testing", for "jack", or for "alsa".

-o, --option opvalue
    Provides additional options, including the no-GUI version of Sequencer64. Here are the opvalues supported: daemonize Makes this application fork to the background. no-daemonize Makes this application not fork to the background. log=filename Redirect console output to a log file in the
                  --home directory [$HOME/.config/sequencer64]. wid=3x2,f Sets up for multiple main windows, to show
                  multiple sets in a grid of patterns panels. sets=RxC Modifies the rows and columns in a set from the
                  default of 4x8. Supported values of R are 4 to 8,
                  and C can range from 8 to 12. If not 4x8, seq64 is
                  in 'variset' mode. Affects mute groups, too. scale=x Scales the main window size, from 0.5 to 3.0.
                  A value of 0.75 is useful when using
                  "-o wid=2x2 -o sets=8x8", though the pattern
                  labelling is mildly distorted.

FILES
$HOME/.config/sequencer64.rc stores the main configuration settings for Sequencer64. If it does not exist, it will be generated when Sequencer64 exits. If it does exist, it will be rewritten with the current configuration of Sequencer64. Many, or most, of the command-line options are "sticky", in that they will be written to the configuration file. $HOME/.config/sequencer64.usr stores the MIDI-configuration settings and some of the user-interface settings for Sequencer64. If it does not exist, it will be generated with a minimal configuration when Sequencer64 exits. If it does exist, it will be rewritten with the current configuration of Sequencer64. Note that the --legacy option causes the old configuration-file names to be used.

BUGS
Sequencer64 has them. See https://github.com/ahlstromcj/sequencer64/issues for the reported bugs. We take pride in hiding a few more :-D.

SUGGESTIONS AND BUG REPORTS
Any bugs found should be reported to the upstream author and/or package maintainer. See the link in the previous section.

HOMEPAGE
https://github.com/ahlstromcj/sequencer64/

OTHER INFO
--ppqn works, but be aware that it may have bugs. If a MIDI file is re-saved, --ppqn is also saved. If no JACK/LASH options are shown above, they were disabled in the build configuration. The current Sequencer64 project homepage is a simple git repository at the https://github.com/ahlstromcj/sequencer64.git URL. Up-to-date and more comprehensive instructions can be found in the project at the https://github.com/ahlstromcj/sequencer64-doc.git URL. The old Seq24 project homepage is at <http://www.filter24.org/seq24/>, and the new one is at <https://edge.launchpad.net/seq24/>. It is released under the GNU GPL license. Sequencer64 is also released under the GNU GPL license.

SEE ALSO
There are no man-pages yet for the "rc" and "usr" configuration files. However, when Sequencer64 is first run, these files are saved in $HOME/.config/sequencer64, and they are fairly self-documenting.

AUTHOR
Sequencer64 was written by Chris Ahlstrom <ahlstromcj@gmail.com>, with contributions from Tim Deagan <tim@deagan.net>, Daniel Appelt <daniel.appelt@gmail.com>, 0rel, layk, and many others. Seq24 was originally written by Rob C. Buse <seq24@filter24.org> and the Seq24 team at LaunchPad. This manual page was written by Dana Olson <seq24@ubuntustudio.com> with additions from Guido Scholz <guido.scholz@bayernline.de> and Chris Ahlstrom <ahlstromcj@gmail.com>.