Re: [Csnd-dev] Is this correct?
| Date | 2018-05-15 20:48 |
| From | John |
| Subject | Re: [Csnd-dev] Is this correct? |
First apologies for my messed up last message -- I had typed an answer
but decided it was rubbish bur hit the wrong key in aborting it.
I am totally unsure what the complaint is here. In "normal" csound
use an e-opcode is added to the score, and is later interrogated to see
i the infinite score was expected and adjusted to match. This commit
just makes the API the same as csound.
If this is not the case I need a complete example. I have no examples
here of using the PI so constructing a test against an unknown problem
is hard.
==John ff
> 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 20:59 |
| From | Michael Gogins |
| Subject | Re: [Csnd-dev] Is this correct? |
This is not about the Pi. I will send you my complete example soon. Regards, Mike On Tue, May 15, 2018, 15:48 John <jpff@codemist.co.uk> wrote: First apologies for my messed up last message -- I had typed an answer |
| Date | 2018-05-15 21:01 |
| From | jpff |
| Subject | Re: [Csnd-dev] Is this correct? |
typo PI -> API On Tue, 15 May 2018, Michael Gogins wrote: > This is not about the Pi. I will send you my complete example soon. > Regards, > Mike > > On Tue, May 15, 2018, 15:48 John |
| Date | 2018-05-15 21:01 |
| From | Victor Lazzarini |
| Subject | Re: [Csnd-dev] Is this correct? |
I have not tested this, but I would expect that, given no score, performance goes on forever. Victor Lazzarini Dean of Arts, Celtic Studies, and Philosophy Maynooth University Ireland > On 15 May 2018, at 20:48, John |
| Date | 2018-05-15 21:11 |
| From | jpff |
| Subject | Re: [Csnd-dev] Is this correct? |
So would I On Tue, 15 May 2018, Victor Lazzarini wrote: > I have not tested this, but I would expect that, given no score, performance goes on > forever. > > Victor Lazzarini > Dean of Arts, Celtic Studies, and Philosophy > Maynooth University > Ireland > >> On 15 May 2018, at 20:48, John |
| Date | 2018-05-16 01:44 |
| From | Michael Gogins |
| Subject | Re: [Csnd-dev] Is this correct? |
I am having trouble getting to the bottom of this. There is no question that removing the "e" opcode from the commit enables some of my HTML5 Csound pieces to perform properly, but with the "e" opcode they do not perform. However, I am having a hard time coming up with a cut-down example that reproduces the problem. Regards, Mike ----------------------------------------------------- Michael Gogins Irreducible Productions http://michaelgogins.tumblr.com Michael dot Gogins at gmail dot com On Tue, May 15, 2018 at 4:11 PM, jpff |
| Date | 2018-05-16 17:03 |
| From | Michael Gogins |
| Subject | Re: [Csnd-dev] Is this correct? |
| Attachments | performance_mode_with_e.txt performance_mode.c performance_mode_without_e.txt |
All right, attached is a C program that reproduces the error, along with log files for test cases. For performance_mode_with_e.txt, csound.c line 2065 is: corfile_puts(csound, "\ne\n#exit\n", csound->scorestr); For performance_mode_without_e.txt, csound.c line 2065 is: corfile_puts(csound, "\n#exit\n", csound->scorestr); At the top of my program is a shell command that should build the program, which is completely self-contained. Compile with -std=gnu11, which enables embedding the Csound orc and sco as multi-line string constants in the C source file. The use case is to compile an orc, run Csound without a sco for a bit, then send Csound one or more sco texts to perform. This is what I have been doing for years for visual music and other interactive Csound pieces. Before commit 926499aa96643dadafd00ce036b908488f81f79b, this worked fine. Now, Csound exits at the first call to csoundPerformKsmps. Regards, Mike ----------------------------------------------------- Michael Gogins Irreducible Productions http://michaelgogins.tumblr.com Michael dot Gogins at gmail dot com On Tue, May 15, 2018 at 8:44 PM, Michael Gogins |
| Date | 2018-05-16 21:38 |
| From | jpff |
| Subject | Re: [Csnd-dev] Is this correct? |
I get totakly different beaviour with the e in the score
C S O U N D P E R F O R M A N C E M O D E
By Michael Gogins
This program demonstrates Csound performance modes ('real-time' vs. 'non-real-time').
It attempts to answer questions that remain after reading documentation and source code.
Testing csoundCompileCsdText...
0dBFS level = 32768.0
--Csound version 6.11 (double samples) Jan 28 2018
[commit: 30810e2f5f345b2a09578ef316d0d63f2a4c1423]
libsndfile-1.0.29pre1
STARTING FILE
Creating options
Creating orchestra
closing tag
Creating score
instr Harpsichord uses instrument number 1
instr Buzzer uses instrument number 2
rtaudio: ALSA module enabled
rtmidi: ALSA Raw MIDI module enabled
displays suppressed
0dBFS level = 32768.0
ftable 101:
ftable 102:
orch now loaded
audio buffered in 256 sample-frame blocks
ALSA output: total buffer size: 1024, period size: 256
writing 512 sample blks of 64-bit floats to dac
SECTION 1:
B 0.000 .. 0.100 T 0.100 TT 0.100 M: 0 0
new alloc for instr Harpsichord:
WARNING: [minstr Harpsichord uses 11 p-fields but is given 5[m
[minstr 1 t 0.1000 d 0.8050 k 60.0000 v 60.0000 p 0.0000
[mB 0.100 .. 0.200 T 0.200 TT 0.200 M: -9.63 -17.29
new alloc for instr Buzzer:
WARNING: [minstr Buzzer uses 11 p-fields but is given 5[m
[minstr 2 t 0.2000 d 0.7000 k 64.0000 v 60.0000 p 0.0000
[mB 0.200 .. 0.300 T 0.300 TT 0.300 M: -7.44 -15.10
new alloc for instr Buzzer:
WARNING: [minstr Buzzer uses 11 p-fields but is given 5[m
[minstr 2 t 0.3000 d 0.7000 k 67.0000 v 60.0000 p 0.0000
[mB 0.300 .. 0.400 T 0.400 TT 0.400 M: -2.81 -10.47
new alloc for instr Harpsichord:
WARNING: [minstr Harpsichord uses 11 p-fields but is given 5[m
[minstr 1 t 0.4000 d 0.8050 k 71.0000 v 60.0000 p 0.0000
[mB 0.400 .. 0.700 T 0.900 TT 0.900 M: -1.45 -9.11
B 0.700 .. 0.600 T 0.905 TT 0.905 M: -10.63 -18.28
B 0.600 .. 0.950 T 0.950 TT 0.950 M: -7.33 -14.99
B 0.950 .. 0.800 T 1.000 TT 1.000 M: -13.33 -20.98
B 0.800 .. 1.050 T 1.050 TT 1.050 M: -18.04 -25.69
B 1.050 .. 0.900 T 1.205 TT 1.205 M: -19.27 -26.93
B 0.900 .. 1.506 T 1.506 TT 1.506 M: -22.59 -30.24
Score finished in csoundPerformKsmps() with 2.
inactive allocs returned to freespace
end of score. overall amps: -1.45 -9.11
overall samples out of range: 0 0
0 errors in performance
Elapsed time at end of performance: real: 1.501s, CPU: 0.140s
519 512 sample blks of 64-bit floats written to dac
Testing csoundCompileOrc...
0dBFS level = 32768.0
--Csound version 6.11 (double samples) Jan 28 2018
[commit: 30810e2f5f345b2a09578ef316d0d63f2a4c1423]
libsndfile-1.0.29pre1
instr Harpsichord uses instrument number 1
instr Buzzer uses instrument number 2
Reading options from $HOME/.csound6rc
Reading options from local directory .csound6rc
rtaudio: pulseaudio module enabled
rtmidi: ALSA Raw MIDI module enabled
displays suppressed
0dBFS level = 32768.0
ftable 101:
ftable 102:
orch now loaded
audio buffered in 256 sample-frame blocks
PulseAudio output server: default
pulseaudio output open
writing 512 sample blks of 64-bit floats to dac
SECTION 1:
rtevent: T 0.214 TT 0.214 M: 0 0
new alloc for instr Harpsichord:
WARNING: [minstr Harpsichord uses 11 p-fields but is given 5[m
[minstr 1 t 0.2145 d 0.8050 k 60.0000 v 60.0000 p 0.0000
[m rtevent: T 0.314 TT 0.314 M: -9.63 -17.29
new alloc for instr Buzzer:
WARNING: [minstr Buzzer uses 11 p-fields but is given 5[m
[minstr 2 t 0.3145 d 0.7000 k 64.0000 v 60.0000 p 0.0000
[m rtevent: T 0.415 TT 0.415 M: -7.44 -15.10
new alloc for instr Buzzer:
WARNING: [minstr Buzzer uses 11 p-fields but is given 5[m
[minstr 2 t 0.4145 d 0.7000 k 67.0000 v 60.0000 p 0.0000
[m rtevent: T 0.515 TT 0.515 M: -2.81 -10.47
new alloc for instr Harpsichord:
WARNING: [minstr Harpsichord uses 11 p-fields but is given 5[m
[minstr 1 t 0.5145 d 0.8050 k 71.0000 v 60.0000 p 0.0000
[m
A
Not worked out hat te br |
| Date | 2018-05-16 21:53 |
| From | Michael Gogins |
| Subject | Re: [Csnd-dev] Is this correct? |
I'm sorry, but I can't understand your email. What do you mean, "e in the score?" Do you mean with "e" in csound.c? What do you mean, "Not worked out hat te br program is doing yet"? Regards, Mike ----------------------------------------------------- Michael Gogins Irreducible Productions http://michaelgogins.tumblr.com Michael dot Gogins at gmail dot com On Wed, May 16, 2018 at 4:38 PM, jpff |
| Date | 2018-05-17 12:20 |
| From | John ff |
| Subject | Re: [Csnd-dev] Is this correct? |
Sorry. My attempt yesterday was flawed as I picked up old versions of the libcsound64. Will try again. Sent from TypeApp On May 16, 2018, 21:54, at 21:54, Michael Gogins |
| Date | 2018-05-17 16:34 |
| From | jpff |
| Subject | Re: [Csnd-dev] Is this correct? |
I have commited code that I think behaves as you want, but I am not totally sure it is right. I still fixes the earlier problem of not ending. Now the performans_mode program runs foreer. |
| Date | 2018-05-17 16:50 |
| From | Michael Gogins |
| Subject | Re: [Csnd-dev] Is this correct? |
Thanks, I will try this now. I'll also look at your code. Regards, Mike ----------------------------------------------------- Michael Gogins Irreducible Productions http://michaelgogins.tumblr.com Michael dot Gogins at gmail dot com On Thu, May 17, 2018 at 11:34 AM, jpff |
| Date | 2018-05-18 02:12 |
| From | Michael Gogins |
| Subject | Re: [Csnd-dev] Is this correct? |
The code looks correct, and my test program works fine here with your commit. I will test other cases in the coming days. Thanks, Mike On Thu, May 17, 2018, 11:50 Michael Gogins <michael.gogins@gmail.com> wrote: Thanks, I will try this now. I'll also look at your code. |