[CSOUND-DEV:4825] CS5 working (sort of) on MacOS 9
Date | 2004-06-16 20:08 |
From | Anthony Kozar |
Subject | [CSOUND-DEV:4825] CS5 working (sort of) on MacOS 9 |
I just managed to successfully render my first score with Csound 5 on MacOS 9! There were some anomalies and I had to perform a little gymnastics with the compiler and the debugger but I am very optimistic about this success :) I made quite a few minor changes to the sources in order to get them to compile. I was working with a CVS snapshot from April 29th though, so some of the issues may have already been resolved. I will do a CVS update and try again later. I had to disable RTAUDIO because of the lack of PortAudio support and I also removed dnoise and the MacRescale.c code in order to successfully compile. And I did not compile any of the opcodes that have been turned into plugins. But these should be temporary problems. I also added a #else case to dl_opcodes for platforms without shared library support. This code I will probably submit eventually (along with code that _does_ implement plugin support on the Mac). libsndfile seems to be working just fine by the way. I am not using the API yet. The biggest problem while running Csound 5 was that Perf (the Mac GUI) calls mmalloc() to allocate space for the argv arguments before calling csoundMain(). Then memRESET() is called before rendering and deallocates the space, trashing the strings in argv. I temporarily got around this by skipping over the call to memRESET() in the debugger and then everything else seemed to work and sounds were produced :) The output listing was different than I expected. Is this correct or are there messages missing ?? Using STR# 128 Csound version 5.00 (float samples) Jun 16 2004 libsndfile-1.0.5 instr 201 instr 202 instr 203 Calling sread_init Csound version 5.00 (float samples) Jun 16 2004 AIFF Compile returns 0 musmon returns 0 B 0.000 .. 1.000 T 1.000 TT 1.000 M: 7500.0 B 1.000 .. 2.000 T 2.000 TT 2.000 M: 7500.0 B 2.000 .. 3.000 T 3.000 TT 3.000 M: 7500.0 B 3.000 .. 3.500 T 3.500 TT 3.500 M: 7500.0 B 3.500 .. 4.000 T 4.000 TT 4.000 M: 7500.0 B 4.000 .. 8.000 T 8.000 TT 8.000 M: 7500.0 7500.0 B 0.000 .. 1.000 T 1.000 TT 9.000 M: 7500.0 B 1.000 .. 2.000 T 2.000 TT 10.000 M: 7500.0 B 2.000 .. 3.000 T 3.000 TT 11.000 M: 7500.0 B 3.000 .. 3.500 T 3.500 TT 11.500 M: 7500.0 B 3.500 .. 4.000 T 4.000 TT 12.000 M: 7500.0 B 4.000 .. 8.000 T 8.000 TT 16.000 M: 7500.0 7500.0 7500.0 0 AIFF **Total Rendering time was: 130.84947 secs reopened table-lookup osc.aif for playing One final question: in order to compile and link, I omitted the following files from my project. Is this correct? dnoise.c (this one should be included, I think) dnoise_int.c ustub.c rtpa.c (until I can get PortAudio working) mididevice.c (compilation issues, do I need this?) pvl_main.c Thanks very much for your help! Anthony Kozar anthony.kozar@utoledo.edu |
Date | 2004-06-17 06:29 |
From | jpff@codemist.co.uk |
Subject | [CSOUND-DEV:4826] Re: CS5 working (sort of) on MacOS 9 |
In csound5 the dnoise code has not been modified -- it is on my list. So removing it does make sense ustub.c is stub code for standalone utilities so is not part of a csound binary dnoise_int.c is the GUI for mac standalone dnoise -- not looked at yet rtpa.c is indeed portaudio playing pvl_main.c is the main program to drive the pvoc decoder pvl mididevice.c is the one i am not sure about. I have not looked at MIDI in cs5 yet. ==John ffitch |
Date | 2004-06-17 07:31 |
From | Anthony Kozar |
Subject | [CSOUND-DEV:4827] Re: CS5 working (sort of) on MacOS 9 |
Thanks, John, for the info. The dnoise errors looked like more than what I knew how to fix, so I am glad that they are expected. It looks like I made all of the correct decisions with the other files except possibly for mididevice.c. Scratch that, I just looked a little more closely now, and I see that mididevice.c was not used in the Perf 4.23 projects either. mididevice.c appears to be the machine-dependent Midi code. (Probably should be in the InOut directory then instead of OOps). There is a Mac-only file MacMidi.c that implements most of the same functions, so I think that I am in good shape. For reference, here are the errors in dnoise.c: Error : illegal implicit conversion from 'float *' to 'char *' dnoise.c line 619 choutbuf = outbuf; Error : illegal implicit conversion from 'float *' to 'char *' dnoise.c line 643 choutbuf = outbuf; Error : illegal implicit conversion from 'float *' to 'char *' dnoise.c line 1211 audtran(outbuf, O.sfsampsize*length); Error : illegal implicit conversion from 'int' to 'struct SNDFILE_tag *' dnoise.c line 1216 rewriteheader(outfd, 0); On 6/17/04 1:29 AM, jpff@codemist.co.uk |