|
|||||||
![]() |
|
|
Thread Tools |
|
|
#1 |
|
DriverHeaven Junior Member
Join Date: Oct 2003
Location: France
Posts: 25
Rep Power: 0 ![]() |
Megafont source code in work
Hi,
Next to many discussions, I decided to try to update megafont and to keep it compatible with kx Project. I made a compile and have the next problem : when using the LoadPreset from sfman32.dll, an error code unknown is returned : 110. Does any of kx project developers have an idea about this error code ? Is there some special parameters that should be passed to LoadPreset ? Thank. |
|
|
|
|
|
#2 |
|
DriverHeaven Junior Member
Join Date: Jun 2003
Posts: 81
Rep Power: 0 ![]() |
In an old mirror of Megafont (still available) you'll see that some extra components are needed for build it. Maybe that's the problem.
http://www.geocities.com/lstnght2000/mf_download.htm "Brad Stowers' DFS TSystemTreeView and RX-Lib are needed (...)" the first I found here (but the link to the file is dead ):http://members.aye.net/cgi-bin/dfs_c...ts.cgi?systree the second here: http://sourceforge.net/projects/rxlib/ Good Luck |
|
|
|
|
|
|
|
DriverHeaven Junior Member
Join Date: Oct 2003
Location: France
Posts: 25
Rep Power: 0 ![]() |
Thank for this links.
But the project I try to update is only megafont, not the mf_tools. I made a copy of mf_tools with my re-compiled megafont and it works fine. Except that the LoadPreset function (of sfman32.dll) does not work ! Is there any tips ? Or should I implement other soundfont support ? Does the kx developers have any idea ? |
|
|
|
|
|
|
|
DriverHeaven Junior Member
Join Date: Oct 2003
Location: France
Posts: 25
Rep Power: 0 ![]() |
After some tests, the main problem with megafont seems to be that kx Drivers doesn't support load of preset but only load of banks.
I modified megafont and now I can load soundfonts with it but only complete banks, not only a part of a bank (preset). Is it a limitation of drivers ? I'm going to see if there are any solution with kx sdk. |
|
|
|
|
|
#5 |
|
kX Project Lead Programmer and Coordinator
Join Date: Dec 2002
Posts: 3,119
Rep Power: 75 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
there's no 'load_preset' option currently available
but there's a working version of "SFDEV_VIENNA_LOAD_PRESET" function (review 'undocumented' Vienna SDK for details -- http://kxdev.narod.ru) so, if you add a 'workaround' for the LoadPreset function, this will fix megafont incompatibility... (note that 'SFDEV_VIENNA_LOAD_PRESET' is highly limited at the moment) /E |
|
|
|
|
|
|
|
DriverHeaven Junior Member
Join Date: Oct 2003
Location: France
Posts: 25
Rep Power: 0 ![]() |
Thank for your answer.
I tried to use LoadPreset Vienna API but I don't know how to pass soundfont to message. Documentation says that I have to give a memory pointer. Should I load the soundfont file ? And can I load a soundfont preset at a specific bank and program number with this function ? Another solution I'm going to try is to save the preset I need at runtime to a temporary file and load it with the LoadBank function which is implemented. |
|
|
|
|
|
|
|
DriverHeaven Junior Member
Join Date: Oct 2003
Location: France
Posts: 25
Rep Power: 0 ![]() |
A short message just for telling readers about my "megafont conversion" project progress ...
I made a try to load presets by temporary soundfont bank ... it seems to work (I finally can play with some soundfonts loaded successfull by megafont) but there's many problems related to my method (create soundfont file with only the preset needed). Each time I change preset in a bank that I've already load, old presets are deleted and only the last preset stay in memory. I should add new presets of same bank in my temporary file and manage more than one temporary file. A temporary file per bank. Another problem is soundfont release. Megafont uses ClearLoadedPreset but this is not implemented. I made a quick update and now entire bank are deleted. There's work to do with this part too because when only a preset of a bank should be unloaded (automatic unload of megafont), all presets of bank are deleted ! That's all for now. |
|
|
|
|
|
#8 |
|
DriverHeaven Addict
Join Date: Sep 2003
Posts: 266
Rep Power: 0 ![]() |
Oh God, thank You for Mikol and his great idea to revive MegaFont project
Mikol I would help you if I only could. People, programmers - follow Mikol. PITmaster |
|
|
|
|
|
#9 |
|
DriverHeaven Junior Member
Join Date: Jan 2003
Location: The Netherlands
Posts: 68
Rep Power: 0 ![]() |
And programmers who are not able to help Mikol, but can program quite well: try to change the tool Eugene has given so we can test the soundfont implementation of kX and CT and eleminate the differences... untill now no one with enough programming skills has showed up :-(
|
|
|
|
|
|
|
|
DriverHeaven Junior Member
Join Date: Oct 2003
Location: France
Posts: 25
Rep Power: 0 ![]() |
Thank for your support !
My progress is now : when a bank or preset change is received, megafont manage temporary bank file (so maximum temporary files number can be 128) and ask to kx driver to load entire bank. This seems to be ok and works. My last problem now is with Cubase soundfont support. Patch and bank names are not received correctly ! Megafont seems to send them incorrectly. I didn't found any information about this and it's difficule to know where to find doc. See you soon ... |
|
|
|
|
|
#11 | |
|
DriverHeaven Junior Member
Join Date: Jun 2003
Posts: 81
Rep Power: 0 ![]() |
Quote:
The "mappings editor" can export it into several formats. There are for Cubase two options for exportation in .dev format (that I don't know if can be recognized in SX). |
|
|
|
|
|
|
|
|
DriverHeaven Junior Member
Join Date: Oct 2003
Location: France
Posts: 25
Rep Power: 0 ![]() |
Yes, I know that megafont can export instrument definition.
But on last versions, a new great function was added for soundfont device : automatic bank and patch names send. In fact, megafont reacts (via midi yoke or hubi's lb) as a soundfont device and send all mappings instrument definition to software which allows to access all sounds without having to prepare and export a mapping. This option is great and allow to win time ! But there are some mistake between what cubase is waiting for and what megafont send. But this is a known problem and I'm going to fix it (and add support for sx cubase version). |
|
|
|
|
|
|
|
DriverHeaven Junior Member
Join Date: Oct 2003
Location: France
Posts: 25
Rep Power: 0 ![]() |
|
|
|
|
|
|
#14 |
|
DriverHeaven Addict
Join Date: Sep 2003
Posts: 266
Rep Power: 0 ![]() |
Sorry doesn't work.
First, I think it's important, CL's sfman.dll v4.06.501 should be in system directory during installation of megafont last version 1.24.2. The another version of sfman file is installed with kX drivers. With yours files application starts but after turning on: Exception EAccessViolation dans le module MEGAFONT.EXE dans 0000461E Violation d'access a l'adresse 0040461E dans le module 'MEGAFONT.EXE'. Lecture de l'addresse 00BEFFF8. PITmaster |
|
|
|
![]() |
| Thread Tools | |
|
|