Repository navigation
fix(story): route a cue to the bus of its sheet's CRI categories - #34
Merged
Merged
Conversation
The volume options of the music, sound effects and voices reach a cue through the CRI categories its cue sheet puts it in. The player chose the bus from the category of the episode's sound row, so the voices of rows filed under Bgm (the linkstory episodes ADV 10579-10608) followed the music volume and its mute. A cue of cues.json can list its `categories`; the cue plays on the bus of the first of Bgm, Se and Voice among them, and on its row's bus without them. The row's category still decides which sounds a stop of a category and a BGM crossfade reach. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
On the story player, the music volume slider also turns down (and the music mute silences) the voices of the linkstory episodes ADV 10579–10608 (e.g.
?story=10579). Their-Soundrows file the voice cues under Bgm (_category0), andAudio.playchose the bus from the row's category.The volumes of the CRI categories reach a cue through the categories its cue sheet puts it in. The cue sheet
adv_voice_linkstory_raika_miku_10579puts all 38 cues inVoice/VoiceConfig, whatever their rows say. The row's_categorydecides which soundsStopAlland the BGM auto-crossfade reach.Change
cues.jsonentries may listcategories(the CRI category names of the cue);busOfpicks the first of Bgm, Se and Voice among them, else the row's category.Audio.playconnects the cue to that bus;info.categorystays the row's, so stops and crossfades behave as before.scripts/validate-data.mjschecks the field;docs/story-data-format.mdanddocs/story.mddescribe it.Data produced without
categoriesplays as before.Checks
npm test(673 tests, 0 fail),npm run lint,npm run typecheck,npm run contract:check.stopAll(Bgm), and ignores the music option volume.Supersedes #29.
🤖 Generated with Claude Code