Cryptograss:Rabbithole/Timeline YAML format
From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Jump to navigationJump to search
This article is a stub. You can help PickiPedia by expanding it.
A doc is a claim. This one was checked against: arthel @ 6a66541 (main), src/data/songs_and_tunes/august.yaml, and src/sites/justinholmes.com/js/rabbithole_player.js lines 951–1011 (section resolution), ~1030 (instrumentChanges), 1804 (getMusicianStatus).[unverified]
Where it lives
Under rabbithole: in a song's src/data/songs_and_tunes/<song>.yaml in the arthel repo, or in a Release:<CID>/Metadata page when charted in the timeline editor.[unverified]
Structure
rabbithole.timelineis a map of marker keys → marker bodies.[unverified]- Marker keys are either absolute seconds from track start (
0,7.2,40) orsectionNlabels (section1…section10).[unverified] sectionNentries are laid out sequentially using the song-levelstandardSectionLength(e.g.13.65) unless that section defines its ownlength.[unverified]- Inside a section, numeric keys are relative offsets from that section's start; the player converts them to absolute times (rabbithole_player.js:1003).[unverified]
Marker fields
musicians— map of musician name →in/out. Special keybandmeans everyone. State carries forward until changed; default isoutuntil first declared (getMusicianStatus, rabbithole_player.js:1804).[unverified]solo— musician name (that person solos), orfalseto end a solo.[unverified]pickup— musician name; a brief entrance just before a section starts.[unverified]part— label likeintro,A,B,C,D.[unverified]instrumentChanges— map of musician → instrument string. Plain overwrite of that musician's instrument card (rabbithole_player.js ~1030). Use canonical ensemble spellings (e.g.six-whistle, nottin whistle) so instrument lookups match — see the ensemble arrays in arthel for the canonical list.[unverified]flourish— musician name; optionalflourishDuration,flourishPulseSpeed,flourishIntensity,flourishColor.[unverified]
Example (excerpt from August)
<syntaxhighlight lang="yaml"> rabbithole:
audioFile: "/audio/August.flac"
duration: 180
standardSectionLength: 13.65
timeline:
0:
musicians:
"Justin Holmes": "in"
"Kyle Tuttle": "out"
solo: "Justin Holmes"
part: "intro"
7.2:
musicians:
"Maddie Denton": "in"
pickup: "Maddie Denton"
8.3:
musicians:
"band": "in" # shortcut for everyone in
solo: "Maddie Denton"
part: "A"
section1:
solo: "Justin Holmes"
part: "A"
instrumentChanges:
"Justin Holmes": "six-whistle"
section8:
solo: "Justin Holmes"
part: "B"
123:
flourish: "Gaven Largent"
flourishDuration: 2.8
</syntaxhighlight>[unverified]
Gotchas
- The editor's Save button has no PickiPedia login cookies across the proxy — use Copy YAML, then paste into the
Release:<CID>/Metadatapage.[unverified] - Write only what changes: musician state carries forward, so a section only needs deltas, not a re-declaration of everyone.[unverified]
- Numeric keys inside a section are relative; numeric keys at the top level of
timelineare absolute seconds. Mixing them up is the most common charting error.[unverified]