Previous | Up | Home | Next
Chunks
in alphabetical order
Note - Use of Tags.
The "Tags" item listed under each chunk description contains a few suggestions for tags to be used in that context. It is not intended to restrict the the creative use of tags. Any tag is allowed to be placed on any chunk.
When the meaning of a particular tag is not specified for a particular chunk, it is the responsibility of the the writing program to use the tag in a meaningful way, and the reading program must do its best to interpret it.
Setup Section
Chunk Length Table CHUNK
- Location: Setup Section list
- The purpose of the chunk length table is to give programs a tool for adapting to changes in the fixed length part of the NIFF chunk structures. The chunk length table is a series of 8 byte Chunk Length Table Entries, each table entry composed of a chunk name and the offset of the first tag field for chunks of that type. There must be a table entry for each chunk type present in the file. Chunks appear in the table in alphabetical order.
- chunk name (FOURCC)
- offset of first tag (LONG)
- A 4 byte pointer to the first tag field to be found in chunks of this type. The pointer value is always the same as the length of the required part of the chunk. If the chunk has no required structure, the pointer value is zero. If no tags are allowed in the chunk, the pointer value is -1.
Default Values CHUNK
- Location: Setup Section list
- music font (FONTPTR)
- part name font (FONTPTR)
- Used as the default font for part name and abbreviation. See General Discussion of Part and Staff Names for details.
- lyric font (FONTPTR)
- chord symbol font (FONTPTR)
- measure number font (FONTPTR)
- rehearsal mark font (FONTPTR)
- tuplet grouping symbol (BYTE)
- See Tuplet Description tag for values.
- tuplet number style (BYTE)
- See Tuplet Description tag for values.
EPS Graphic CHUNK
- Location: Setup Section, Custom Graphics list
- One of the valid chunks appearing in the Custom Graphics list. A PostScript description of a graphic, in EPS (encapsulated PostScript) format.
Font Description CHUNK
- Location: Setup Section, Fonts list
- font name (STROFFSET)
- Offset into the string table of the font name.
- size (SHORT)
- space height (SHORT)
- Used only for music fonts. Font size, given as the vertical distance, in absolute units, between two adjacent staff lines of a staff on which the music font symbols would normally appear.
- where (SHORT)
- Where this font can be found.
- -1 = This font or a substitute is assumed to be known and available to the reading program.
- 0-32767. The index into the Custom Graphic list where the actual PostScript font can be found. This must point to a fnt1 or fnt3 chunk.
- style (BYTE)
- The following values are additive:
- 0=plain
- 1 = bold
- 2 = italic
- 4 = underscored
NIFF Information CHUNK
- Location: Setup Section list
- General information required to interpret values in the file.
- NIF Version (char[8])
- writing program type (SIGNEDBYTE)
- -1 = no value/other
- 1 = engraving program
- 2 = scanning program
- 3 = MIDI interpreter
- 4 = sequencer
- 5 = research program
- 6 = educational program
- standard units (SIGNEDBYTE)
- -1 = no absolute measurements in file
- 1 = inches
- 2 = centimeters
- 3 = points
- absolute units (SHORT)
- Number of absolute units per standard unit.
- -1 = no absolute measurements in file
- MIDI ticks per quarter (SHORT)
- MIDI ticks per quarter note, to be used in interpreting MIDI time values. Must be a positive number if MIDI time values are present in file. -1 indicates no MIDI timing information is present.
Part Description CHUNK
- Location: Setup Section, Parts list
- Tags: Lyric Verse Offset (one for each lyric line), Chord Symbols Offset, Guitar Grid Offset, Rehearsal Mark Offset, Figured Bass Offset.
- Part ID (SHORT)
- The Part ID, referred to on Data Section chunks associated with this part. Should be assigned sequentially starting with zero.
- name (STROFFSET)
- Name to be associated with the staff or staves displaying this part on the first page of the score. See General Discussion of Part and Staff Names for details about its use.
- abbreviation (STROFFSET)
- Name to be associated with the staff or staves displaying this part on all pages after the first page of the score. See General Discussion of Part and Staff Names for details about its use.
- number of staves (BYTE)
- Maximum number of simultaneous staves for this part. Used to calculate staff ID's referred to in the Setup Section Staff Groupings list. A value of zero is allowed only if the Staff Groupings list is omitted from the Setup Section.
- MIDI channel (SIGNEDBYTE)
- MIDI cable (SIGNEDBYTE)
- transpose (SIGNEDBYTE)
- Number of halfsteps to transpose this part during playback.
PostScript Type 1 Font CHUNK
- Location: Setup Section, Custom Graphics list
- One of the valid chunks appearing in the Custom Graphics list. Contains a complete PostScript type 1 font.
PostScript Type 3 Font CHUNK
- Location: Setup Section, Custom Graphics list
- One of the valid chunks appearing in the Custom Graphics list. Contains a complete PostScript type 3 font.
Staff Grouping CHUNK
- Location: Setup Section Staff Groupings list, or Data Section Staff Groupings list.
- Indicates some type of connection at the left end of a series of sequential staves in the score, such as vertical lines, braces or brackets. Staff groupings can be nested. When the same staff is included in more than one grouping, the grouping symbols are stored in the file in the order they are to be applied to the staff, from right to left, starting at the staff origin.
- grouping type (BYTE)
- 1 = vertical line at start of system
- 2 = brace at start of system
- 3 = bracket at start of system
- first staff (SHORT)
- 0-32767. Staff ID of first staff in grouping. See note below.
- last staff (SHORT)
- 0-32767. System Staff ID of last staff in grouping. See now below.
- N.B.: In a Data Section override Staff Grouping chunk, use the Staff ID's of the staves in the system to which the grouping applies, starting with zero for the first staff and increasing sequentially. In the Setup Section default Staff Groupings, Staff ID's of the default system are assigned as follows:
- A Staff ID is assigned to every staff of every part, using the maximum number of staves for each part. The ID numbers are assigned in increasing order starting with Part 0, Staff 0. Here is an example:
Part 0 has maximum number of staves = 3
Part 1 has maximum number of staves = 3
Part 2 has maximum number of staves = 1
Default System Staff ID Description
0 Part 0, Staff 0
1 Part 0, Staff 1
2 Part 0, Staff 2
3 Part 1, Staff 0
4 Part 1, Staff 1
5 Part 1, Staff 2
6 Part 2, Staff 0
String Table CHUNK
- Location: Setup Section list
- char[]
- Contains one or more character strings in RIFF ZSTR format. Each ZSTR is composed of a series of ASCII characters followed by a one byte NULL (0x00) terminator. The character strings are referenced throughout the file by STROFFSET values which represent the offset into the tabl. 0 offset points to the first character after the chunk length.
Previous | Up | Home | Next