Table of Contents
For app version 0.7.x/iOS. Updated 2019-09-28.
Feedback and feature requests: synthjacker (at) coniferproductions (dot) com
SynthJacker is an automatic sampler for your MIDI synthesizers. It can capture a series of notes automatically and prepare them for importing into a sampler of your choice. SynthJacker supports both external MIDI synthesizers connected with an iOS-compatible audio interface, and instrument Audio Unit extensions (AUv3) internal to iOS. Additionally, you can bring in an externally recorded audio file.
Table of Contents
This section will give you a quick overview of using SynthJacker. For more detailed information please refer to the later sections of this user manual.
Please note that to get the most out of SynthJacker you will need to be somewhat familiar with synthesizers, MIDI, and recording.
If you are going to be sampling an external MIDI-controlled synthesizer, first connect your synth to your audio interface as follows:
Connect your audio interface MIDI OUT to synth MIDI IN.
Connect the synth audio output to the audio interface input
Connect your audio interface to your iOS device using the Apple Camera Connection Kit or Lightning to USB Adapter.
If you want to autosample instrument Audio Units, you do not need to make any connections. You only need to make sure that the Audio Units you are using are properly installed in your iOS system, and functional in a host application such as Cubasis or GarageBand. Similarly, if you want to process an externally recorded audio file, no connections are required.
If you are going to sample external synths, select External Instrument from the Source selector below the toolbar. Then select your MIDI interface as the MIDI Destination, and set the MIDI Channel if necessary. Finally, select your audio interface as the Audio Input.
If you are going to sample instrument Audio Units, select Audio Unit from the Source selector. Then select the Instrument Audio Unit from the list of those installed on your device. You can also select a Factory Preset, if the instrument Audio Unit publishes them.
For more information, see "Selecting the Sampling Source".
For external synths: Select the sound / preset you want to sample on your synth, and make sure that the MIDI channel of the synth matches the SynthJacker setting. Adjust gain in your audio interface as needed to get a strong signal, but be careful to avoid any clipping.
For instrument Audio Units: Select a factory preset for the AU, or if no factory presets are available, open the Audio Unit view to look for one or create one.
For external audio recordings, the only selection required is the sequence and the associated MIDI file.
Tap the + button in the main list to add a new sequence with default values for notes and velocities, and a randomly generated default name. Tap the new sequence to select it, then adjust the values as necessary.
More detailed information on the various parameters of the sequence is available in "Sequence options".
You can play the sequence before you record it. This is useful to determine the note duration, the note decay and the gap between notes, so that you capture complete notes, but don’t end up with a lot of dead air after and between the notes.
To play the sequence, tap the Play button in the top right of the navigation bar of the sequence screen. Your synth or instrument Audio Unit should play the sequence back. Hit the Stop button if you want to stop playback before it is complete.
Tap the Record button in the navigation bar. The sequence will be played back, and the result will be recorded in real time.
After the recording is completed, SynthJacker will automatically slice the result into audio files, one for each note-velocity combination.
When the recording is completed, switch to the iOS Files app on your device.
Select On My iPad from the Locations list, and then select the SynthJacker folder. Finally, select the folder that matches the name of your sequence and the time it was recorded.
In the selected folder you will find a number of audio files, named according to the settings in the application -- typically the name of the sequence, followed by the MIDI velocity and the name or number of the note. There is also a small text file in the SFZ format, for importing into an SFZ-compatible application. If you selected to retain the original recording, you will also find it in this folder, along with the MIDI file containing the sequence.
Table of Contents
SynthJacker can autosample external MIDI-controlled synthesizers or internal instrument Audio Units (AUv3), or slice an externally recorded audio file. Use the Source selector in the sequence panel to select your source. The detailed options will change according to your selection.
To use an external instrument, like a synthesizer, you need an iOS-compatible external audio interface connected to your iOS device. Connect the MIDI output of your audio interface to the MIDI input of your synthesizer, and connect the audio output of your synthesizer to the first input of your audio interface.
When you select External Instrument from the Source selector, you will see the following options:
MIDI Destination
MIDI Channel
Audio Input
Select the MIDI output port of your external audio interface, or select a MIDI-over-Wi-Fi target like a Mac computer.
Select the MIDI channel you want to use to drive the external synthesizer. Typically you can just use channel 1.
SynthJacker can host instrument Audio Unit extensions based on the AUv3 standard by Apple. The extensions must be of the type "aumi", and be controllable via MIDI.
Using instrument AUs does not require an external audio interface. Everything happens internally.
When you select Instrument Audio Unit, you will see the following options:
Instrument - the Audio Unit you wish to sample
Factory Preset - the factory preset of the Audio Unit you wish to sample
When you tap the value of the Instrument row, you will see another screen with all the instrument Audio Units currently installed in your iOS device. Select one of them and tap Back.
When you tap the Factory Preset row, you will see another screen with all the factory presets published by the selected instrument Audio Unit.
NOTE: Some instrument Audio Units do not publish factory presets. This is most likely the case if the Factory Preset list is empty. In this case you should open the Audio Unit view for the instrument AU to check if there is a dedicated preset selector to be found.
If you want to adjust the settings of the selected instrument Audio Unit or select a preset, open the Audio Unit view by tapping the "three sliders" icon in the navigation bar. This will open the view of the Audio Unit, if it has one.
Below the Audio Unit view you will also find a virtual piano keyboard. This allows you to test the selected sound or parameter change before you start sampling. You can hide or show the keyboard by tapping the command in the top left of the screen, or slide it up and down to make it bigger or smaller.
When you have made your selections, close the Audio Unit view by tapping Close at the top right of the screen.
You can use the SynthJacker slicing engine to process externally recorded audio files. This is known as "Bring Your Own Audio File" or BYOAF for short. Here is a quick guide to using this feature.
Create a sequence in SynthJacker as usual. Swipe left on the sequence list, and tap Generate MIDI. This directs SynthJacker to create a MIDI file containing the notes of the sequence. It will be found in the Files app, in SynthJacker / MIDI Files.
Import the MIDI file into your music app or DAW, on iOS, macOS, Windows, or anywhere you can. Then play it back and record the results into an audio file.
Copy the audio file to the SynthJacker / Audio Files directory in the Files app, for example using iCloud Drive.
Switch to SynthJacker and select the same sequence you exported earlier. Select Imported Recording as the source.
Listen to the audio file using the Play button, and slice it into samples with the Record button. As with the other sources, you will find the new sample files in the SynthJacker directory.
Make sure to match the MIDI file and the recording. The slicing is based on the timing of the notes, so a recording of a different sequence is probably not going to give very good results.
Especially when recording Inter-App Audio apps on iOS there may be a slight lag until the first note of the sequence sounds. If you find that this happens, insert a dummy note at the very start of the sequence, so that the IAA app is ready when the actual recording needs to start. This will then require some pre-processing before you bring the recording over to SynthJacker, to trim off the "warm-up note". However, compared to the hassle of manually slicing recordings you will surely find this a quick and painless step.
When you create a new sequence, SynthJacker initializes it with default values. You will typically want to change the default values to better match your sampling requirements. This chapter outlines the sequence parameters.
The Notes section collects sequence options related to the notes played on the synthesizer to be sampled.
From Note determines the first note of the sequence.
To Note determines the last note of the sequence.
Semitones Between Notes selects the sampling interval. Depending on your target app, you don't need to sample every note. Instead you can rely on the sample interpolation skills of the app's engine. You can select 1–5 semitones, 6 semitones or a whole octave as the interval.
Velocity Layers allows you to select the MIDI velocity values of the notes played. You can select as many velocities as you like from the full set of 0...127 defined by the MIDI standard.
The Timing section collects sequence options that determine how long the played notes are. The values depend on the sound you are sampling, and typically requires some trial and error beforehand to make sure that the notes are played completely, and will not overlap.
Note Length determines the length of the MIDI note, from Note On to Note Off.
Note Decay determines how long the MIDI note will sound after Note Off.
Gap Between allows you leave some silence between the notes just to be on the safe side.
The timing values can be adjusted in intervals of 0.1 seconds. The total length of one note in the sequence will be (length + decay + gap) seconds.
Table of Contents
You can control the operation of SynthJacker by changing various settings. Open the Settings panel by tapping the gear icon in the top right corner.
The Settings panel is divided into the following sections:
Output
Note Naming
Post-processing
About SynthJacker
Debugging
This setting controls the output format SynthJacker uses to save sample files. The following formats are available:
File format | File extension |
---|---|
AIFF | .aif |
WAVE | .wav |
CAF | .caf |
The settings in this section control how SynthJacker names the resulting sample files. These are useful for matching the different sample import conventions of various sampling apps.
SynthJacker saves the note audio files using a pattern that consists of the name of the sequence (or sound), the name or MIDI note number of the note, and the MIDI velocity of the note.
MIDI notes are numbered from 0 to 127, and note number 60 is middle C. There are two different conventions for naming this note, and all the other notes as well, and they differ in the number of the octave that is attached to the note name.
One convention is to use octave number 4, so that the name of MIDI note 60 becomes C4. This is perhaps the more traditional convention, used by many manufacturers of MIDI instruments and software applications. You may sometimes see this referred to as the "Roland" convention.
The other convention refers to MIDI note 60 as C3. It has been used by Yamaha Corporation, and therefore it is often known as the "Yamaha" convention.
Because different apps have different conventions, and sometimes also give you the option to use either convention, SynthJacker also gives you the option to choose either one. By default this option is set to the more traditional C4.
This setting does not transpose the notes. It only affects the sample file naming.
The Note Name option specifies if SynthJacker should use the common name of the note in sample file names, or the MIDI note number. Some sampling apps with automapping use MIDI note numbers, others use note names, and some recognize both.
If this option is set to Name, the filenames will contain parts like "C4" or "G6", depending on the "MIDI Note 60" convention.
If this option is set to Number, the filenames will contain the standard number of the MIDI note, such as 60 or 94. If the "Three-digit Note" option is selected, the note number will be expressed in three digits, with leading zeros as necessary.
This option determines the mutual order of the different components in the sample file name. The components are patch, note, and velocity. The following options are available:
Patch-Note-Velocity
Patch-Velocity-Note
Patch-Note
Patch-Velocity
The components will be separated with the selected separator (see "Separator").
You can select the separator character that appears between the sample name components. The following options are available:
Dash
Underscore
Space
This setting instructs SynthJacker to use a three-digit number for the MIDI note velocity. For example, the velocity value 90 is expressed as 090 when this option is selected.
If the Note Name option is set to Number, this setting instructs SynthJacker to use a three-digit number for the MIDI note number. For example, the name of MIDI note 60 is expressed as 060 when this option is selected.
If the Note Name option is set to Name, this setting has no effect.
The Folder Structure setting instructs SynthJacker to save the resulting sample files in a particular arrangement. The folder structure options are:
Flat
By note
By velocity
The Flat setting saves all files in the same directory. The By note setting creates one folder per each note in the destination folder, and saves each note with a different velocity in this folder. The folder is called NoteN, where N is the name or MIDI note number of the note.
The By velocity setting works similarly. It creates one directory for each velocity value, called VelocityV, where V is the velocity value.
Note that the Three-digit Note and Three-digit Velocity options affect these folder names. Certain apps demand a particular naming, so it is a good idea to check the exact requirements of your target app.
By selecting the suitable options, you can generate sample files that can be easily automapped by various apps.
For example, if you select the following options:
Option | Value |
---|---|
Output Format | AIFF |
Note Name | Number |
Sample Name Format | Patch-Note-Velocity |
Three-Digit Note | checked |
Separator | Underscore |
Then your sample files would be named like "MySound_060_100.aif".
The post-processing settings determine if SynthJacker should trim or normalize the audio content in the files.
Controls how SynthJacker trims silence the resulting samples. The options are:
None
Start
End
Both
The Noise Floor option determines the sound amplitude that SynthJacker considers "silence". You may need to experiment with this to get the best results.
When the Normalize Samples switch is on, SynthJacker will normalize the resulting audio to the desired level.
This determines the sound amplitude level of the normalized audio. If the Normalize Samples switch is off, this value has no effect on the resulting audio.
You will typically want to leave some headroom in the samples, so it is probably a good idea to set the normalization level to a value between -3.0 and -1.0 dB.
Note that the Noise Floor and Normalization Level settings are expressed in negative decibels, as is customary with digital audio. The highest value for both settings is 0.0 dB.
This sections shows you information about the application.
This shows you the version number of the SynthJacker app you are running. The first part (for example, 0.7.0) is the actual version number in the format "major.minor.patch". Typically the major version number is only incremented when the app changes dramatically. The minor version is typically incremented whenever new features are introduced. The patch number is always incremented when the features of the app stay the same, but bugs are fixed or small improvements are made.
The number in parenthesis is the build number. In practice, if you ever need to refer to SynthJacker by its version number, you will use the three-part version.
This shows you licensing information about the open source components used by SynthJacker, as required by their license agreements.