-----------------------
Intervalon More Info
-----------------------

(*) mark shows that the ini file (Intervalon.ini in the Intervalon folder) has related settings.
You can edit the ini file with your favorite text editor for deep customizations.

Keyboard key shortcuts Shift + something :
   Some (minor) options can be changed by keyboard shortcuts shift + something.
   They are explained in the ini file.
   (Some are saved by 'Save options' and others not.)

Diagnosis mode :
   Some additional infos/features are available in diagnosis mode.
   Board options --> check 'diagnosis'  (not saved by 'Save options'.)

----------------------------------------------------------------------------------------------------

PC keyboard/mouse playing :
   Keyboard key mappings are defined in the ini file. (*)
   (Internally, keyboard scan codes are used.)

   control key:  New notes made on while pressing control key will not get off by 
                 mouse/keyboard-key up (sustain).
   space-bar:    makes off only sustained notes if any, or makes off all flying notes off,
                 or force silence.
   esc key:      makes off all flying notes, or force silence.
    
   Mouse playing : try
     left-click
     right-click  (Up does not issue note-off)
     left-click (no up) -> move
     mousewheel -> move (hover) -> mousewheel (very good, recommended)

     if you jump on the board, try mousewheel away (Hit-Test Deep). eg.,
        C mousewheel away -> (fly D edge ->) E -> (back) C -> E   (deep hit-test persists)
        C mousewheel -> D -> D mousewheel away -> A -> B          (deep hit-test stops after A)


Reference note and how it is pitched :
   When you try various meantone tunings you would want a note-key that will have one and the same
   pitch across tunings. This is Reference note.
   You choose Reference note and how it is pitched.
   In the initial setting, it is D above middle C, pitched 700 cents below A4 pitch at 440 Hz.
 
   Select A4 pitch, eg. 440 Hz :
      'Sound options --> 'general pitch'
   Select Referefence note and how it is pitched relative to the A4 pitch selected above :
      'Sound options' --> 'fixed across tunings'  (just right of 'general pitch')  (*)

   (There is a 'symbol type' in board options that will show you the Reference note marked by
    R encircled.
    You can see that its position (pitch) is fixed on the board across any tunings selected.)

Tunings :
   Meantone and other tunings are defined in the ini file. Modify as you like. (*)
   (There are some that are commented out, ready to be tried.)
   
   In an 'uneven' (undulated) tuning (eg. Werckmeister), you can shift undulations on screen :
      Sound options -> ('uneven' checked ->) 'Shift UpDowns by 2nd and min.3rd'
      (not saved by saving sound options)

Audio responses, adjusting audio latency levels :
   Audio response constancy of this software is amazingly good, only limited by (that is, truely
   reflecting) PC input device polling cycles (the smaller the better, subtly).

   There are two items for adjusting latency levels in sound options.
   'audio latency (minimum)' and 'delay note-off'

   audio latency (minimum) :
      In audio shared mode ('exclusive' not checked), you can select latencies practically good
      enough.
      In exclusive mode ('exclusive' checked), You can go to extremely low latencies.
         Exclusive mode is a Windows audio feature. Related settings are in Control Panel Sound.
         If it does not work, try switching to push-mode, by unchecking 'event mode'.
         In some cases in windows 10, it might help to uncheck 'Allow hardware acceleration of audio 
         with this device' of the playback device (Control Panel Sound -> select the device and,
         click 'Properties' -> 'Advanced' tab -> under 'Hardware Acceleration', if it exists.)

      In exclusive mode, milliseconds shown is fairly reliable.
      In shared mode, it may be not so reliable in level wise, actual latency levels depending on
      Windows audio stack processings. (Up/down adjustments are relatively reliable.)
      In very low latencies, * and ** marks denote risks of audio glitches or (very subtle) audio
      response variances.

   Delay note-off :
      For notes-off, this delay is added on top of 'audio latency (minimum)'.
      This makes instrument tones more crisp or full.
      Delaying note-offs are actually done so that higher notes get off a little quicker than lower
      notes. (*)
      In Mouse playing, there is an additional adjustment. (*)

Navigating soundfonts / presets :
   You select first a soundfont, then a preset within it.
   The presets appear in the order of their program number part, then the bank part.
   (Many soundfonts have their presets numbered like GM1 program numbers.)
   When you change soundfonts, the latest selected instrument tone is searched first for the initial
   preset.
   You might be using a lot many soundfonts and want to search eg. Violin presets across soundfonts.
   There is a little feature for it (filter-by-program);
   If opted when changing soundfonts/presets, only ones with the present instrument (program) are
   shown.
   This feature is activated if the number of sf2 soundfonts used (ie. in the 'Soundfonts' folder)
   are more than 15. (*)

Soundfont bank 128 (for the midi drum channel) :
   Many soundfonts have drum/percussion presets in bank 128 particularly to be used in the midi drum
   channel. (EditedforIntervalon.sf2 does not have one.)
   For instrument navigation purposes, they are handled like program number 128.
   You can opt to ignore presets in bank 128. (*)

Deep-tune soundfont presets :
   This software can 'deep-tune' soundfont presets. (*)
   works miraculously good (if tuned good).
   Soundfont preset settings have limitations in tuning resolution, 1 cents at best.
   This software extends it to 0.01 cents, approximately the highest resolution in MIDI (tuning
   by pitch bends).
   You apply your 'deep-tune's to note-key ranges of a soundfont preset, corresponding to the ranges
   of note-keys covered by PCM data samples.
   (You need a soundfont viewer/editor software such as Viena.)
   I have appiled 'deep-tune's to EditedforIntervalon.sf2 (and will keep updating them).
    
Sound profiles in sound options and Layout profiles in board options :
   They are defined in the ini file.
   Changing item values of a profile on screen is actually creating a new profile,
   new profile always saved with the name 'temp.'. (The original profile remains untouched.)
   To make the 'temp.' profile permanent, please bother to rename it to anything you like with your
   text editor.

Augment voice (instrument tone) :
   by internally duplicating note-ons, with :
     an interval selected (most typically Unison or an octave up/down),
     sound volume rate selected, and,
     optionally with a 2nd (auxiliary, Aux) instrumet tone.

   Use this feature as you like. I think it interesting and maybe useful.
   One use is for a virtual composite instrument.
   For example, suppose you are playing Organ 16'8'4'2' of EditedforIntervalon.sf2 in 7/12 Meantone.
   The preset lacking Nazard, you add Principal 4' with interval '5th above' as a substitute.
   (The result is an octave and fifth above because Principal 4' sounds an octave higher actually.)
   Note that this Principal 4' will dynamically tune to the tuning you are playing in, not fixedly
   by the settings within the soundfont preset. 

Display of the Interval and cents :
   The interval and cents between the two note-keys being played are displayed.
   They are not shown if you have unchecked 'show Interval & Cents' in board options.
   A second interval (up) is shown as (2,0), third (4,0), 5th (1,1), and octave (0,2).

Sustaining notes, to play cords using 'sustain' button :
   Check 'sustain button' in board options. 'sustain' button will appear at the bottom-right
   corner of the window.
   New notes made on while 'sustain' is checked will not get off by touch/mouse/keyboard-key Up.
   Pressing 'stop sound' button makes off only sustained notes if any.

   'stop sound' button can also be used to stop reverberation.

Using an external midi hardware/software multitimbral synthesizer :
   You can play an external multitimbral synth, eg. electronic piano such as YAMAHA Clavinova,
   from this software.
   
   Connect it to your PC/tablet by the hardware's 'USB to Host' jack and a USB cable, or using
   a USB MIDI interface, then check 'external synth' in sound options. Then it will appear as
   an external synth (midi-out device), to be selected.

   You can optionally define a list of its instruments (possibly of you choice), to be used in
   instrument navigation. (*)
   To use the list :
      'Sound options' --> press the button just left of 'select program/bank' under
      Instrument (midi program change)   

   Pitch-bend sensitivity midi message is sent initially, value 1 for maximum microtonal resolution.
   If the synth is a type that does not accept it (then only 12ET would sound right), try other
   values on the part of this software. (*)

(Changing Board Layout, etc.)

Board scrolling (= changing the note-key range covered by the board window) :
   'Scroll' line in board options.
   Or by dragging (slide). Check 'Drag' to enable dragging. Uncheck 'Drag' after you have done
   dragging.
   The scroll is saved by updating board options to the ini file.
   You can also save the scoll position used most often as the home position.
   '0,0' button restores the board to it.
   (Pressing '0,0' button while playing a single note-key will set the note-key button at the
    window center.)
   In the initial setting, D above middle C is the home and sits at the window center.
   (You play C-D-E on the board center.) (*)

Making buttons of Harmonic-series tones or HS PAD larger or smaller :
   Board options -> scale line -> note-keys
  
Using two windows of this software concurrently :
   Run multiple instances of this software.
     (An audio device being used in exclusive mode can not be shared.)
     (An external midi device might not be shared.)
   To use a different ini file for the second window (run), simply make another copy of
   Intervalon folder.

---------------------------------------------------------------------------------------------
Self-, multi-voice, multi-take play :

   Press 'Project' button. The project setting screen appears.

     (top area)
      select a project.

     (voice-overview area)
      some info of all the voices (defined in the ini file) are displayed.
      Enter/change instrument tones to use, etc. :
         Check 'edit' button.  Edit-area will appear.

      Front voice and back voices :
         Front voice is the voice you are going to play new (a new take) for.
         You play front voice listening to your past plays (takes) both in the front voice and
         the back voices selected.

      'Clear' voice :
         clears play data of the voice.

     (pos/take area)
      Position (pos) navigation :
         In strides of seconds. '0' button is to move back to pos zero.
      Takes :       
         A take begins with the first note-on after play-start ('Play' button) and ends
         with the last note-off before play-end ('Back' button on play-board).
         New takes are given take numbers (per voice) automatically.
         Later you can use them for pos navigation (select the take).
         Also, you can discard a take (of the front voice). First select it, then 'discard'.
         You can select the latest take directly by 'latest'.

     (Play/Listen/save area)
      'Play' button appears when a front voice is selected. Play-board appears.
      'Listen' is for listening only, irrespective of front voice checked or not.
         The screen does not switch. 'Re-Lis' is for Re-Listen.

   Play-board:
      Board/sound settings (other than instrument tones, etc.), such as board layout and
      tunings, are shared between non-project play and project play.
      (Note that you can easily play back your play in any tunings later.)
      You play listening to your past play (takes) of front/back voices.
      When you failed to start or mis-touched, press 'Retry' button.
      To listen to the play just taken,etc., press 'Back', then eg. (on the setting screen)
      press 'Listen'.

   Save your play into the project file (if you want) :
      There is no auto save.
      If there are takes not yet saved and you are going to end the app or select another
      project, no warnings whatever are issued.
      You can save the (previous) project after selecting another project until a new take
      is made or settings changed in the project selected anew.

   A project file :
      A project file is a text file with file extension .txt, to be put into 'Projects'
      folder. It contains
        1) IDs of voices.  (max number of voices is limited to 9. ID max size 3).
              eg. Voices = v1,v2,v3,v4  -> four voices
        2) voice descriptions. instrument tone to be used, etc.
        3) play data.
              note-on time (position from the first note-on) in 1/10 msec,
              duration,
              voice number (1-9),
              note-key (interval from C 5 octaves below middle C, eg. middle C (0,10),
              take number (1-255 per voice).
           (play data lines are expected to be sorted by note-on time.)

      (This software has limited project file maintenance functionality.)
      To create a new project file, manually create a new text file (or copy an exsiting
      empty project file), and edit it with a text file editor.
      Copy and paste the below three lines;

First line is mandatorily a comment line
[Project]
Voices = 0, S, A, T, B

      Change the first and third lines.
      First line is mandatorily a comment line. It is used nowhere but left untouched across
      saves.

      Voice number (1-9) in the play data section are the voice sequence numbers.
      Later, You can rename voice IDs or append a new ID with a text file editor.
      You can not insert a new ID between existing IDs unless you also manually replace the ID
      numbers in the existing play data (if any).
      
   Make a wav file of your play:
      44100/48000/96000 Hz, 16 bit, mono.
      (Not supported if the system audio frequency is other than 44100,48000 and 96000.)
      Press 'out wav' button in the Play/Listen/save area on the setting screen.
      A wav file with the name 'out.wav' will be created on the Intervalon folder while you are
      listening to the playback. After completion, rename/move it as needed.

   You can adjust the playback latency level (and the delay-off latency) on 'Sound options'.

   Pan setting can be changed by editing ini file. (*)

--------------------------------------------------------------------------------------------

Audio data format :
   frequency (sample rate) :
      device default (Windows audio control panel)
   bit-depth :
      in shared mode, device default (audio control panel).
      in exclusive mode, the highest supported by the device.  (*)
   channels : 2 (stereo) 

(internal/external synth)
Pitch-bend midi messages to realize tunings other than 12ET :
   You can see Cents, midi note-number and pitch bend issued, and channel used, of each note-key
   being played, in diagnosis mode.
   Pitch bend values also reflect 'deep-tune's applied.

   'test engine' pad (diag mode) might be a help to check how it is working.
   You can 'drag' the pad, to change the base note-key.
   keyboard shortcut Shift + F makes the pad more fine, +-0.05, 0.10, 0.15, 0.20 ...
 
------------------------------------------------------------------------------------------

about Soundfonts :

   There are many good soundfonts (.sf2, .sfz). Search the Net.
   Among my suggestions:
     sinfon36.sf2,
     Titanic 200 GM-GS v1.2.sf2,
     soundfonts4u,
     HQ Orchestral Soundfont Collection v3.0.sf2,
     Symphonic Sounds.sf2,
     ...
   Presets of soundfonts are here expected to be tuned exactly at 12ET.
   Sometimes they are tuned roughly exact.
   
------------------------------------------------------------------------------------------

about EditedforIntervalon.sf2 :

   (Acknowledgements)
   Preset/instument/sample originals are ones in
      GeneralUser GS,
      (Honky-Tonk, Vibraphone, Harp2, Dogs) Florestan Basic GM GS,
      (Harpsicord) RKhive Barharp.sf2 + MagicSFver2.sf2,
      (Organ 16'8'4'2') VirtuOrgan.sf2  Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International,
      (Nylon Guitar) LK-Nylon-Guitar.sf2 + sinfon36.sf2,
      (Mandolin) OmegaGMGS2.sf2,
      (Viola) Touhou.sf2  Creative Commons Attribution 4.0 International,
      (main range of Tuba) xioad_bank.sf2,
      (high range of English Horn) sinfon32.sf2 (Recorder)
      (high range of Bassoon) sinfon32.sf2 (Piccolo),
      (low range of Clarinet) MagicSFver2.sf2.
   Many thanks to the authors.
   I have made modifications in largest degrees.

   There is  'Deep tune' data for this soundfont in the ini file.
 
----------------------------------------------------------------------------------------------
last updated 2021/2/15
