midicopy

MIDICOPY(1)                 General Commands Manual                MIDICOPY(1)



NAME
       midicopy - Copy selected track, channel, time interval of a MIDI file
       to another MIDI file

SYNOPSIS
       midicopy [-ver] [-trks n1,n2,..]    [-xtrks n1,n2,..]    [-xchns
       n1,n2,..]    [-chans n1,n2,...]    [-from n (in midi ticks)] [-to n (in
       midi ticks)]    [-fromsec %f n (in seconds)] [-tosec n (in seconds)]
       [-frombeat %f n (in beats)] [-tobeat n (in beats)]    [-replace
       trk,loc,val] [-tempo %n] [-speed %f]    [-drumfocus n m] [-mutenodrum
       [%d]]    [-setdrumloudness n m]    [-focusontrack n1,n2,... (from 1)]
       [-focusonchannel n1,n2,... (from 1)]    [-attenuation n]    [-nobends]
       input.mid output.mid

DESCRIPTION
       midicopy is used to copy part of a MIDI file to another MIDI file. You
       can select a particular time interval, particular channels, and
       particular tracks or any combinations. If one or both of the run time
       parameters -from or -to are included, the program returns the playing
       time in seconds of the output file.  Midicopy was developed by Seymour
       Shlien from the midifilelib distribution available from
       http://www.harmony-central.com/MIDI/midifilelib.tar.gz.

OPTIONS
       -ver   prints version number and then exits

       -trks n1,n2, etc
              Selects the tracks to be copied where the track numbers start
              from 1.  If more than one track is specified, they should be
              separated by commas. You should always copy track 1 since by
              convention it contains information pertinent to all the other
              tracks. By default all tracks are copied unless you specify
              particular tracks using this run time parameter.

       -xtrks n1,n2, etc
              Lists the tracks to exclude from copying. All other tracks are
              copied.  This option does not work in combination with -trks.

       -xchns n1,n2, etc
              Lists the channels to exclude from copying. All other channels
              are copied.  This option does not work in combination with
              -chns.

       -chns n
              Like above, it specifies the MIDI channels to be copied. By
              default all channels are copied. Channel numbers also start from
              1.

       -from n
              The program will copy all MIDI commands starting from midi pulse
              number n. By default it will start from time zero or the
              beginning of the MIDI file.

       -to n  Stops copying all events after midi pulse number n. By default
              the file is copied to the end.

       -frombeat n
              The program will copy all MIDI commands starting from quarter
              beat number n. By default it will start from time zero or the
              beginning of the MIDI file.

       -tobeat n
              Stops copying all events after quarter beat number n. By default
              the file is copied to the end.

       -fromsec n
              The program will copy all MIDI commands starting from time n in
              seconds.

       -tosec n
              Stops copying all events after time n in seconds. These two
              options (-fromsec and -tosec) do not work accurately if the MIDI
              file has more than one tempo command. Only the first one is used
              for converting seconds into MIDI pulse units.  It is therefore
              preferable to use the -from and -to options.

       -replace trk,loc,val
              This option should be used alone. Midicopy will copy the entire
              file verbatim except it will replace a byte by val, where the
              byte is located in the specified track (trk) and specified
              position (loc). Commonly this function is used for changing a
              particular MIDI program number (instrument) associated with a
              channel.  You need to know the byte count in the track of that
              parameter in order to use this function,

       -tempo quarter notes/minute
              All tempo indications in the midi file will be replaced with the
              above value.

       -speed factor
              All tempo indications in the midi file will be multiplied with
              this factor. Values greater than 1.0 will speed up the music
              while lower values slow the music. The factor is a floating
              point value.

       -drumfocus drum-code excluded_drum_velocities
              The selected drum line (specified by the drum-code pitch value)
              is highlighted by reducing the loudness of all other drum lines
              to the excluded_drum_velocities value. The drum-code value must
              be in the range of 35 to 81 inclusive.

       -mutenodrum [level]
              All channels which are not 9 (drum channel) are attenuated to
              the given level. If level is not specified, it is assumed to be
              zero.

       -setdrumloudness n m
              where n is between 35 to 81 inclusive and m is the loudness
              between 0 and 127. The loudness of all instances of drum n are
              changed to m.

       -focusontrack n1,n2,...
              The velocities of notes in all tracks except n are attenuated.

       -focusonchannel n1,n2,...
              The velocities of notes in all channels except n are attenuated.

       -attenuation n
              Specifies the amount the note velocities are reduced by either
              -focusontracks or -focusonchannels. Current default is 70.

       -nobends
              Suppresses all channel pitchbend commands.


EXAMPLE
       midicopy.exe -trks 1,5 -from 2669 -to 8634 uzicko.mid fragment.mid
       Midicopy will copy tracks 1 and 5 starting from midi pulse position
       2669 and ending at MIDI pulse position 8634.


SEE ALSO
       abcmtex(1), abc2abc(1), abc2midi(1), midi2abc(1) ,yaps(1)

AUTHOR
       This manual page was written by Seymour Shlien.

VERSION
       This man page describes midicopy version 1.30 from December 15 2017.



                                                                   MIDICOPY(1)