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

Implement support for Apogee Sound System loops #118

Open
Wohlstand opened this issue Jun 21, 2018 · 3 comments
Open

Implement support for Apogee Sound System loops #118

Wohlstand opened this issue Jun 21, 2018 · 3 comments
Assignees

Comments

@Wohlstand
Copy link
Owner

Apogee Sound System has support of loop points. While our current implementation which allows only single and infinite-only loop, Apogee Sound System can have loops with a specified count and having multiple loops in the same file!

A document EMIDIAPI.TXT taken from DukeNukem source code package from the AudioLib folder.

Event it doesn't supports nested loops, a nested loops at us are easily can be supported as we are doing preprocessing of entire MIDI data, we will don't do re-allocations to increase/decrease the stack of nested loops: we will scan full data for any possible loop related events and will allocate stack into the necessary size before we will begin a playback.

@Wohlstand Wohlstand self-assigned this Jun 21, 2018
@Interrupt
Copy link

Supporting the XMI loop points would be awesome as well, System Shock music seems to use these a bunch.

@Wohlstand
Copy link
Owner Author

Wohlstand commented Jul 9, 2018

The XMI loops are already implemented in recent time, the only EMIDI loops wasn't made, there are related to Duke Nukem 3D and related games.

@Wohlstand
Copy link
Owner Author

Related to Apogee loops: it was made some experiment, however, looks it needs to have the manual switch of this support due to conflict with different loop configs, and also, provide the ability for per-track loops that EMIDI wants to have.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Maybe later
Development

No branches or pull requests

2 participants