Previous: Database Configuration Files, Up: Configuration Files


6.3 Orchestra Definition Files

This file don't exist in a fixed location. It specifies groups or combinations of instruments and techniques (“orchestras”) for sporch and libsporch.so. It is flexible enough to indicate alternate choices between instruments and techniques as well as to control selections from the ensemble as a whole or groups within the ensemble.

A top level combination or ensemble of instruments in this configuration file is called an orchestra. An orchestra contains a hierarchical organization of sections and instruments. The orch definition must appear at the top level of the file while sec and inst definitions are nested inside of it.

orch
The orch keyword is followed by a pair of braces (‘{ }’) that must contain a name for the orchestra and either sec or inst definitions.
name
(string) This is a unique case-insensitive name for the orchestra, section or instrument. The orchestra name is mandatory—section and instrument names are optional.
min
(integer, default = ‘0’) This is the minimum number of matches allowed for this section or instrument. Use this to force sporch or libsporch.so to choose at least a certain number of matches. This only applies to the current orch/sec/inst and not to any subsections or instruments nested inside of it.
max
(integer, default = none) This is the maximum number of matches allowed for this section or instrument. Use this to place a limit on the number of matches. This only applies to the current orch/sec/inst and not to any subsections or instruments nested inside of it. Not setting this value implies a limitless number of matches.
cons
(‘global’, ‘inst’ or ‘none’, default = ‘none’) This specifies how sporch and libsporch.so choose instrument spectra for matching. ‘global’ means that all instruments should be from the same collection (if possible). ‘inst’ means that pitches and dynamic levels that belong to one instrument or technique should be consistent with respect to collection and model, but that instrument spectra from different collections may be different from instrument to instrument. This option is only available in the to level orch definition.

If no collections or models are explicitly specified with colls, then libsporch.so chooses the best ones based on the user pref setting (in the conf files) and otherwise the “smoothness” of spectra from pitch to pitch and dynamic level to dynamic level.

colls
(list of strings) This is a list of collections (specified by name) to be used for this section or instrument. sporch and libsporch.so use instrument spectra that belong only to the collections in this list.
sec
A section is a smaller group of instruments inside of an ‘orch’ definition. The sec keyword is followed by a pair of braces as in the orch definition. Sections can optionally have names and must contain more nested sec or inst definitions.
name
min
max
colls
inst
An instrument definition can occur inside of a top level orch or sec definition. The inst keyword is followed by a pair of braces containing a mandatory instrument id (referring to the instrument stored in the database) and an technique id.
name
inst
(string) Identifies the database instrument (the ID in the insts file) that this orchestra instrument refers to.
tech
(string) Identifies a technique (not specifying this tells sporch and libsporch.so to use the default technique for the instrument given in inst)
min
max
colls
models
(list of strings) This is a list of models (specified by name) to be used for this instrument. sporch and libsporch.so choose instrument spectra that belong only to the models in this list. if cons is set to ‘inst’, then one model is chosen for all pitches and dynamic levels. Otherwise, analyses from the specified models may be mixed together (according to whatever selections provide the smoothest connection from pitch to pitch and dynamic level to dynamic level).