| Dave--
in re:
>> Essentially, after sndinfo reads an aiff file (touched/created in
>> SoundEdit) the EOF "mark" is gone, and when I next read the file with
>> soundin or diskin, the file and all the memory addresses after it are
>> read continuosly. I started noticing that relatively short proceesees
>...
>
>I can not make this happen - I have done the following...
>
>1) generated an AIFF file;
>2) played the file with "sndfinfo";
>3) used the file as input to "soundin";
>4) generated another file;
>5) played that file with "sndinfo";
>6) played the original file with "sndinfo".
>
>Everything looks alright so far - there must be something you guys are
>doing that I'm not - does it ALWAYS happen? Which OS release are you
>using (all bets are off with 7.5.1 - upgrade to 7.5.3 if you are using
>7.5.1).
>
>Otherwise could you send me score and orc files, even put a copy of the
>soundfiles somewhere I could get them (please don't binhex/mail them) -
>does it happen with the little "snap1" soundfile we ship with the test
>suite?
I'm on a PowerComputing PowerTower 180e, MacOs 7.5.5.
I worked with snap1, but had to do the following to make the crash
happen.
Please bear with me, especially if I do some irregular things.
1> The orc/sco setup I was using was meant for long (2-3 min) stereo
files,
so I had to modify snap1.aiff. Of course, this might invalidate using
snap1.aiff
in the first place. I open the mono snap1 in SoundEdit 16 2.0.4,
copy/paste the
mono channel into a new track to create "stereo". Then copy/paste both
channels
9 times to create a 10 sec file.
2> From Csound use sndinfo to check the length of the file (10.00)
seconds.
3> Double check that 10 is the p3 value for the inst call in the sco.
4> Generate using the sco and orc attached at end.
OR
4> Use a simple "soundin" to read the 10 sec file.
Now, the big sco/orc below is probably more dense than it needs to be,
and you'll
probably find that I'm doing something inefficiently or wrong. But this
used to work
flawlessly in 0.2.0.
My 0.3.1 workaround is to make the inst call less than the len of the
source
sound file by about 4 secs, even when all I'm doing is using a simple
"soundin"
construction instead of the longer inst below.
I hate to think that the crash is related to the timout construction I'm
using
(I've gleaned the construction I use from what's out there and basic
trial and
error) since it seems more than a coincidence that I'm trying to cut off
the instr
so that the end of the file isn't reached within the last timout loop.
When the Mac crashes, it usually freezes totally, requiring
to wake it up. The 10sec temp file is not
visible,
but my available free space is reduced as if it were. Running Norton
Utilities
tells me that I have a b-tree error, etc.
Ironically, I upgraded to Norton Utilities 3.5 this weekend, and the new
CrashGuard utility stepped in during the crash to tell me that perf
had hit a PowerPC Exception - Unmapped memeory exception. And from there
on
it was three bus errors followed by a miscellaneous harware exception.
Not too
useful I suppose since there's no stack trace. When I've run this with
MacsBug,
the crash bypasses the debugger too.
I hope that this helps, let me know what more I can do.
Grant Covell
gcc@kodak.com
azalea@world.std.com
====
ORC
sr = 44100
kr = 44100
ksmps = 1
nchnls = 2
instr 70
idur = p3
iamp = 6000
ifqm ilinrand 3500
ifm = 1
ilpan ilinrand 1
irpan = 1 - ilpan
irnddur ilinrand 5
irnddur = irnddur + 1
asrcl, asrcr soundin "snapse16.aiff", 1
asig line 2, idur, 2
asrcl balance asrcl, asig
asrcr balance asrcr, asig
ksweep line 0, idur, 1
core:
timout 0, irnddur, do
kts times
ikts = i ( kts )
irnddur ilinrand ( 4 - ( 3 * ( ikts / idur ) ) )
irnddur = irnddur + 1
ilpan ilinrand 1
irpan = 1 - ilpan
ifqm ilinrand 3500
ir1 ilinrand 10
ir2 ilinrand 10
ir3 ilinrand 10
ir4 ilinrand 10
print ikts, irnddur
reinit core
do:
krmfreqa randi ifqm, 1 / irnddur
krmfreqb rand ifqm, 1 / irnddur
krma oscili iamp, krmfreqa, ifm
krmb oscili iamp, krmfreqb, ifm
aal butterhp asrcl, krmfreqa - ir1
aar butterhp asrcr, krmfreqa - ir2
abl butterhp asrcl, krmfreqb - ir3
abr butterhp asrcr, krmfreqb - ir4
al = ( aal * krma * ( 1 - ksweep ) )
ar = ( aar * krma * ( 1 - ksweep ) )
al = al + ( abl * krmb * ksweep )
ar = ar + ( abr * krmb * ksweep )
outs al * ilpan, ar * irpan
rireturn
endin
===
SCO
f1 0 256 7 0 128 1 0 -1 128 0
i70 0 10
=== |