Is there an existing issue for this?
I have read the contribution rules
AI authorship
Written by a human, no AI assistance
Current Behavior
When a song has anywhere more than 4 voices (e.g. typical in converted/exported MusicXML files), alphaTab simply writes them to the Guitar Pro file. But Guitar Pro has a strict limitation to 4 voices, anything beyond causes crashes. Also MuseScore crashes when opening such files.
Expected Behavior
alphaTab should write Guitar Pro files with minimal data loss and maximum compatibility.
Steps To Reproduce
- Open a MusicXML file or alphaTex with more than 4 distinctive voices in a staff (but always less than 4 voices filled in one bar)
- export it to a Guitar Pro file
- open the file in Guitar Pro or MuseScore
- experience the crash
Link to jsFiddle, CodePen, Project
No response
Version and Environment
Interaction to Next Paint (INP)
0 ms
Your local INP value of 0 ms is good.
INP interaction
keyboard
Learn more about local and field metrics
Interactions
Layout shifts
keyboard INP
body
0 ms
Next steps
Environment settings
Use the device toolbar and configure throttling to simulate real user environments and identify more performance issues.
CPU: No throttling
Network: No throttling
Disable network cache
Record
Ctrl + E
Record and reload
Ctrl + Shift + E
alphaTab.Environment.printEnvironmentInfo()
Logger.ts:24 [AlphaTab][VersionInfo] alphaTab 1.9.0
Logger.ts:24 [AlphaTab][VersionInfo] commit: e45a2153e94f68028e0ea0e66af7daf6b7715d78
Logger.ts:24 [AlphaTab][VersionInfo] build date: 2026-08-01T18:23:18.402Z
Logger.ts:24 [AlphaTab][VersionInfo] High DPI: 2.1500000953674316
Logger.ts:24 [AlphaTab][VersionInfo] Platform: BrowserModule
Logger.ts:24 [AlphaTab][VersionInfo] WebPack: false
Logger.ts:24 [AlphaTab][VersionInfo] Vite: false
Logger.ts:24 [AlphaTab][VersionInfo] Browser: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36
Logger.ts:24 [AlphaTab][VersionInfo] Window Size: 1778x952
Logger.ts:24 [AlphaTab][VersionInfo] Screen Size: 1920x1080
undefined
Platform
Web
Anything else?
If possible we should use the empty voice slots on a bar. even if overall in the file we have more than 4 voices, within one bar they are rare. by reusing the available voice slots, we can avoid data loss.
More than 4 voices is rare for properly written files, it is often a side effect of generated musicxml during export of files, or by some synthesized output (AI, or scripting means).
Reusing the existing slots should not cause problems that "wrong" voices are put together.
I think more than 2 voices is already very rare. but beyond 4 is rather fabricated or a technical artifact.
Is there an existing issue for this?
I have read the contribution rules
AI authorship
Written by a human, no AI assistance
Current Behavior
When a song has anywhere more than 4 voices (e.g. typical in converted/exported MusicXML files), alphaTab simply writes them to the Guitar Pro file. But Guitar Pro has a strict limitation to 4 voices, anything beyond causes crashes. Also MuseScore crashes when opening such files.
Expected Behavior
alphaTab should write Guitar Pro files with minimal data loss and maximum compatibility.
Steps To Reproduce
Link to jsFiddle, CodePen, Project
No response
Version and Environment
Platform
Web
Anything else?
If possible we should use the empty voice slots on a bar. even if overall in the file we have more than 4 voices, within one bar they are rare. by reusing the available voice slots, we can avoid data loss.
More than 4 voices is rare for properly written files, it is often a side effect of generated musicxml during export of files, or by some synthesized output (AI, or scripting means).
Reusing the existing slots should not cause problems that "wrong" voices are put together.
I think more than 2 voices is already very rare. but beyond 4 is rather fabricated or a technical artifact.