MIDI Support

To use an.factory MIDI Export support, your copy of an.factory needs to be registered.

Configuring MIDI Support

The first step is to configure the Device types that you have in the   Device Type Preferences tab in the  Preferences Dialog. Up to two device types are supported: a Primary device and a Secondary Device.

You can select a Device to be either an AN1x, PLG150-AN or AN200. The Secondary Device is not enabled by default, and you need to enable it if required.

To configure MIDI support for each Device, go to the  MIDI Preferences tab in the  Preferences Dialog, and set up the following:

If you have enabled the Secondary MIDI device then there are two MIDI Device tabs, one for each device. Both tabs are identical, so only one is described.

If the Device Number on the AN device is set to  ALL then it will accept data for any SYSEX Device.

You can check that these settings work (for the AN1x only) by pressing the Test MIDI Settings button. When you press this button a test message is sent to the AN device and the subsequent Dialog will tell you if communication was successful or if there was a problem.

The above steps set up the basic communication mechanism for MIDI support, and you then can set up the remaining options according to your preferences:

The Transmit Buffer Size, Transmit Delay Between Buffers and Transmit Delay Between Objects values should not require adjustment. an.factory sends data to the AN Device by dividing the data into packets the size of which are specified by the Transmit Buffer Size value. When an.factory sends a packet it waits for the time period specified by Transmit Delay Between Buffers before sending the next packet, and it waits for the time period specified by Transmit Delay Between Objects after the last packet is sent. The delay parameters are specified in milliseconds. You may need to adjust these values (smaller buffers, longer delays) if communications is not reliable, and you may if you wish adjust these values (larger buffers, smaller delays) to maximise data transfer Sequence. If you adjust these values, please ensure that you test the transfer to ensure it is reliable, otherwise you may risk losing data. Note: Some MIDI interfaces do not like large packet sizes: I recently upgraded to a MOTU interface and ran into problems with MIDI export until I altered an.factory to send messages in small chunks defined by the above parameters!

Copying/Moving Voices, Sequences and Songs

In operation, using MIDI is quite straightforward. an.factory will transparently convert between AN1x, PLG150-AN and AN200 file formats as required depending on the source and destination file types. Similarly, an.factory will perform conversions as required between a source file and the data sent to/from the Primary and Secondary MIDI Ports.

You can import all the AN Device Voices/Sequences/Songs into any Child Window (including the AN Device Synthesizer Window) by selecting the Import from MIDI option on the MIDI Menu, or the     button on the Tool Bar.

This imports all Voices, and all Sequences (for an AN1x) if you have set the MIDI Preferences options to include Sequences during the bulk transfers into the selected window.

If the Synth is an AN200, then the following dialog appears, which waits for and captures the data exported from the AN200.

The AN200 does not support a program like an.factory being able to request the data, so you must manually send the bulk dump data. First, select the "Import From MIDI" command from an.factory's MIDI menu, and once this is visible and waiting for data then initiate the bulk dump from the AN200. The dialog box shows that the data being received. Once all data has been sent, press the "OK" button, or press the "Cancel" button to cancel the import.

Similarly you can also export all Voices and Sequences or Songs using the Export MIDI option on the MIDI Menu, or the     button on the Tool Bar.

Note if you import or export MIDI data to/from a Child Window which is opened from a data file, then the AN Device Synthesizer Window is also updated with the Voices/Sequences being imported/exported.

And you can also move/copy Voices/Sequences between the AN Device Synthesizer Window and Child Window using drag and drop.

You can also import/export a Voice or Sequence to/from the AN Device Edit Buffer by selecting a single Voice/Sequence and selecting the import/export to/from AN Device Edit Buffer options from the Voice's or Sequence's Context Sensitive Menu. You can also use the keyboard shortcuts for doing this.

Exporting Voices from an.factory to the AN Device Edit Buffer is really handy, for example, when trying to find a particular Voice in a file and you don't wish to load the whole file into the AN Device.

Finally you can also perform all the operations on Voices/Sequences in the AN Device Synthesizer Window that you can upon Voices/Sequences in a normal Child Window.

If you have the Automatically Update AN Device after Synth Window Edit option active, when you change data in the AN Device Synthesizer Window then the changes are automatically exported to the AN Device. 

So you may wish to turn the  Automatically Update AN Device after Synth Window Edit option off during intensive editing sessions. Once you've made all your changes you then select the Export MIDI option on the  MIDI Menu, or the     button on the  Tool Bar  Export option to manually export the changes.

If you quit an.factory with changes still present in the AN Device Synthesizer Window that have not been exported, then you will be asked if you wish to export the data or not.

MIDI Keyboard Routing

an.factory has a facility to allow MIDI data from an additional MIDI input port, defined in the MIDI Preferences dialog, to be routed to the port you have selected for an.factory to output MIDI data on. This allows, for example, you to use a master keyboard (which may be closer to your computer) to be used when auditioning AN1x sounds that you've sent from an.factory to the AN1x edit buffer.

You access this feature by selecting the AN1x MIDI Router ... option in the  MIDI Menu or by pressing the F12 function key whenever you need it, which activates the following dialog.

The name of the menu option will change depending on the selected device. A MIDI router option also exists for the secondary device if enabled.

The router uses the MIDI channel defined in the MIDI Preferences dialog This can either be the channel transmitted by the source device, or the specified channel.

The routing is active until you close the dialog by selecting the Close Channel button or by pressing the ESC key.