Language packages
Nội dung này hiện chưa có sẵn bằng ngôn ngữ của bạn.
A language package supplies the two operations that convert a vocal score into renderable language material:
| Operation | Purpose |
|---|---|
plan |
Convert the authored track into a phoneme plan. |
finalize |
Apply timing edits and return the engine score. |
Declare the package as role = "language" in plugin.toml; do not set a
hook stage for that role. Multiple language packages may be enabled together.
At render time, Amadeus resolves each voice’s selected language to the first
enabled package, in manifest order, that advertises support for that language.
Language packages should preserve stable phone identities when applying user timing edits, so edits remain associated with the intended phones after the plan is rebuilt. Treat lyric planning, manual pronunciation overrides, slurs, and timing corrections as authored musical data rather than incidental text conversion.
Observable contract
Section titled “Observable contract”| Condition | Operation | Required result |
|---|---|---|
| Lyrics, notes, overrides, or slurs change. | plan |
Return a valid phoneme plan whose identities remain stable for unchanged material. |
| Timing Nudges change. | finalize |
Apply the edits to their identified phones and return a renderable score. |
| The package cannot support the requested language or material. | Either operation | Return a user-readable diagnostic or supported failure result. |
Use a separate post-pitch member when language-specific pitch shaping is needed. See Post-pitch hooks and the Plugin API.