177
180
\hspace*{1cm}\shell{\$> muse2}\\
179
\subsection {Getting up and running for impatient people}
182
\subsection{Getting up and running for impatient people}
180
183
Install MusE from the repository of your chosen distribution.
181
184
To get decent performance start Jack with the following command in a
183
186
\hspace*{1cm}\shell{\$> jackd -d alsa -d hw:0 -p 256}\\
184
187
Or, if you prefer, use the launcher utility \textbf{QJackCtl} to get some
185
188
help starting Jack.
186
After this, start MusE from the menu or fire up another terminal and type
189
After this, start MusE from the menu or fire up another terminal and
188
If this didn't work out read on for the slighly more complete route for
193
If this didn't work out read on for the slightly more complete route for
189
194
getting things started.
191
\subsection {Getting up and running}
192
\subsubsection {Installation from binaries}
196
\subsection{Getting up and running}
197
\subsubsection{Installation from binaries}
193
198
There are several ways to install MusE depending on your situation. The
194
199
most convenient way is to install a prepackaged version from your chosen
195
200
distribution. The drawback of this is that it may not be the most recent
196
201
version, though often there is a more recent package from a private packager.
197
\subsubsection {Installation from source}
202
\subsubsection{Installation from source}
198
203
Building MusE from source is not hard, there are a number of prerequistes
199
204
that must be met but the actual building should be painless (ha, famous
201
206
Please follow the README in the source package and/or read the instructions
202
207
on the homepage: \url{http://muse-sequencer.org/index.php/Installation}
204
\subsubsection {Hardware}
209
\subsubsection{Hardware}
205
210
MusE on the Linux platform supports midi through ALSA and Jack-midi and audio
206
211
through Jack. For information on what hardware is supported there are some
207
212
convenient places to check:
209
\item Alsa soundcard matrix
210
\item \url{http://FFADO.org} for firewire devices.
214
\item Alsa soundcard matrix at
215
\url{http://www.alsa-project.org/main/index.php/Matrix:Main}
216
\item \url{http://FFADO.org} for firewire devices.
212
218
Also, as is often a very good approach for Linux and open source, the
213
219
various forums available on the internet often contain good information.
214
220
Chances are someone has already tried your configuration and/or had your
215
221
specific problem and the solution is already written down.
216
\subsubsection {Launching}
222
\subsubsection{Launching}
217
223
After installation the binary muse2 is installed on the computer. If MusE
218
224
was installed from a distribution repository the binary may have a
219
225
different name depending on the distribution policies. Most distributions
220
226
do however install a menu entry so MusE should be conveniently available
222
\subsubsection {Audio preconditions}
228
\subsubsection{Audio preconditions}
223
229
In the standard case MusE expects to find and connect to the Jack audio
224
230
server \url{http://jackaudio.org}. Make sure jack is installed (if MusE was
225
231
installed with a distribution-package Jack will very likely already be
227
233
sufficiently tuned to allow it to run with realtime capabilities. The
228
234
realtime configuration is configuration of the operating system and roughly
229
235
consists of two parts.
231
237
\item By default on most distros only the superuser lets applications setup
232
realtime capabilities. Please see the APPENDIX for setting up realtime
238
realtime capabilities. Please see the APPENDIX for setting up realtime
233
239
\item Maximizing performance. A standard linux installation may not able
234
240
to reach the performance required by a power user. This requires exchanging
235
241
the linux kernel for a so called lowlatency kernel, this is also covered by
236
242
the realtime APPENDIX.
239
\subsubsection {Running MusE}
240
Find MusE in the menu or open a terminal and enter muse2. A splash screen
241
should pop up followed by the main application window and you are off!
245
\subsubsection{Running MusE}
246
Find MusE in the menu or open a terminal and enter muse2.
248
\shell{\$> muse2}\\A splash screen should pop up followed
249
by the main application window and you are off!\\
243
250
If an error like the screenshot below pops up the Jack audio server is
244
251
either not running or started as a different user than what you are trying
245
252
to start MusE as.
246
253
\begin{figure}[htp]
248
\includegraphics[width=\screenshotwidth]{pics/no_audio}
254
\centering \includegraphics[width=\screenshotwidth]{pics/no_audio}
249
255
\caption{Jack server missing}
252
\subsubsection {Midi only}
258
\subsubsection{Midi only}
253
259
MusE can be started in Midi-only mode where MusE does not have any external
254
260
dependencies apart from ALSA midi. In this case start MusE from a terminal:
255
261
\shell{\$> muse2 -a}
257
\subsection {Beginners tutorial}
263
\subsubsection{ALSA midi with Jack}
264
If Jack is running, by default MusE will not use ALSA devices, preferring
265
Jack midi instead. To force ALSA devices to be used as well as Jack
266
midi, start MusE with the -A option: \shell{\$> muse2 -A}
268
\subsection{Beginners tutorial}
258
269
To get a quick grip of what MusE can achieve please follow this beginners
260
\subsubsection {Setup}
271
\subsubsection{Setup}
261
272
First off, fire up MusE as was described in the previous chapter, making
262
273
sure that the jack audio server is started with sufficient configuration
263
274
to allow for audio output without breakup. Also make sure your system can
265
\subsubsection {Soft synth test}
276
\subsubsection{Soft synth test}
266
277
With MusE up and running right click in the Track-pane (see screenshot in
267
~\ref{Main/Arranger}) and select \menu{Add Synth > MESS > Organ}. A Soft
268
Synth track called Organ-0 should appear as well as a separate GUI for
278
~\ref{Main/Arranger}) and select \menu{Add Synth > MESS > vam soft synth}.
279
A Soft Synth track called vam-0 should appear as well as a separate GUI
271
282
Now right click once more in the Track-pane and select \menu{Add Midi
272
Track}. Another track appears called Track-1, you will notice that it is
273
by default bound to the synth that was just created Organ-0.
283
Track}. Another track appears called Track 1, and its track list Port
284
column should show it is bound to the synth that was just created vam-0.
285
If it is not, click on the Track 1 Port column to open a drop-down list
286
of available devices and choose vam-0.
274
287
\begin{wrapfigure}{r}{0.05\textwidth}
275
288
\includegraphics[width=0.05\textwidth]{pics/arrow_tool}
359
371
screenshot above shows an empty project. Below is MusE with a song in
360
372
progress, turns out it wasn't a very good song, but for our purposes it
361
373
is fine. In the below screenshot there are a lot of tracks visible in the
362
Track-pane, each have an icon which indicate it's type, wave-trace, input,
374
Track-pane, each have an icon which indicate it's type, wave-track, input,
363
375
output etcetera, more about that later. In the Arranger canvas a number of
364
376
parts are visible, the ones in yellow are in this composition wave files,
365
377
the multicolored line are different Parts of a drum track.
366
\label{Main/Arranger}
378
\label{Main/Arranger}
367
379
\begin{figure}[htp]
369
\includegraphics[width=\screenshotwidth]{pics/main_window_with_arrangement}
380
\centering \includegraphics[width=\screenshotwidth]
381
{pics/main_window_with_arrangement}
370
382
\caption{MusE main window with arrangement}
371
\label{fig:Main Window with arrangement}
383
\label{fig:Main Window with arrangement}
386
\subsection{Mixer} \label{mixer}
375
387
Choosing \menu{View > Mixer A} or \menu{B} from the menu in the main
376
window will bring up the mixer as viewed below. The mixer will with all
377
options enabled show channel strips for all tracks in the current setup,
378
depending on how far you have gotten this view may become very large,
379
at which point it may be a good idea to limit what is viewed in the
380
Mixer. From the view menu all the different kinds of tracks can be
381
toggled on/off from the mixer. Some may find it a good idea to use the
382
two mixers A and B setup with different setup and store this in your
383
song template(s), more about this in the Song Template section. It can
384
be argued that everything in MusE is a track analogous to the Unix
385
idiom that everything is a file.
386
The types of tracks viable in the mixer (and track-pane) are:
388
window will bring up the mixer as viewed below. The mixer will open with
389
all options enabled, showing channel strips for all tracks in the current
390
setup, depending on how far you have gotten this view may become very large,
391
at which point it may be a good idea to limit what is viewed in the Mixer.
392
From the view menu all the different kinds of tracks can be toggled on/off
393
from the mixer. Some may find it a good idea to use the two mixers A and B
394
setup with different setup and store this in your song template(s), more
395
about this in the Song Template section. It can be argued that everything
396
in MusE is a track analogous to the Unix idiom that everything is a file.
397
The types of tracks visible in the mixer (and track-pane) are:
387
398
\begin{wrapfigure}{r}{0.5\textwidth}
388
\includegraphics[width=0.5\textwidth]{pics/mixer}
399
\includegraphics[width=0.5\textwidth]{pics/mixer}
402
There are also a Midi Track variation called Drum Track, they are
403
however not distinguishable from Midi Tracks in the Mixer. Also the
404
strips for midi tracks are different in the Mixer than in the
413
There is also a Midi Track variation called Drum Track, they are
414
however not distinguishable from Midi Tracks in the Mixer. Also the
415
strips for midi tracks are different in the Mixer than in the
418
\section{Tracks and parts}
409
419
MusE arranges your music in \emph{tracks} and \emph{parts}. The following
410
section shall provice you an overview of how things are done with MusE.
420
section shall provide you an overview of how things are done with MusE.
411
421
If you are or were a Cubase or Cakewalk user, you will feel familiar with
413
MIDI and drum tracks (which are internally MIDI tracks) which can hold
414
note data, wave tracks which hold wave data, and several kinds of
415
audio tracks, synthesizers etc.
425
There are two general classes of tracks: MIDI tracks and audio
426
tracks. MIDI tracks (and drum tracks which are internally MIDI tracks)
427
can hold note data. The Wave track is a type of audio track which holds
428
wave data. There are also several other kinds of audio tracks.
417
430
\paragraph{MIDI tracks}
418
431
MIDI and drum tracks hold MIDI event data. They don't differ much,
423
436
They hold audio data which can be just played back or be piped through
424
437
effect plugin chains. They offer automation for these plugins.
426
\paragraph{Audio inputs}
439
\paragraph{Audio input tracks}
427
440
These provide the path for your audio data from outside into your
428
project. Set up the physical audio inputs you want to connect your audio
429
in track with, and then route them to some wave tracks.
431
% TODO: what are audio outs and auxs?
432
% someone please write this!
435
Tracks are split in parts. These contain MIDI events or wave chunks.
436
You can copy, clone them, move them around, delete them etc.
438
\subsection{MIDI ports}
439
Ports provide an abstraction layer for your MIDI synthesizers (which
440
can be both software and hardware synthesizers). Port are numbered.
441
In order to produce sound, each MIDI track is assigned to exactly one
442
MIDI port, to which the MIDI events are then sent.
444
In the configuration menu, you must map the port numbers to the actual
445
synth devices (by selecting ALSA or jack midi ports, or synth plugins).
447
Try left-clicking on the "Ports" column of some MIDI track. If you
448
use a soft synth, right-clicking the Ports column of the synth or any
449
track using the synth lets you launch the synthe's GUI.
451
\section{Tracks and parts}
441
project. Set up the physical audio inputs you want to connect your
442
audio input track with, and then route the input tracks to various
443
other tracks such as wave tracks.
445
\paragraph{Audio output tracks}
446
These provide the path for your project's audio data to outside. Set
447
up the physical audio outputs you want to connect your audio out track
448
with, and then route various other tracks, such as wave tracks, to
451
\paragraph{Audio group tracks}
452
Group tracks are like busses, where you can route other tracks to
453
them, then route the groups to other tracks. Since group tracks have
454
all the features of other audio tracks, like volume and pan, they
455
provide a convenient common routing point where you have control of
456
the sound before it is passed to other tracks.
458
\paragraph{Audio aux tracks} \label{aux_tracks}
459
These provide a more convenient way to mix several audio tracks
460
together. With each audio aux track added, other audio tracks will
461
gain a common send knob for adjusting the level sent to the aux
462
track. This can be more convenient than using several group tracks.
464
\paragraph{Synthesizer tracks}
465
This type of track is a software synthesizer which MIDI and drum tracks
453
468
\paragraph{Creation}
454
469
You can create a track by either right-clicking in the arranger's track % TODO: insert screenshot
455
470
list and then adding the desired track, or via the edit menu.
457
\paragraph{Attributes} % TODO: this should be a list
458
Tracks have several attributes.
459
\subparagraph{Mute} If you click on the \emph{Mute} field (denoted with
472
\paragraph{Attributes}
473
Tracks have several attributes:
475
\item [{Mute:}] If you click on the \emph{Mute} field (denoted with
460
476
a "M" column header), the track gets muted and stops producing sound.
461
\subparagraph{Solo} The solo button ("S" column header) mutes all other % TODO: soloing chains etc?
463
\subparagraph{Record} The R column "arms" your track for recording.
477
\item [{Solo:}] \label{track_attr_solo} The solo button ("S" column
478
header) singles out a track for listening. It mutes
479
some other tracks but may phantom solo others.
480
For more info see the section on soloing: \ref{track_soloing} and
481
phantom soloing: \ref{phantom_soloing}
482
\item [{Record:}] The R column "arms" your track for recording.
464
483
When you rec-arm your song and have no tracks rec-armed, you won't be
465
484
able to record anything. See also the config option "move rec-arm with % TODO: reference to rec-arm config option
467
\subparagraph{Track name} Double-click and you will see.
468
\subparagraph{Port} For MIDI tracks, this lets you select the MIDI
486
\item [{Track name:}] Double-click to edit the track name.
487
\item [{Port:}] For MIDI tracks, this lets you select the MIDI
469
488
port to which the events should be routed. This can be your physical
470
synthesizer or a software synthesizer. For soft synthes, this is the
489
synthesizer or a software synthesizer. For soft synths, this is the
471
490
port the synth is associated to. For other track types, this is disabled.
472
\subparagraph{Channel} For MIDI tracks, this is the MIDI channel the
491
\item [{Channel:}] For MIDI tracks, this is the MIDI channel the
473
492
output is sent to. For any kind of audio tracks, this is the number of
474
493
channels (mono, stereo).
475
494
% TODO: what's that "T" column?!
476
\subparagraph{Automation} For audio tracks, this lets you set up the
477
automation display in the arranger. Clicking this will provide you with
478
a popup menu with lots of submenus. The submenus let you select the
479
color you want to associate with the automation parameter. \emph{Clicking % TODO: this is nonstandard
480
on a submenu} will select or unselect it, making the automation parameter % TODO: put reference to automation section
495
\item [{Automation:}] \label{track_attr_automation} For audio tracks,
496
this lets you set up the automation display in the arranger.
497
(See automation \ref{audio_automation}). Clicking this will provide you
498
with a popup menu with lots of submenus. Clicking on a submenu will
499
select or unselect it showing or hiding the automation parameter as a
500
graph overlaid on top of the track.\\
501
The submenus let you select the color you want to associate with the
502
automation parameter. There you can also assign midi controllers to
503
the parameters, a dialog is shown where you can manually choose the
504
midi controller, with a \emph{learn} button to 'listen for' and
505
automatically recognize any midi controller operated by you.
483
\subparagraph{Clef} For MIDI tracks, you can specify a clef here. This
507
\item [{Clef:}] For MIDI tracks, you can specify a clef here. This
484
508
only affects the score editor.
486
\paragraph{The trackinfo side bar}
512
\subsubsection{The trackinfo side bar}
487
513
In the arranger and the part editors, you'll have a trackinfo sidebar
488
514
on the left side. You can set up track-type specific things there.
490
\subsubsection{MIDI tracks}
491
MIDI parts have no automation settings. However, they support various % TODO: this will hopefully become wrong soon
492
controllers, program changes etc.. The MIDI trackinfo sidebar lets you
493
change program, volume, pan and more. Just editing the value in the
494
boxes will send an event, but not write it to the track. In order to
495
write it, you will need to click on the corresponding button ("Vol" for
496
writing down volume information).
498
\subsubsection{Drum tracks}
516
\paragraph{MIDI trackinfo sidebar} \label{midi_trackinfo_sidebar}
517
The MIDI trackinfo sidebar lets you change program, volume, pan and
518
more. This sidebar can also be viewed at the left of the pianoroll
519
editor. %%FIXME Ref to pianoroll
520
\subparagraph{Drum tracks:}
499
521
These are MIDI tracks as well, but with a few differences. They allow
500
522
you to map certain drum sounds with different input notes, and you
501
523
can change the output settings of a certain "drum instrument" without
508
530
for the used channel and more. These limitations will be addressed in
509
531
MusE 2.1, which offers a new concept of drum tracks.
511
\subsubsection{Audio tracks}
512
\paragraph{Effect rack}
513
On the top of the sidebar, there is an effect rack which allows you to
514
apply various plugins on the audio. For more information on this, refer
518
Lorem ipsum % TODO FINDMICH HIER WEITER
533
\subparagraph{MIDI trackinfo controls:}
535
\item [{Output port:}] This drop-down list selects the midi port
536
to send midi output from this track.
537
\item [{Output channel:}] This box selects the midi channel to be
538
used on the output port.
539
\item [{Input and output routing:}] Selects midi ports and
540
channels to receive midi from, and soloing paths. (See Routes
542
\item [{Midi through:}] This button selects whether midi input is
543
passed through to the selected output port.\\
544
Depending on your midi devices and settings, there are cases when
545
this should be off such as using the same port and channel for
546
input and output (otherwise a double-note \emph{echo} will be heard),
547
and cases when it must be on such as when using a synthesizer track
549
\item [{Input detect indicator:}] Blinks when midi activity is
550
detected on the selected midi channels on the selected midi input
552
\item [{Transpose:}] This transposes midi input notes up or down
553
in pitch. This is very useful if your midi keyboard hasn't enough
554
keys or the selected output device plays an octave too low or high,
555
and you would like to shift the octave of the incoming notes to
557
\item [{Delay:}] Adjusts the delay of the notes. %% FIXME What is this again? Does it work?
558
\item [{Length:}] Adjusts the length of the notes. %% FIXME What is this again? Does it work?
559
\item [{Velocity:}] Adjusts the velocity of incoming notes.
560
Use it to compensate for a too-loud or too-soft keyboard.
561
\item [{Compression:}] Adjusts the compression of incoming note
562
velocities. Use it to make soft incoming notes louder, and loud
564
\item [{Instrument:}] Selects the midi instrument patch to be used
565
by the selected output port. This is equivalent of dialing the patch
566
in the bank and program boxes, except it displays a more friendly
567
patch \emph{name} as defined by the selected output port's midi
568
instrument. See instruments, or port configuration %% FIXME Ref to instruments.
569
\ref{midi_port_config}
570
\item [{H-Bank:}] Selects the high bank number of the current patch.
571
\item [{L-Bank:}] Selects the low bank number of the current patch.
572
\item [{Prog:}] Selects the program number of the current patch.
573
\item [{Volume:}] Adjusts the midi volume controller.
574
\item [{Pan:}] Adjusts the midi pan controller.
576
The buttons beside the Prog, Volume, and Pan boxes store the value,
577
at the current transport position, for midi automation. (See
578
automation \ref{midi_automation}).
580
Note that the 'Prog' button stores H-Bank and L-Bank along with
581
'Prog' value, so there are no H-Bank and L-Bank buttons.
583
The 'All' button simply stores all three Program (and banks), Volume,
584
and Pan values at once.
586
\emph{Tip:} If the Song Type is GM, GS, or XG, you may need to store %% FIXME Ref to song type
587
desired values at transport position zero, otherwise your adjustments
588
may be overriden by the instrument when the transport is moved back
589
to position zero. If this behaviour is undesired, you can set the
590
Song Type to 'NO' meaning no song type. %% FIXME Ref to explanation of instruments and default controller values
592
\paragraph{Audio trackinfo sidebar}
593
Unlike the midi trackinfo sidebar, the audio trackinfo side bar
594
is nothing more than an embedded audio mixer strip, the exact same
595
strip as found in the mixers. (See mixer \ref{mixer}).
596
\subparagraph{Effects rack:}
597
On the top of the audio trackinfo sidebar, there is an effects rack
598
which allows you to apply various plugins on the audio. For more
599
information on this, refer to \ref{effects_rack}.
521
602
\subsection{Parts}
537
618
while holding down the \key{CTRL} key.
541
\section{Plugins and automation} \label{plugins}
542
There are several kinds of plugins. First, there are audio plugins, which
543
can be applied to any track handling audio (that is, inputs, outputs,
544
wave tracks, synth tracks). Plugins can be added by double-clicking
545
on an entry in the effect rack in the track info pane (which is shown
546
at the left side of the arranger when the according track is selected).
547
Right-clicking them offers a self-explanatory popup menu.
621
\section{Routes} \label{routes}
622
Routes are how tracks are connected together and to the outside world.
623
(They are also how Jack midi ports connect to the outside world. See
624
midi port configuration \ref{midi_port_config}).
625
Each track strip has two buttons whose icons look like plugs. One button
626
is for input routing and the other is for output routing. Clicking on
627
these buttons will pop up a menu of available input or output routes that
628
you can connect to. Most audio tracks list other tracks to connect to,
629
but audio input and output tracks are special: Audio input track input
630
routing menus list available Jack audio input ports. Conversely audio
631
output track output routing menus list available Jack audio output ports.
633
\begin{wrapfigure}{r}{0.25\textwidth}
634
\includegraphics[width=0.25\textwidth]{pics/output_routing}
638
Meanwhile MIDI and drum tracks allow you to route available MIDI ports
639
and channels to the track using a handy popup matrix.
641
\begin{wrapfigure}{r}{0.25\textwidth}
642
\includegraphics[width=0.25\textwidth]{pics/midi_routing_matrix}
647
\subsection{Anti circular routing} \label{anti_circular_routing}
648
Any routing menu item which would cause a circular routing condition
649
is grayed out. Find out why the condition would exist by examining
650
routing paths involved and correct the situation if required.
652
Also, you cannot use a track's aux sends if the track has an input
653
route path from ANY Aux Track. (See aux tracks \ref{aux_tracks}).
654
Aux send knobs and labels are disabled in that case.
656
\subsection{Soloing chain routes} \label{soloing_chain_routes}
657
Soloing chains (see solo chains \ref{soloing_chains}) are really just
658
routes like any other. The available solo chaining paths are displayed
659
in the routing popup menus.
661
\section{Track soloing} \label{track_soloing}
662
Soloing allows you to single out a track for listening while muting others,
663
without you having to mute the other tracks. (See soloing track attribute
664
\ref{track_attr_solo}).
666
\subsection{Phantom soloing} \label{phantom_soloing}
667
In order to solo a track and mute others so that it is heard, MusE
668
employs 'phantom' soloing: When a track is soloed, MusE automatically
669
solos all tracks routed to and from this track. (See routes
670
\ref{routes}). A phantom soloed track is indicated by a black square
671
in the track pane solo column. (See track attributes
672
\ref{track_attr_solo}).
676
\centering \includegraphics[width=\screenshotwidth]{pics/soloing_window}
677
\caption{Soloing, with phantom soloing}
681
\subsection{Soloing chains} \label{soloing_chains}
682
When an audio output track sends audio to some external entity, such
683
as an external running application, and audio from the external entity
684
is fed back into a MusE audio input track, solo chains allow you to
685
solo the input or output, and MusE will complete the path automatically
686
soloing the other, and all paths that came before or after it.
688
Solo chains also work with MIDI tracks chained to audio inputs:
689
When a MIDI track drives some MIDI device whose audio is fed into MusE,
690
solo chains allow the entire chain to be soloed.
692
Solo chains are accessed via routing menus. (See solo chain routes
693
\ref{soloing_chain_routes}).
695
\section{Plugins} \label{plugins}
696
Plugins are small add-ons which can process a track's data.
698
MIDI plugins operate on midi and drum tracks, and are found in
699
the \menu{Midi} menu.
701
Audio plugins can be applied to any track handling audio (that is,
702
inputs, outputs, wave tracks, synth tracks). The effects rack
703
section describes this. (See effects rack \ref{effects_rack}).
705
\subsection{The audio effects rack} \label{effects_rack}
706
All audio track types (Input, Output, Group, Wave, Synth, and Aux) have
707
an effects rack into which audio plugins can be inserted in a chain.
708
Currently each rack can accomodate up to four plugins.
710
MusE currently supports LADSPA plugins and DSSI synth and effects
713
Plugins can be added by double-clicking on an entry in the effect rack
714
in the track info pane (which is shown at the left side of the arranger
715
when the according track is selected). Right-clicking the rack items
716
offers a self-explanatory popup menu.
718
All plugin controls can be automated. (See audio automation
719
\ref{audio_automation}).
721
One must carefully consider how many audio inputs and outputs a plugin
722
has, and how may channels the particular audio track has (1 mono or
723
2 stereo), and how MusE uses the plugins in the rack.
725
Learn more about this in the appendix Understanding the Effects Rack:
726
\ref{apx_effects_rack}
728
\subsubsection{Audio plugin Graphical User Interfaces (GUIs)}
729
\label{plugin_guis} Once a plugin is added, you need a way to
730
manipulate its controls, which affect its behaviour and operate
733
MusE can show a generic GUI which contains all of the
734
plugin's controls arranged in a rather plain generic fashion.
736
Some plugins may also have a native GUI which looks much better (it
737
was specifically designed for the plugin).
739
Both GUI types are opened from the effects rack right-click popup menu.
741
\section{Automation} \label{automation}
742
Automation is the ability to record (or construct) and playback
743
exact sequences of control movements.
745
MIDI and audio automation are each currently uniquely different,
746
but share some similarities.
748
\subsection{Audio automation} \label{audio_automation}
749
Almost all graphical audio controls in MusE can be automated.
751
This includes an audio track's volume and pan, and the controls
752
of any plugins in the effects rack, and if the track is a
753
synthesizer track, all of the synth's controls.
755
Each control has a manual adjustment value. This value is shown
756
when there is no automation data at all, or automation has been
759
For plugin and synth controls, it is usually more desirable to
760
manipulate automation with the generic plugin GUIs, because
761
MusE has full control over their behaviour. (See plugin GUIs
764
There are a few ways to enter audio automation data:
766
\item By adjusting audio controls while the transport is rolling.
767
MusE will record the exact movements.
768
\item By adjusting audio controls while the transport is stopped,
769
at different transport positions. TOUCH mode allows this.
770
\item By right-clicking any audio control and choosing an operation
771
from the automation popup menu. This includes storing, erasing,
772
and clearing automation events, and seeking the next or previous
774
\item By drawing the data on the audio track's automation graphs.
775
(See track automation \ref{track_attr_automation}).
777
\paragraph{Audio automation modes}
778
Each audio track strip has an automation mode button
779
at the bottom. There are four automation modes:
781
\item [{OFF:}] Disables all automation, uses manual value always.
782
\item [{READ:}] Automation data is applied to controls. If any
783
automation data exists, the manual value is overridden and has
785
\item [{TOUCH:}] Allows you to alter a control at any time, while
786
transport is stopped or rolling, If rolling, when the control is
787
released it returns to reading from automation data.
788
\item [{WRITE:}] Allows to adjust an initial value before rolling
789
the transport. While rolling, when the control is released it does
790
not return to reading from automation data.
792
Here is a screenshot of automation WRITE mode, and some automation
793
data, with the track pane automation popup menu showing (see track
794
automation \ref{track_attr_automation}):
796
\centering \includegraphics[width=\screenshotwidth]
797
{pics/main_window_with_automation}
798
\caption{Audio automation graphs}
799
\label{fig:audio_automation}
802
\label{midi_automation} \subsection{Midi automation}
803
MIDI automation is a slightly different concept: Unlike audio
804
automation, currently there is no automation 'mode' and it doesn't
805
record graphical control movements. Data is viewed from within
806
the pianoroll and drum editors, by clicking on the 'Ctrl' button %% FIXME Ref to pianoroll
809
Similar to audio controls, each midi control has a manual adjustment
810
value. This value is overridden when there is midi automation data.
812
There are a few ways to enter MIDI automation data:
814
\item By adjusting external MIDI controls (such as a midi keyboard
815
pitch or modulation wheel) while the transport is rolling and both
816
the transport and midi track are in record mode. MusE will record
817
the exact movements. As mentioned earlier, note that graphical control
818
movements are not recorded. %% FIXME Feature requests for true midi automation
819
\item By right-clicking any midi control and choosing an operation
820
from the automation popup menu. This includes storing and erasing
821
automation events. %% FIXME Store/erase not enough functionality
822
\item By adjusting volume, pan, bank or program boxes in the midi
823
trackinfo panel and clicking the corresponding volume, pan, or
824
program buttons. (See midi trackinfo \ref{midi_trackinfo_sidebar}).
825
\item By drawing the data on a midi part's automation graphs.
827
Here is a screen shot of a midi track, containing a midi part
828
which has been opened with the pianoroll editor and automation %% FIXME Ref to pianoroll
831
The 'Ctrl' popup menu (bottom left) shows available midi controllers
832
and the green dot indicates there is some data.
835
\centering \includegraphics[width=\screenshotwidth]
836
{pics/main_window_with_midi_automation}
837
\caption{MIDI automation graphs}
838
\label{fig:midi_automation}
549
842
\section{Configuration}
844
\subsection{MIDI ports}
845
MIDI ports provide an abstraction layer for your MIDI hardware and
846
synthesizers (which can be both software and hardware synthesizers),
847
and other MIDI applications. Port are numbered. In order to produce
848
sound, each MIDI track is assigned to exactly one MIDI port, to which
849
the MIDI events are then sent.
851
The advantage of this abstraction layer is that if your system changes,
852
for example you change MIDI hardware, then you need only modify the
853
ports instead of all the tracks using those ports. This is similar
854
to the audio input and output track abstraction to the outside world.
856
\label{midi_port_config} \paragraph{MIDI port configuration}
857
In the midi/softsynth configuration menu, you must map the port numbers
858
to the actual devices (by selecting ALSA or jack midi ports, or synth
861
Try left-clicking on the "Ports" column of some MIDI track.
862
If you use a soft synth, right-clicking the Ports column of the synth
863
or any track using the synth lets you launch the synth's GUI.
866
\centering \includegraphics[width=\screenshotwidth]
867
{pics/midi_config_window}
868
\caption{Midi configuration window}
869
\label{fig:midi_config_window}
872
\paragraph{Columns in the MIDI configuration ports list:}
874
\item [{GUI:}] For synthesizer devices, indicates if a gui is available
875
and if it is showing. Click to show.
876
\item [{I:}] If present, the port can accept MIDI input. Click to
877
enable or disable it.
878
\item [{O:}] If present, the port can send MIDI output. Click to enable
880
\item [{Instrument:}] Selects the instrument to be used when MIDI is
881
played through the port.
882
\item [{Device name:}] Selects or creates a MIDI device assigned to the
883
port. These can be Jack MIDI devices or ALSA MIDI devices (if ALSA is
884
enabled), or soft synthesizers. Jack MIDI devices are created by selecting
885
Create Jack Device from the Device name drop-down menu. Jack MIDI devices
886
can be renamed as you wish by clicking the device name. Soft synthesizers
887
are created by clicking in the soft synthesizer list and then Add
888
Instance. Or you can simply create a new synthesizer track from the
889
arranger track list, or even the mixer menus.
890
\item [{In and Out routes:}] These are for Jack MIDI devices, they are
891
the routes to and from available Jack MIDI ports. Jack may provide
892
different alias names for these ports, you can select which alias
894
\item [{Default in channels:}] Auto-connect these port channels to
895
new midi or drum tracks.
896
\item [{Default out channel:}] Auto-connect new midi or drum tracks
897
to this channel on the port.
898
\item [{State:}] Indicates the state of the port including any errors
902
\subsection{Global settings}
903
\subsubsection{Audio settings}
550
904
\paragraph{Minimum control period}
551
Plugins can usually process an arbitrarily small (or large) amount of
552
samples. If some plugin control value changes continously, to provide
905
Plugins can usually process an arbitrarily small (or large) amount
906
of samples. If some plugin control value changes continously, to provide
553
907
ideal listening experience, MusE would need to call the plugin 44100
554
908
times a second, asking for one single value at a time. With the minimum
555
909
control period setting, the user can force MusE to ask the plugin for
556
910
at least N values. Setting this value to 64 would in this situation
557
make MusE call the plugin $689 = \frac{44100}{64})$ times a second,
911
make MusE call the plugin $689=\frac{44100}{64})$ times a second,
558
912
asking for 64 values at a time. While doing this will reduce accuracy
559
913
of control changes, it may also reduce CPU usage, because calling
560
914
the plugin more often, requesting smaller chunks, is more expensive
564
918
downmix of your project, set this to a low value. If you're experiencing
565
919
performance problems, increasing this value might help.
922
\label{apx_effects_rack} \section{Understanding the effects rack}
923
One must carefully consider how many audio inputs and outputs a plugin
924
has, and how may channels the particular audio track has (1 mono or
925
2 stereo), and how MusE uses the plugins in the rack.
927
MusE will try to internally create as many independent copies
928
(instances) of a plugin as necessary, to satisfy the number of channels
930
Basically it divides the number of track channels by the number of
931
plugin audio inputs or outputs to determine how many copies to make.
932
First it examines the number of plugin audio outputs, and if there are
933
none, it will examine the number of audio inputs, and if there are
934
none, it will simply use just one plugin copy.
936
For mono tracks with plugins having more than one audio input or
937
output, MusE uses the first input or output and ignores the rest.
941
\begin{tabular}{|c|c|c|c|c|}
943
plugin inputs & outputs & copies & track in route channels &
944
track out route channels\tabularnewline
947
0 & 0 & 1 & 0 & 0\tabularnewline
949
0 & 1 & 2 & 0 & 2\tabularnewline
951
0 & >=2 & 1 & 0 & 2\tabularnewline
953
1 & 0 & 2 & 2 & 0\tabularnewline
955
1 & 1 & 2 & 2 & 2\tabularnewline
957
1 & >=2 & 1 & 1 (L only) & 2\tabularnewline
959
>=2 & 0 & 1 & 2 & 0\tabularnewline
961
>=2 & 1 & 2 & 2 & 2\tabularnewline
963
>=2 & >=2 & 1 & 2 & 2\tabularnewline
967
Notice that on a stereo track with a plugin having one audio input and
968
two audio outputs, only the first track input route channel is used
971
These same rules apply to inter-plugin audio when more than one plugin
972
is in the rack chain. Extra audio outputs of one plugin may be ignored
973
by the next plugin if not used.
975
Currently specialized plugins with many inputs and/or outputs are not
976
really useful in MusE.
978
Nor are so-called 'realtime' control plugins which use audio inputs
979
and outputs for control signals.
981
Loud noise alert! Beware of using such plugins in an audio effects
984
Example: Consider a stereo Audio Input track with these effect rack
988
\item comb\_splitter Comb Splitter by Steve Harris
989
\item tap\_stereo\_echo Tap Stereo Echo by Tom Szilagyi
993
The Comb Splitter has one audio input and two audio outputs.
994
The Stereo Echo has two audio inputs and two audio outputs.
996
The stereo Audio Input track will therefore ignore its second
997
input route connection. It will process the left input only,
998
separating it into stereo with the Comb Splitter, passing the
999
split stereo signal into the Stereo Echo, finally producing
1000
stereo output available at the Audio Input track's output routes.
1003
One improvement would be not creating unused redundant plugin copies
1004
between plugins in stereo tracks.
1005
For example, for a plugin having one audio input and one audio output,
1006
feeding a plugin having one audio input and two audio outputs,
1007
the extra copy of the first plugin is redundant and not required,
1008
but currently it is created anyway.
572
1011
\chapter{Internals -- how it works}
573
1012
This chapter explains how MusE is built internally, and is meant
574
1013
to be an aid for developers wanting to quickly start up with MusE.
575
1014
For details on \emph{why} stuff is done please refer to the following
577
1016
\section{User controls and automation}
578
1017
\subsection{Handling user input}
579
1018
\subsubsection{Plugins and synthesizers}