Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
non [2015/07/12 07:28]
slackermedia created
non [2021/06/03 19:48] (current)
Line 1: Line 1:
-[[{arrowp.png|border:​0;​background:​none;​width:​0;​display:​inline-block;​position:​absolute;​top:​0;​left:​0;​}natron|]] 
  
-[[{arrown.png|border:​0;​background:​none;​width:​0;​display:​inline-block;​position:​absolute;​top:​0;​margin-left:​2.5em;​}obs|]] 
  
 ======Non====== ======Non======
Line 22: Line 20:
 </​WRAP>​ </​WRAP>​
  
-**Non-Intuitive**+**Modular**
  
 <WRAP indent> <WRAP indent>
-There is a slight learning curve to get up and running with Non, even if you have had experience on both Linux DAWs and stand-alone JACK tools.+Keeping things modular ​is wildly liberating for some and horrifying ​to others. If you prefer an all-in-one DAW that manages everything for you and keeps all of your settings and tools organised for you, then Non will not fit your workflow. Use a proper DAWnot a non-DAW.
 </​WRAP>​ </​WRAP>​
 </​WRAP>​ </​WRAP>​
Line 38: Line 36:
  
 There are four major user-facing components. There are four major user-facing components.
 +
 +{{anchor:​nonsession}}
 +===== Non-Session-Manager =====
 +
 +The most popular of the Non tools is the **Non Session Manager**, a modular yet global audio project session manager. With the Non Session Manager, you can instantiate a "​session"​ and enter each tool that you use within your project. Non Session Manager remembers each tool and the JACK state of each tool.
 +
 +[{{ nonsession.jpg?​666 | The Non Session Manager (''​non-session-manager''​) keeps track of your modular components. }}]
 +
 +It does //not//, at least directly, remember the internal state of each tool, nor does it allow launching an application with arguments (such as ''​yoshimi -l ~/​path/​to/​config''​ or ''​jalv.gtk $(lv2ls | grep -i pingpong)''​. For advanced configurations such as these, an ''​NSM Proxy''​ must be created.
 +
 +To add an instrument to a session, click the **Add Client to Session** button along the top of the Session Manager. For a standard instrument or filter, just enter the name of the executable just as you would launch it from a terminal. For an instrument requiring a proxy, enter the name and argument into the text field; you'll be prompted to break this out into separate fields.
 +
 +[{{ nonsession_proxy.jpg | An **NSM Proxy** enables complex commands in your sessions. }}]
 +
 +NSM (''​non-session-manager''​) is possibly the most developed component of the Non tool set, and it's perfectly acceptable to to use it and no other Non tool. NSM doesn'​t care what else it gets used with, it just does its very best to keep track of the tools that you use.
 +
 +<WRAP alert>
 +Not everything can be tracked by Non Session Manager, so you still need to save session files and presets and patches yourself. You may organise this information in whatever way works best for you (Slackermedia recommends its own [[planter|Planter]] tool for results), and you might be able to have NSM load the configuration files through a proxy command. The actual saving and organising, however, is still up to you.
 +</​WRAP>​
 +
 +===== Non-Mixer =====
 +
 +Non Mixer is a modular mixer; launch it, add channels, and route it with JACK. After Non Session Manager, this is probably the most developed tool of the NSM suite, and depending on your setup, could be a key component in your modular studio.
 +
 +If you are using modular JACK tools, you most likely do not have a mixer in your pipeline. You might control volumes with internal controls on a per-instrument basis, but sometimes you want a little extra intervention so you can control your mix. Non Mixer is exactly that.
 +
 +Launch Non Mixer from the **K Menu** or from a terminal as ''​non-mixer''​.
 +
 +The initial Non Mixer window is empty. Press ''​A''​ on your keyboard to add a channel (you might think of a channel as a "​track"​). All new tracks are mono by default; change it to stereo with the channel count as needed.
 +
 +[{{ nonmixer.jpg?​666 | Tracks are mono by default; change them if you need to. }}]
 +
 +For each track that you add to your mixer window, a new one appears in JACK. Using either [[qjackctl|QJackCtl]] or [[patchage|Patchage]],​ route your signals as needed.
 +
 +[{{ nonmixer.route?​666 | Pipe audio through mixer channels to help achieve a perfect mix even in a modular studio. }}]
 +
 +==== Control ====
 +
 +The missing feature here is automation; it is possible to control Non Mixer through MIDI signals, so you could sequence MIDI just to control the mixer. Or you might set the mixer levels statically, but use the internal controls of a modular instrument to modify its volume when required. Or you might record everything as separate tracks and mix them later in a DAW (or Non DAW) with automation.
 +
  
 ===== Non-Timeline ===== ===== Non-Timeline =====
 +
 +Non Timeline is the //audio// DAW in the Non suite. It does audio sequencing; it does not do MIDI sequencing, it does not do waveform editing.
 +
 +Launch Non-Timeline from the **K menu** or from a terminal with the ''​non-timeline''​ command.
 +
 +It will not prompt you for one, but in order for Non-Timeline to work, you //must// create a new project first. Create a new project in **Project** → **New**.
 +
 +<WRAP important>​
 +The term "​project"​ is confusing here, because Non Timeline actually only wants a directory into which it can place a ''​sources''​ directory. The directory containing ''​sources''​ acts as a Non Timeline "​project"​. When you re-open a project, this becomes very noticeable, since you will likely frantically search for a proper project //file//. There is none. Just click the **Open** button when you see the ''​sources''​ directory, and Non Timeline will know what to do.
 +</​WRAP>​
 +
 +The Non Timeline interface is pretty minimal to the point that it doesn'​t even have a menu option for importing sound files. To import a sound file into your project, first create a track to house the audio file; either right-click in the Timeline window and select **Add audio track** or press the ''​A''​ key on your keyboard. Once a track exists, drag-and-drop an audio file from your file manager into the Timeline.
 +
 +[{{ nontimeline.jpg?​666 | The Non Timeline, a multi-track tape recorder on your computer. }}]
 +
 +==== Control ====
 +
 +A peculiar feature of Non Timeline is that, unlike many other applications in both the film and audio world, the focus of workspace actions are not the playhead (or audio "​transport"​) but the mouse cursor.
 +
 +**Cut (Split) Audio**
 +
 +<WRAP indent>
 +To cut an audio region, place your mouse cursor at the position you want to splice. Press the ''​S''​ key on your keyboard. The audio region has been split at the point of your cursor.
 +</​WRAP>​
 +
 +**Fades**
 +
 +<WRAP indent>
 +Fade audio in or out with ''​F3''​ or ''​F4''​ respectively. The position of the mouse cursor //starts// the curve of the fade.
 +</​WRAP>​
 +
 +==== Navigation ====
 +
 +Navigating the Non Timeline is mostly done with the audio transport. Playing forward or backward obviously navigates in realtime, while the arrow keys scroll horizontally through the timeline independently of the transport. ''​Shift''​ ''​right''​ and ''​shift''​ ''​left''​ moves the transport left and right.
 +
 +The Non Timeline feels very much like a souped-up tape recorder. It does not feature the fine-grained editing capabilities that you might be used to with [[audacity|Audacity]] or even [[Qtractor|qtractor]] or [[ardour|Ardour]]. It seems to be geared toward capturing the live performance of a musician who anticipates punching in to correct errors, and who is satisfied with the performance as an input method. It sounds strange to qualify this, but in the age of electronic music, many composers expect their Timeline to let them make all kinds of changes, and Non Timeline is not geared toward that. It's a recorder.
 +
 +===== Non Sequencer =====
 +
 +The Non Sequencer is the MIDI sequencer in the Non suite. ​
 +
 +The sequencer itself has three workspaces; the sequence editor, the phrase editor, and the sequencer.
 +
 +The sequencer workspace is a mostly traditional MIDI sequencer, with the x-axis representing time and the y-axis the chromatic scale. Play or manually enter notes into the "piano roll" to compose.
 +
 +[{{ nonseq_roll.jpg?​666 | The familiar piano roll, Non style. }}]
 +
 +==== Routing ====
 +
 +The routing of MIDI gets a little tricky if you don't keep track of where the signal filters are. In Non Sequencer, there are two MIDI signal settings:
 +
 +  * Channel: What MIDI channel the sequencer is broadcasting.
 +  * Port: Which MIDI port in JACK the signal is being sent from.
 +
 +It's easiest explained as an example:
 +
 +Route a MIDI controller into the computer as usual: plug the controller into USB, and then in JACK send the output of that controller to the System **MIDI Thru** so that MIDI permeates through the JACK system.
 +
 +Send the System **MIDI Capture 1** signal to the **MIDI In** of Non Sequencer. This sends //all MIDI channels// (rather, omni channels) from the controller to the Sequencer.
 +
 +Launch AmSynth as your first instrument.
 +
 +Send the Sequencer **MIDI Out 1** into the AmSynth **MIDI In** port, and AmSynth'​s audio to your System **Playback**. Now when you play your controller, you hear AmSynth. ​
 +
 +Press the **Record** button in the Sequencer and play some notes into the sequence. When satisfied, stop recording. Note that the default record mode of the Sequencer is **Merge**, which adds any new notes that you play into the sequence, essentially overdubbing over itself each time it plays (like on an MC-303 and most other hardware sequencers).
 +
 +In the lower right corner of the sequencer, the **Channel** and **Port** are both set to **1**.
 +
 +This means that although omni MIDI channels are being fed into the sequencer, the current pattern is //sending// only channel 1 over port 1.
 +
 +[{{ nonseq_route.jpg?​666 | The complex routing of MIDI. Do it enough, and it eventually makes sense! }}]
 +
 +Now add a second synth (for instance, a dx7 emulator).
 +
 +Send the sequencer'​s **MIDI Out 2** into the DX7's **In**.
 +
 +Press ''​A''​ to Add a new pattern into the Sequencer. To flip back and forth between patterns, use ''​[''​ and ''​]''​. Do //not// use the **Pattern Slider** in the bottom control panel; it sometimes works but mostly just over-shoots what you are trying to do.
 +
 +In the synth, set its active MIDI channel to **2**. Where you set this will depend on the synth (and some synths will not even have the setting available to you, but the really good ones do).
 +
 +In the Sequencer, also set the **Channel** to **2** and the **Port** to **2**.
 +
 +To hear what you are about to play, route a cable from System **MIDI Capture 1** (this is where all USB controller traffic is happening) to your new synth'​s **MIDI In**.
 +
 +All MIDI signals are //sent// to the sequencer, and that helps you drive the instruments. But once the Sequencer takes over driving the instruments (when it is playing a sequence), the only channels that leave it are the ones //you// dictate in the **Channel** and **Port** settings. ​
 +
 +==== Phrases and Sequences ====
 +
 +For whatever reason, Non Sequencer works backwards along the top toolbar; you begin with sequences to create the difference patterns you want each instrument to play. Then you move one to the left to **Phrase**, where you define which sequence should play during one particular phrase. As with the **Sequencer** workspace, add new phrases with ''​A''​ and move between them with ''​[ and ''​]''​.
 +
 +To sequence phrases, move to the **Sequence** workspace. Add phrases with the **Insert Phrase** button; all existing phrases are listed there.
 +
 +Non Sequencer may not be the most robust or flexible sequencer or component of Non, but then again, it works well enough for small projects, and its minimalism and simplicity may appeal to you. 
 +
 +<WRAP tip>
 +**See Also** \\
 +[[ardour|Ardour]] \\
 +[[qtractor|Qtractor]] \\
 +[[muse|MusE]] \\
 +[[rosegarden|Rosegarden]] \\
 +[[seq24|Seq24]] \\
 +[[aj|Aj-snapshot]]
 +</​WRAP>​
 +
 +
 +<WRAP centeralign>​
 +<wrap fa>​[[natron|R]]</​wrap>​ <wrap fa>​[[start|S]]</​wrap>​ <wrap fa>​[[obs|Q]]</​wrap>​
 +</​WRAP>​
 +