Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for multiple tempo changes (automations) in one masterbar. #1207

Closed
Danielku15 opened this issue Jun 30, 2023 · 1 comment
Closed
Assignees
Labels
area-core Related to some core parts of alphaTab area-file-formats Related to supported file formats area-player Related to the audio playback engine. area-rendering Everything related to the rendering platform-all Affects all platforms state-accepted This is a valid topic to work on.
Milestone

Comments

@Danielku15
Copy link
Member

Danielku15 commented Jun 30, 2023

alphaTab currently assumes a single tempo change per master bar but this is not correct. Guitar Pro and many other formats can have multiple tempo changes (and other automations) within a single bar.

We currently already read the automations correctly into the beats. but for tempo automations which are having an impact on master bar level we only treat one change.

Related code places:
https://github.com/CoderLine/alphaTab/blob/develop/src/importer/Gp3To5Importer.ts#L867 (GP3-5 importer)
https://github.com/CoderLine/alphaTab/blob/develop/src/importer/GpifParser.ts#L2328 (Gp6-8 importer)
https://github.com/CoderLine/alphaTab/blob/develop/src/importer/AlphaTexImporter.ts#L1889 (alphaTex importer)
https://github.com/CoderLine/alphaTab/blob/develop/src/model/MasterBar.ts#L111 (data model)
https://github.com/CoderLine/alphaTab/blob/develop/src/midi/MidiFileGenerator.ts#L187 (midi generation)
https://github.com/CoderLine/alphaTab/blob/develop/src/rendering/effects/TempoEffectInfo.ts (rendering)
https://github.com/CoderLine/alphaTab/blob/develop/src/midi/MidiTickLookup.ts#L201 (midi tick)

This change will have significant impact on certain duration calculations.

@Danielku15 Danielku15 added 💡 type-feature area-file-formats Related to supported file formats area-rendering Everything related to the rendering state-accepted This is a valid topic to work on. area-player Related to the audio playback engine. platform-all Affects all platforms area-core Related to some core parts of alphaTab labels Jun 30, 2023
@Danielku15 Danielku15 self-assigned this May 14, 2024
@Danielku15 Danielku15 moved this to Candidate in alphaTab 1.4-1.x May 14, 2024
@Danielku15 Danielku15 moved this from Candidate to Todo in alphaTab 1.4-1.x May 26, 2024
@Danielku15
Copy link
Member Author

Duplicate of #815

@Danielku15 Danielku15 marked this as a duplicate of #815 May 26, 2024
@Danielku15 Danielku15 closed this as not planned Won't fix, can't repro, duplicate, stale May 26, 2024
@github-project-automation github-project-automation bot moved this from Todo to Done in alphaTab 1.4-1.x May 26, 2024
@Danielku15 Danielku15 added this to the 1.4.0 milestone Feb 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-core Related to some core parts of alphaTab area-file-formats Related to supported file formats area-player Related to the audio playback engine. area-rendering Everything related to the rendering platform-all Affects all platforms state-accepted This is a valid topic to work on.
Projects
Status: Done
Status: No status
Development

No branches or pull requests

1 participant