Avid Sibelius 3 User's Manual

Sound sets in Sibelius 3

For advanced users only!
Sibelius 3 includes a sound set editor within the main application (see set editor should fulfill most user needs. This document may be useful to users who need to do batch processing on sound set files, or who need to generate sound sets automatically. You can also assign any patch to more than one group if you edit a sound set file directly – the sound set editor in Sibelius 3 will not let you do this (see below for details).
Before attempting to create your own sound set, it is worth checking if one is already available: see the online Help Center at

Disclaimer

Sound sets are complex files and are not designed to be user-editable. Using a sound set with incorrect syntax may cause your copy of Sibelius to behave unpredictably or even crash. Sibelius Software accepts no responsibility for any loss of data or other problems experienced as a result of editing the supplied sound sets or creating new ones. This document is provided “as is,” and no warranty, implied or otherwise, covers the information contained within.
Please also note that we do not offer technical support on the editing or creation of sound set files.

Filenames

The filename of a sound set file is insignificant (i.e. it is not shown in the Play > Devices dialog), but we recommend that it should be fairly descriptive. It should also be 31 characters or less (including the .set file extension) to ensure compatibility with all file systems.

File format

In Sibelius 3 sound set files can either be in a text or binary format. The binary format is more compact and much quicker to load. All the sounds sets installed with Sibelius are in the binary format. Only the text format is described in this document. To convert from text to binary format you can use the sound set editor within Sibelius (see the Sibelius 3 User Guide for details).
Edit Sound Sets in the Sibelius 3 User Guide for details). The sound

Example sound set

In order to understand this document it would be good to look at an example text-format sound set file. You can create such a file by doing the following:
Run Sibelius 3
Choose Play > Edit Sound Sets
Select General MIDI and click New
In the Device tab enter the name you want (e.g. “Test Example”).
In the same tab, switch on Save as text near the bottom.
Click OK and quit Sibelius.
The example file will be in C:\Program Files\Sibelius Software\Sibelius 3\Sounds and its filename will be similar to the
name you chose (e.g.
If you open this file in any text editor you should see a text file with curly brace { and the word FileVersion on the following line.

Sound set syntax

The sound set starts with an open brace { and ends with a closing brace }.
The body of the sound set contains the following fields within the opening and closing braces as a series of ‘tree nodes’, in this order:

MIDIDevice

Syntax: MIDIDevice "GM (General MIDI)"
TestExample.set).
The name of the device, e.g. ‘Roland SC8820’.
If you intend your sound set to be usable on both Mac and Windows, this must be the exact name of the device as returned by FreeMIDI. If OMS uses a different name, then you will need to create a separate copy of the file with the OMS name substituted here (so that running under OMS will load this file).
2

FileVersion

Syntax: FileVersion "0020000"
Include this line and leave it unchanged. It does not represent the version number of the particular file on which you are working, but rather the version of the syntax used by the file, i.e. the value 0020000 corresponds with Sibelius 3, but this may change in future versions of Sibelius if the sound set format changes. (Check the sound set files supplied with future versions of Sibelius to determine if this version number has been increased.)
The version number is made of 2 parts. The upper part (which is a multiple of 10000) is the major part. The lower part (which is the remainder if you divide the whole number by 10000) is the minor part. This document describes major version 2 minor version 0, or 2.0. If a sound set for a future version of Sibelius changes the minor part only (e.g. from 2.0 to 2.1) then the current version of Sibelius will still be able to open it. If it changes the major version however (e.g. from 2.0 to 3.0) then the current version of Sibelius won’t be able to open it. Future versions of Sibelius will always be able to open current versions of the sound set format (so Sibelius 3 will be able to open Sibelius 2 sound sets, even though their major version number is 1). So summarize, minor version changes are downwardly compatible, major version changes are not.

Header

Syntax: Header
{ DefaultDevice "True" ProgramsCountFrom0 "False" Sensitivity "5" KontaktSet "False" AddOn "False" }
DefaultDevice – this should always be set to False, unless it’s the General MIDI.set sound set file. Only one sound set file in the Sounds folder can have this parameter set to True; this determines which sound set is selected by default in Sibelius’s Play > Devices dialog.
ProgramsCountFrom0 – this value describes whether the program numbers in the sounds file are listed relative to 0 or 1. The values displayed in the Mixer window in Sibelius itself are relative to 0 or 1 depending on the setting in the Mixer’s Display dialog.
Sensitivity – a value from 1–10 inclusive which specifies a velocity curve. Each time a NoteOn message goes through a device, its velocity is mapped through this curve. Curve 5 leaves velocities unchanged. Velocity curve 1 expands velocities and curve 10 compresses them. See Appendix C for details of each velocity curve.
KontaktSet – True if this sound set is used by the Native Instruments Kontakt Player which is shipped with Sibelius. This should be set to “False” for all but the Kontakt sound sets.
AddOn - True if this is an “add-on” set. If a sound set is not an add-on sound set then it must contain all the instruments in the listed in Appendix B and Appendix D within the BestSoundsForInstruments section (see below). An add-on sound set need only contain a subset of Appendix B or Appendix D.

Controllers

Syntax: Controllers
{ Reverb "91" Pan "10" SustainPedal "64" SustainOn "127" SustainOff "0" }
You should enter the above list of MIDI controllers and their corresponding controller numbers. The names must be identical to those listed above (from the General MIDI.set list) – no other controllers will be recognized by Sibelius (although including them won’t harm its execution). The numbers should usually also be the same, as e.g. the sustain pedal is MIDI controller 64 in practically every MIDI device. Note that SustainOn and SustainOff are not MIDI controller numbers, but rather the data byte that should be applied to the MIDI controller declared in SustainPedal to achieve the pedal-down and pedal-up effects.
3

Programs

Syntax: see below.
This contains a list of all the patches (banks and program numbers) and their names. The list can be in any order, but you might find it useful to keep it in program number order as this will simplify the construction of the Groups and BestSoundsForInstruments sections (see below). Each entry in the Programs list has the following structure.
msb/lsb/pnpatch name” { ChannelMask mask” NumStr “num string” NoteNames { nnnote name” } }
Words written in italics are variables, as follows:
• msb is MIDI controller 0 (or bank MSB) value. It can either be empty (meaning don’t send MIDI controller 0) or otherwise it must be in the range 0-127 inclusive.
Note that if empty, you should still include the slash (so you may get e.g. /23/34 “Name”). Note also that 0/ is not the same
as /; if 0 is present, Sibelius will send a bank change to MSB 0; if no number is present, Sibelius will not send a bank change.
• lsb means MIDI controller 32 (or bank LSB), and the same conditions apply as for msb.
Again, if empty you should still include the slash (so you may get e.g. //34 “Name”).
• pn is the program number. It too must be in the range 0-127 inclusive (or 1-128 if ProgramsCountFrom0 is False) but it
cannot be empty.
• patch name can be any text at all – it is required. This is the name that appears in the list of sounds in the Mixer.
• mask is a 16-bit mask, and can be any number between 0 and 65535. If you were to convert it into a binary number, each bit in that
number would correspond to a MIDI channel. 1 means this sound can go on this channel, and 0 means it can’t. So, say a patch could only go on channels 1, 4 and 12. Since we count MIDI channels from 0, this becomes 0, 3 and 11. With the least significant bit being the lowest channel number, this can be represented by the binary number 100000001001 and in decimal this is 2057. So for this patch, the ChannelMask field would take the value 2057. If you leave out the entire ChannelMask line, Sibelius assumes that the mask value is 65535 (i.e. the patch can be set on any channel). The three most common mask values are 65023 (all channels except channel 10), 512 (channel 10) and 65535 (all channels).
• num string is not currently used by Sibelius but is created by FreeMIDI and OMS. If you’re creating sounds files by hand from scratch, don’t bother with these fields, but if you’re starting out with a FreeMIDI sounds file then you might as well leave the fields there – they do no harm.
The NoteNames list is optional. It contains the mapping from MIDI key number (or note number) and a name for that key. This is used by e.g. drum set staves, where Sibelius needs to map a MIDI key value to a note name such as “Tambourine”.
• nn is the MIDI note number. It has to be in the range 0-127 inclusive.
• note name is the corresponding note name. It is essential that note names remain device-independent. For example, say MIDI device
A has a drum set with a triangle sound. That sound might be called “Triangle 1”. It is essential that another device MIDI device B, if it too has a triangle sounds on a drum set, that the sounds there is called “Triangle 1” too. If you were to call it “Triangle” or “triangle 1” or “Trngle” then Sibelius wouldn’t know that it was the same sound. What this amounts to is that we need to agree on a common set of drum note names for all devices. A complete list is in Appendix A, which also specifies the General MIDI note numbers for each sound.

Groups

Syntax: see below.
This is used to organise the sounds into groups that will appear when accessing the Sound menu in the Mixer window (when you have the Display sounds by type option switched on in the Mixer’s Display dialog). Each entry consists of a list of indexes into the Programs list. These indexes are relative to 0 (so the 3rd entry in the Programs list will be ‘2’ in the Groups list). One program can appear in several groups if required. Note: this is something that cannot be done in the Sound Set Editor in Sibelius – using the Sound Set Editor you cannot
place any patch in more than one group – you can if you edit the sound set “by hand” using the information in this document.
4
The Groups section consists of a list of lists, e.g.
Groups { "Keyboards" { 22 1 2 } "Pitched Percussion" { 114 10 13 }
and so on. Each sub-list has a title enclosed in double quotes (e.g. "Pitched Percussion" above).
Note!
It is essential that a patch referred to in a Groups sub-list actually exists. For example, say you had 128 patches in the Programs list. If you put the number 140 in one of the Groups sub-lists then Sibelius may become unstable or crash while using this sound set. More precisely, if there are N entries in the Programs list, then the index numbers used in the Groups sub-lists must be in the range 0 to N-1 inclusive. Indices into the Programs list count from 0.
You may want to copy the Groups section from an existing sound set file (e.g. General MIDI.set) and remove the lists of indices in each sub-list as a basis for your own groups.

BestSoundsForInstruments

This section is used by Sibelius to work out which program number to use to correctly play back a particular staff. With a new sound set file you may need to press the Reset Sounds button to set each staff to use the correct program number. This section is also used when importing a MIDI file, so that Sibelius can determine which instrument is required on each staff according to the program numbers used in the MIDI file.
It is essential that this list contain every instrument included in Sibelius. You may want to copy this section from an existing sound set file (e.g. General MIDI.set) as a basis for your own sound set.
A complete list of instruments is in Appendix B. Note that the names in this list are internal; that is, they are not necessarily as they appear in Sibelius either in the Create Z Instruments dialog or as instrument names in the score. Some of the names include special ‘escape’ characters (such as \n\ and ~) which you should not remove, edit or change. These internal names should still be used even if your copy of Sibelius is a foreign-language version, rather than translated instrument names. As a result, sound set files are largely language-independent (apart from the names of the sounds themselves as they appear in the Mixer, which can be in any language).
Sibelius will reject any sound set file that lists any instruments that are not included in Sibelius and, conversely, it will also reject if there are instruments in Sibelius which aren’t listed here (the exception to this rule is specializations – see below).
The syntax is as follows:
BestSoundsForInstruments { "Bass Viol" { 43 49 } "Crotales" { 114 }
and so on. Under each instrument is a list of patch indices:
• This list of indices can be empty. If you don’t supply any indices, Sibelius will default to piano for this sound, or will not change the sound if it is a ‘specialization’.
5
• The first index in the list is used when creating an instrument in Sibelius. So for example, if you create “Violin I”, Sibelius will look up “Violin I” in the sounds file and use the first patch indexed under this name. The other patches indexed are used when mapping from bank/program numbers to instruments when reading MIDI files into Sibelius.
• The rules governing index ranges are exactly the same as for Groups.
• In order for Sibelius to be able to map keywords such as “pizz” and “mute” to patches in a device independent way, “instruments” are known internally by Sibelius which aren’t real instruments at all. Appendix D lists these “instruments”, which never show up in the Create Z Instruments dialog in Sibelius, and which represent sound effects such as pizzicato, tremolo etc. You will find these “instruments” at the end of the BestSoundsForInstruments section in the General MIDI.set file. These entries must exist in every sound set.
• You can also add in specializations in this section, e.g. “Mute:Trumpet”. Specializations are optional and should only exist if that particular MIDI device supports that sound.
The syntax for this is “sound-effect-instrument:real-instrument”. sound-effect-instrument has to be one of entries in Appendix D. real-
instrument has to be a ‘real’ instrument in Appendix B (e.g. ‘Violin 1’ or ‘Clarinet’). This is so that you can distinguish between, for instance, a muted trumpet and a muted trombone.
If Sibelius sees that you’ve got a keyword which maps to the Mute effect in the Trumpet staff, then it will look in the sound set file for
“Mute:Trumpet” and, if it finds it, will use it. Otherwise, it will use the “Mute” entry (which must exist).
For the sound effect “Solo” and “Tutti” you should make sure that specializations should come in pairs, e.g. if you have “Solo:Flute” you
must ensure you have “Tutti:Flute” otherwise Sibelius has no way of switching back and forth between the two. You’ll notice that most of these sound effects are not used in the General MIDI.set file (i.e. they’re empty) – that’s because those sounds don’t exist in the General MIDI sound map.
Loading...
+ 11 hidden pages