|
From: | Jeremiah Benham |
Subject: | Re: [Denemo-devel] Windows git snapshot |
Date: | Fri, 20 Jul 2012 09:03:48 -0500 |
User-agent: | Mozilla/5.0 (X11; Linux i686; rv:13.0) Gecko/20120615 Thunderbird/13.0.1 |
On 07/19/2012 12:35 PM, Richard Shann
wrote:
On Thu, 2012-07-19 at 15:34 +0100, Richard Shann wrote:Looking at the portmidi site it seems that they only build for windows using Microsoft's compiler. It might be simpler to revert to our old code for MIDI in on windows - I don't recall how it worked, or why,I just looked through the 0.9.2 code and I see that we used the fluidsynth library to get MIDI-in: int fluid_start_midi_in(void) and so on in fluid.c However, it wouldn't be just a matter of re-connecting something disconnected, it would be a case of changing the callback (that handles a midi in event) to do putting the event in the midi in queue. Did you write that code originally? I think you wrote it. I may be able to create a makefile out of the gub/specs/portmidi.py if you think it is worth the effort. Here is the response I got from the portmidi mailing list: On 7/17/12 9:56 AM, Jeremiah Benham wrote: On 07/13/2012 06:33 PM, Roger Dannenberg wrote:I'm guessing you are linking with pmlinuxalsa.c. Since Windows doesn't have ALSA, anything that mentions ALSA should be removed. Sorry, I responded earlier without reading the files. make.bat is in the pm_java directory and is used to build PmDefaults, as described in the README.txt file in the same directory. You should probably have PmDefaults, but you can download a pre-built version and installer. pm_common/portmidi-static.vcproj is in XML. I found the following in it. This looks like the set of files you should link into your application. <Files> <Filter Name="Source Files" Filter=""> <File RelativePath="..\pm_win\pmwin.c"> </File> <File RelativePath="..\pm_win\pmwinmm.c"> </File> <File RelativePath="..\porttime\ptwinmm.c"> </File> <File RelativePath="..\pm_common\pmutil.c"> </File> <File RelativePath="..\pm_common\portmidi.c"> </File> </Filter> </Files> I read through the make.bat and it seems that it is going to create some .class files. I am not sure how to statically link my application against this. I see in the pm_win directory there is a pmwin.c, pmwinmm.c, and a pmwinmm.h. Can I build the library using only these files somehow?...Or should I comment out the alsa code? I am guessing that will not work in windows though and there is probably some specific windows related code in the pmwin.c and pmwinmm.c.Right, the windows-specific code is in pm_win. pm_common has the shared code, and you can see in pminternal.h how system-specific routines are called through function pointers.
Jeremiah Richard |
[Prev in Thread] | Current Thread | [Next in Thread] |