]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/converters.itely
*** empty log message ***
[lilypond.git] / Documentation / user / converters.itely
index 62ae5cd3eda329512ecbf9957b95ebd8c539b665..28553b86b97aef86e78a2dc8bfb8e49275b758d9 100644 (file)
@@ -1,4 +1,4 @@
-@c -*-texinfo-*-
+@c -*- coding: latin-1; mode: texinfo; -*-
 
 @node Converting from other formats
 @chapter Converting from other formats
@@ -16,18 +16,24 @@ sequencers and XML converters. Refer to the
 * Invoking midi2ly::            Importing MIDI.
 * Invoking etf2ly::             Importing Finale.
 * Invoking abc2ly::             Importing ABC.          
-* Invoking musedata2ly::        Importing Musedata.
 * Invoking mup2ly::             Importing MUP. 
+* Other formats::               
 @end menu
 
 
 @node Invoking convert-ly
 @section Invoking convert-ly
 
-Convert-ly sequentially applies different conversions to upgrade a
-LilyPond input file.  It uses @code{\version} statements in the file to
-detect the old version number.  For example, to upgrade all LilyPond
-files in the current directory and its subdirectories, use
+The syntax is regularly changed to simplify it or improve it in
+different ways. A side effect of this, is that LilyPond often is not
+compatible with older files. To remedy this, the program convert-ly
+can be used to deal with most of the syntax changes.
+
+It uses @code{\version} statements in the file to detect the old
+version number.  For example, to upgrade all LilyPond files in the
+current directory and its subdirectories, enter the following on the
+command line.
+
 @example
         convert-ly -e --to=1.3.150 `find . -name '*.ly' -print`
 @end example
@@ -60,7 +66,9 @@ The following options can be given:
     Print usage help.
 @end table
 
-
+convert-ly always converts up to the last syntax change handled by
+it. This means that the @code{\version} number left in the file is
+usually lower than the version of convert-ly itself.
 
 @refbugs
 
@@ -77,8 +85,8 @@ MIDI (Music Instrument Digital Interface) is a standard for digital
 instruments: it specifies cabling, a serial protocol and a file
 format.  The MIDI file format is a de facto standard format for
 exporting music from other programs, so this capability may come in
-useful when you want to import files from a program that has no
-converter for its native format.
+useful when importing files from a program that has convertor for a
+direct format.
 
 Midi2ly will convert tracks into @internalsref{Staff} and
 channels into @internalsref{Voice} contexts.  Relative mode is used
@@ -87,20 +95,19 @@ for pitches, durations are only written when necessary.
 It is possible to record a MIDI file using a digital keyboard, and
 then convert it to @file{.ly}. However, human players are not
 rhythmically exact enough to make a MIDI to LY conversion trivial.
-midi2ly tries to compensate for these timing errors, but is not very
-good at this. It is therefore not recommended to use midi2ly for
+When invoked with quantizing (@code{-s} and @code{-d} options) midi2ly
+tries to compensate for these timing errors, but is not very good at
+this. It is therefore not recommended to use midi2ly for
 human-generated midi files.
 
-Hackers who know about signal processing are invited to write a more
-robust midi2ly.  midi2ly is written in Python, using a module written in
-C to parse the MIDI files.
 
-It is invoked as follows:
+It is invoked from the command-line as follows,
 @example
-        midi2ly [@var{option}]@dots{} @var{midi-file}
+midi2ly [@var{option}]@dots{} @var{midi-file}
 @end example
 
-The following options are supported by midi2ly:
+
+The following options are supported by midi2ly.
 
 @table @code
 @item -a, --absolute-pitches
@@ -133,16 +140,9 @@ The following options are supported by midi2ly:
 
 @refbugs
 
-
-Quantizing start-times and durations should be recommended. 
-This relates to the notes regarding the transcription of a MIDI 
-recording of a performance. I realize it can be done via the utility, 
-but a sequencer gives better visual feedback.
-
-Overlapping notes in an arpeggio will not be correctly 
-rendered. The first note will be read and the others will be ignored. 
-Set them all to a single duration and add phrase markings or pedal 
-indicators.
+Overlapping notes in an arpeggio will not be correctly rendered. The
+first note will be read and the others will be ignored.  Set them all
+to a single duration and add phrase markings or pedal indicators.
 
 
 @node Invoking etf2ly
@@ -157,7 +157,7 @@ ETF (Enigma Transport Format) is a format used by Coda Music
 Technology's Finale product. etf2ly will convert part of an ETF
 file to a ready-to-use LilyPond file.
 
-It is invoked as follows:
+It is invoked from the command-line as follows.
 @example
         etf2ly [@var{option}]@dots{} @var{etf-file}
 @end example
@@ -175,8 +175,8 @@ version information
 
 @refbugs
 
-The list of articulation scripts is incomplete.  Empty measures confuse
-etf2ly. Sequences of grace notes are ended improperly sometimes. 
+The list of articulation scripts is incomplete.  Empty measures
+confuse etf2ly. Sequences of grace notes are ended improperly.
 
 
 @node Invoking abc2ly
@@ -237,40 +237,6 @@ not.
 
 abc2ly ignores the ABC beaming.
 
-@node Invoking musedata2ly
-@section Invoking musedata2ly
-
-@cindex MuseData
-@cindex CCARH
-
-@uref{http://www.musedata.org/,MuseData} is an electronic library of
-classical music scores, comprising at the time of writing about 800
-composition dating from 1700 to 1825.  The music is encoded in
-so-called MuseData format.  musedata2ly converts a set of MuseData
-files to one .ly file, and will include a @code{\header} field if a
-@file{.ref} file is supplied. It is invoked as follows:
-
-@example
-        musedata2ly [@var{option}]@dots{} @var{musedata-files}
-@end example
-
-The following options are supported by musedata2ly:
-
-@table @code
-@item   -h,--help
-print help
-@item  -o,--output=@var{file}
-set output filename to @var{file}
-@item  -v,--version
-version information
-@item  -r,--ref=@var{reffile}
- read background information from ref-file
-@var{reffile}
-@end table
-
-@refbugs
-
-@file{musedata2ly} converts only a small subset of MuseData. 
 
 @node Invoking mup2ly
 @section Invoking mup2ly
@@ -283,6 +249,7 @@ format. It is invoked as follows:
 @cindex Mup
 @cindex Arkkra
 
+It is invoked from the command-line as follows.
 @example
         mup2ly [@var{option}]@dots{} @var{mup-file}
 @end example
@@ -313,4 +280,21 @@ Only plain notes (pitches, durations), voices, and staves are
 converted.
 
 
+@node Other formats
+@section Other formats
+
+LilyPond itself does not come with support for other formats, but
+there are also external tools that generate LilyPond files.
+
+These tools include
+http://denemo.sourceforge.net/
 
+@itemize @bullet
+@item @uref{http://www.nongnu.org/xml2ly/, xml2ly}, that imports
+@uref{http://www.musicxml.com/,MusicXML}
+@item
+@uref{http://rnvs.informatik.tu-chemnitz.de/~jan/noteedit/noteedit.html,NoteEdit}
+which imports MusicXML
+@item @uref{http://www.all-day-breakfast.com/rosegarden/,Rosegarden},
+which imports MIDI
+@end itemize