diff --git a/VERSION b/VERSION index 02dd731..8a3a199 100644 --- a/VERSION +++ b/VERSION @@ -1,2 +1,2 @@ -2020 July 28 2020 +2020 August 09 2020 diff --git a/doc/CHANGES b/doc/CHANGES index be411b0..027f748 100644 --- a/doc/CHANGES +++ b/doc/CHANGES @@ -13551,7 +13551,11 @@ on some systems for this example. X:1 L:1/4 K:C -2c/2fac'/c'/c'/c'/c'/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +2c/2fac'/c'/c'/c'/c'////////////////////////////////////////////////////////// +////////////////////////////////////////////////////////////////////////////// +////////////////////////////////////////////////////////////////////////////// +////////////////////////////////////////////////////////////////////////////// +/////////////////////////////////////////////////////////// Fix: add a test for zero denominator in genmidi.c @@ -13785,8 +13789,16 @@ store.c Minor correction in store.c when the microtone denominator is equal to 100 (in pitchof_b()). - - - +August 09 2020 + +genmidi.c: introducing %%MIDI bendstringex. +It is similar to %%MIDI bendstring except that it linearly interpolates +the pitchbends, causing smoother transitions. +Method: created a new function expand_array() which expands an +array {20, -20, ...} to {5, 5, 5, 5, -5, -5, -5 ,5} or something +like that depending upon the parameter factor. The expanded array +of benddatata is now treated like in %%MIDI bendstring in the +queues.c file. Presently, I am using a factor of 4 (not configurable). +Bendstringex limited to 64 or less increments. diff --git a/doc/readme.txt b/doc/readme.txt index 908ea08..85bd211 100644 --- a/doc/readme.txt +++ b/doc/readme.txt @@ -1,546 +1,546 @@ -abcMIDI : abc <-> MIDI conversion utilities - -midi2abc version 3.46 June 22 2020 -abc2midi version 4.40 July 28 2020 -abc2abc version 2.08 June 04 2020 -yaps version 1.78 June 14 2020 -abcmatch version 1.73 June 04 2020 -midicopy version 1.36 June 04 2019 - -24th January 2002 - -Copyright James Allwright -J.R.Allwright@westminster.ac.uk -University of Westminster, -London, UK - -February 2020 - -Seymour Shlien -Ottawa, Canada -fy733@ncf.ca - -This is free software. You may copy and re-distribute it under the terms of -the GNU General Public License version 2 or later, which is available from -the Free Software Foundation (and elsewhere). - -This package is to be found on the web at - -http://abc.sourceforge.net/abcMIDI/ -(The latest versions for the time being is found on - ifdo.ca/~seymour/runabc/top.html.) - -Note, if you have difficulty compiling the package because you do not have -snprintf see the note in doc/CHANGES dated January 08 2005 (and also -December 17 2004). - -These programs make use of the 'midifilelib' public domain MIDI file utilities, -which was originally available from - -http://www.harmony-central.com/MIDI/midifilelib.tar.gz - -If you have the source distribution and intend to re-compile the code, -read the file coding.txt. ---------------------------------------------------------------------- -midi2abc - program to convert MIDI format files to abc notation. - -This program takes a MIDI format file and converts it to something as close -as possible to abc text format. The user then has to add text fields not -present in the MIDI header and possibly tidy up the abc note output. - -Features : - -* The key is chosen so as to minimize the number of accidentals. -Alternatively, the user can specify the key numerically (a positive number -is the number of sharps, a negative number is minus the number of flats). -* Note length can be set by specifying the total number of bars or the -tempo of the piece. Alternatively the note length can be read from the file. -However, by default it is deduced in a heuristic manner from the inter-note -distances. This means that you do not have to use the MIDI clock as a -metronome when playing in a tune from a keyboard. -* Barlines are automatically inserted. The user specifies the number of -measures in the anacrusis before the first barline and the time signature. -* The program can guess how many beats there should be in the anacrusis, -either by looking for the first strong note or minimizing the number of -notes split by a tie across a barline. -* Where a note extends beyond a bar break, it is split into two tied notes. -* The output has 4 bars per line. -* Enough accidental signs are put in the music to ensure that no pitch -errors occur if a barline is added or deleted. -* The program attempts to group notes sensibly in each bar. -* Triplets and broken rhythm (a>b) are supported. -* Chords are identified. -* Text information from the original MIDI file is included as comments. -* The -c option can be used to select only 1 MIDI channel. Events on -other channels are ignored. - -What midi2abc does not do : - -* Supply tune title, composer or any other field apart from X: , K:, Q:, M: -and L: - these must be added by hand afterwards, though they may have been -included in the text of the MIDI file. -* Support duplets, quadruplets, other esoteric features. -* Support mid-tune key or meter changes. -* Deduce repeats. The output is just the notes in the input file. -* Recover an abc tune as supplied to abc2midi. However, if you want to -do this, "midi2abc -xa -f file.mid" comes close. - -midi2abc - usage : -midi2abc - -a - -xa extract anacrusis from file (find first strong note) - -ga guess anacrusis (minimize ties across bars) - -gk guess key signature by minimizing accidentals - -gu guess the number of midi pulses per note from note - duration statistics in the MIDI file - -m