[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: codercpp.gif (37 KB, 327x320)
37 KB GIF
MIDI for Construct Classic #2

We're trying to create a MIDI plugin for Construct Classic, a free game builder https://sourceforge.net/projects/construct/

As it turns out, it doesn't support the .mid format. Older versions before 0.98.3 and systems before Windows Vista supported it in the DirectSound.csx plugin.

The source code is available at https://github.com/aolko/construct/ but it doesn't include the DirectSound plugin. Perhaps it's been converted to
".\Plugins\XAudio2.csx" and ".\Plugins\Runtime\XAudio2.csx" which contains libraries for several formats.

Can anyone with C++ knowledge help? The forums say the project used Microsoft Visual Studio 2008.
If it can't play MIDI files directly, then maybe it can play MIDI files via hex commands.

***
One option shown in the video is launching MIDI files via playsmf.exe (https://github.com/MrBMueller/playsmf)
But this isn't very convenient and there's a delay.

I had to remove the audio track. Video with sound: https://limewire.com/d/hGxrO#NeoQFBl7Bx

***

What the plugin should be able to do:
- Play/loop/pause/stop/change track, load *.mid from resources or a file. Also, position and stop data. This is used as background music.
- MIDI playback using MIDI Hex Commands. Examples: NoteOn - 903C7F, NoteOff - 803C00. These are game sounds (SFX).
- Optionally use your own .sf2 sound bank from resources or a file (https://github.com/bradhowes/SF2Lib https://github.com/schellingb/TinySoundFont)

Alternatively, you don't need a full-fledged MIDI player to play MIDI files. You can convert MIDI files into a 2D array with a set of commands and save them as such.
>>
get fucked windows
>>
>>108640260
This requires a plugin.
>>
>>108640256
Sure. My rate is 100 USD/hour.
>>
File: creature.png (119 KB, 1920x1080)
119 KB PNG
>>
File: creature.png (216 KB, 1920x1080)
216 KB PNG
>>
>>108642336
How many hours can you do it in?
>>
>>108642633
Getting midi data from construct to audio output maybe 1-2 hours. The real time sink here is getting some shitty ancient C++ to compile. Honestly find an indian on fiverr and ask them to write a plugin that forwards midi data to fluidsynth. It will handle the soundfonts as well.
>>
>>108642944
>Fluidsynth
This solution is too cumbersome. Can't C++ work directly with DirectSound?
>>
>>108643079
DirectSound is deprecated, it's better to depend on something that is actively maintained and guaranteed to work in the future
>>
there's like a million open source midi players you can just rip off...



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.