Difference between revisions of "OpenTasks/Audio/XMIDI Parser"

From ScummVM :: Wiki
Jump to navigation Jump to search
m (remove link to non-existent Accolade MIDI Parser task)
(Close XParser as requested by LordHoto)
 
Line 1: Line 1:
{{Infobox_OpenTasks|
{{Infobox_ClosedTasks|
taskname=XMIDI Parser|
taskname=XMIDI Parser|
gsocworkload=50%|
gsocworkload=50%|
techcontact=The ScummVM Team|
techcontact=The ScummVM Team|
subsystem=Audio|
subsystem=Audio|
taskstatus=Closed by [[User:LordHoto|LordHoto]]|
}}
}}



Latest revision as of 09:33, 9 March 2012

Closed Task
Task Name XMIDI Parser
Technical Contact(s) The ScummVM Team
Subsystem Audio
Status Closed by LordHoto

Background:

Several of our games make use of the XMIDI format. We already have a parser for it (see sound/midiparser_xmidi.cpp), which was based on code from the Exult project, but it is incomplete.

The Task:

Specifically, we require support for XMIDI_CONTROLLER_FOR_LOOP and XMIDI_CONTROLLER_NEXT_BREAK. There are many more XMIDI controllers, however, and ideally support for all of them would be great. Some references:

  • The XMIDI code from the Exult project (see Exult's audio/midi_drivers/XMidiSequence.cpp) could be used as a reference again.
  • In addition, Pentagram has XMidi code based on the Exult code, but may be cleaner (see here).
  • Another good reference for this task is the AIL library which has been recently open-sourced by its author. This is in fact where XMIDI comes from, and it even contains specs. To find them, unzip AIL2.ZIP; in there you find A214_D2.ZIP, which when unzipped contains a directory DOC, which in turn contains ASCIIDOC.ZIP, which then contains XMIDI.TXT and some other files which might be of use (e.g. NOTES.TXT).