JcfFormat - hyvart/Unjammit GitHub Wiki
In short, a JCF archive is a GUID-named ZIP file containing a Jammit song's audio, score and metadata in a single GUID-named directory.
It holds tracks for an isolated instrument (one or more), and the complementing instruments (band).
E60AE659-D23C-4410-9B48-D9807DC04E53.jcf/
├── D9A3376A-2607-4FCA-9F70-8B37E242C6DE_anlx
├── D9A3376A-2607-4FCA-9F70-8B37E242C6DE_jcfx
├── 91853D95-0056-4A04-AF74-49612D560087_anlx
├── 91853D95-0056-4A04-AF74-49612D560087_jcfn_00
├── 91853D95-0056-4A04-AF74-49612D560087_jcfn_01
├── 91853D95-0056-4A04-AF74-49612D560087_jcfn_02
├── 91853D95-0056-4A04-AF74-49612D560087_jcfn_03
├── 91853D95-0056-4A04-AF74-49612D560087_jcfn_04
├── 91853D95-0056-4A04-AF74-49612D560087_jcfx
├── beats.plist
├── cover.jpg
├── ghost.plist
├── info.plist
├── music.waveform
├── nowline.nodes
├── patches.plist
├── sections.plist
├── tracks.plist
└── user.plist
For each GUID-prefixed file, such GUID relates it to a particular track (instrument or band).
AIFF-C encoded lossless audio track.
PNG image files representing the score (jcfn
) or tablature (jcft
) transcriptions for the instrument part.
The files are meant to be displayed as a single continuous score.
Each image's dimensions are 724 × 1024
(181 x 256
proportion).
unknown
Apple Property List containing the main song metadata:
- Artist
- Album
- Title
- Instrument
- Genre
- SKU
- Skill Level
- Beats Per Minute
- Copyright Year
- Count-in Beats
- Publisher
- Version
- Author
- Affiliate ?
- Courtesy Of
- Is Demo
- Is Explicit
- Slowdown factor
Contains the coordinates for each note or chord matching the score images for the instrument tracks. The metronome click track is generated from this file.
Pretty self-descriptive.
unknown
unknown
unknown
unknown
Song parts to allow direct browsing by the Jammit-compatible player.
Metadata for each of the tracks in the JCF archive.
Track class name
Class name | Description |
---|---|
JMFileTrack |
Audio Track |
JMClickTrack |
Generated during playback |
JMInputTrack |
Represents the user input/record track |
JMEmptyTrack |
unknown |
GUID track identifier
Track instrument display name
Appears only in file tracks.
Height of each staff system.
Appears only in file tracks.
Staff system offset base.
Determines the score cursor vertical position by:
offset(beat index) = ScoreSystemInterval * row(Nodesbeat index)
unknown