-
Notifications
You must be signed in to change notification settings - Fork 60
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
init_debugger_audio: DirectMusic not natively supported #7
Comments
NAudio which we use is capable to forge a Midi messages and is capable of supporting all important messages. Therefore it may be possible to actually convert SGT segments to real buffered Mdi event collections. That may require digging up the deprecated documentation of segments. Question is if it's really worth the probably huge amount of time to introduce DirectMusic converter EDIT: |
cool :) |
Got the music working without using DirectMusic by parsing SGT file into sequence and translating to MIDI messages. See example state at: |
some notes so I don't forget:
Tempo is double Thread:
Performance: |
segh::mTime
|
I wonder if creating a MIDI itself wouldn't be faster and more stable than handling the operations on my own. Currently I have to implement a thread with tempo, curves and all that stuff, but on the other hand I can create a .mid in memory and whole synth will do it on it's own 'their way' (which I'm more than sure is way faster). Afair NAudio has whole MIDI creation class. |
DMUS_IO_TIMESIGNATURE may be wrong. The structure sizeof=8, but the algorithm reads actually (sectionLength-4) / 2 where it should be divide by 8. I just got a lot of rubbish in tims and noticed this error. Finally we lack the formulas for converting the time signature events to MIDI like- worth to follow libdmusic code to find out how the tempo and timing is parsed |
TEMPO notes:
60 000 000 / BPM = mill-> |
OpenVIII now uses custom NAudio library with my extension: naudio/NAudio#499 |
DirectMusic segments are now played in X64 and linux. It's still WIP, I'm making new issue |
DirectX 6 DirectMusic not natively supported with Unix. What now?
EDIT: I talk about DirectMusic .DTS and .SGT files.
Currently I'm wrapping real DX6 component. Linux may probably require pre-converted OGG sounds.
EDIT:
*Pulse per note = tick per note; milliseconds = 60 000 / (BMP * PPQ). Now: 120 * 2000 ?
The text was updated successfully, but these errors were encountered: