[Csnd-dev] Is this correct?
Date | 2018-05-15 19:12 |
From | Michael Gogins |
Subject | [Csnd-dev] Is this correct? |
After this commit index 9b95674df..bf4c58881 100644 @@ -2062,7 +2062,7 @@ int csoundReadScoreInternal(CSOUND *csound, const char *str) csound->scorestr = corfile_create_w(csound); corfile_puts(csound, (char *)str, csound->scorestr); //#ifdef SCORE_PARSER - corfile_puts(csound, "\n#exit\n", csound->scorestr); + corfile_puts(csound, "\ne\n#exit\n", csound->scorestr); //#endif corfile_flush(csound, csound->scorestr); /* copy sorted score name */ After this change, all pieces using the API calls shown below, exit immediately upon calling csoundPerformKsmps. It used to be that with this sequence of calls, pieces would perform indefinitely, even if there were no pending score events, thus permitting the user to send score events at any time during an indefinite performance. I suspect a mistake in sending the "e" opcode in all cases. Regards, Mike csound = csoundCreate(0); csoundSetOption(csound, "-d"); csoundSetOption(csound, "-m167"); csoundSetOption(csound, "-odac"); csoundCompileOrc(csound, orc); csoundReadScore(csound, sco); csoundStart(csound); while ((result = csoundPerformKsmps(csound)) == 0) {}; csoundDestroy(csound); ----------------------------------------------------- Michael Gogins Irreducible Productions http://michaelgogins.tumblr.com |
Date | 2018-05-15 19:36 |
From | Victor Lazzarini |
Subject | Re: [Csnd-dev] Is this correct? |
I suspect you are right. This seems to have been an attempt to fix another issue reported here, but may be breaking other things. Victor Lazzarini Dean of Arts, Celtic Studies, and Philosophy Maynooth University Ireland > On 15 May 2018, at 19:13, Michael Gogins |
Date | 2018-05-15 19:39 |
From | jpff |
Subject | Re: [Csnd-dev] Is this c |
On Tue, 15 May 2018, Michael Gogins wrote: > After this commit > > index 9b95674df..bf4c58881 100644 > @@ -2062,7 +2062,7 @@ int csoundReadScoreInternal(CSOUND *csound, > const char *str) > csound->scorestr = corfile_create_w(csound); > corfile_puts(csound, (char *)str, csound->scorestr); > //#ifdef SCORE_PARSER > - corfile_puts(csound, "\n#exit\n", csound->scorestr); > + corfile_puts(csound, "\ne\n#exit\n", csound->scorestr); > //#endif > corfile_flush(csound, csound->scorestr); > /* copy sorted score name */ > > After this change, all pieces using the API calls shown below, exit > immediately upon calling csoundPerformKsmps. It used to be that with > this sequence of calls, pieces would perform indefinitely, even if > there were no pending score events, thus permitting the user to send > score events at any time during an indefinite performance. > > I suspect a mistake in sending the "e" opcode in all cases. > > Regards, > Mike > > csound = csoundCreate(0); > csoundSetOption(csound, "-d"); > csoundSetOption(csound, "-m167"); > csoundSetOption(csound, "-odac"); > csoundCompileOrc(csound, orc); > csoundReadScore(csound, sco); > csoundStart(csound); > while ((result = csoundPerformKsmps(csound)) == 0) {}; > csoundDestroy(csound); > > > ----------------------------------------------------- > Michael Gogins > Irreducible Productions > http://michaelgogins.tumblr.com > Michael dot Gogins at gmail dot com |
Date | 2018-05-15 20:09 |
From | Michael Gogins |
Subject | Re: [Csnd-dev] Is this c |
Although this code was compiled using C++, it is C code, and would behave the same way in a C program. Regards, Mike ----------------------------------------------------- Michael Gogins Irreducible Productions http://michaelgogins.tumblr.com Michael dot Gogins at gmail dot com On Tue, May 15, 2018 at 2:39 PM, jpff |