Hi Everyone,
Looked like it would be easier to handle all the sfront-related
emails in one response:
[on PC.saol]
[from gogins@nyc.pipeline.com]
> pc compiled with all optimizations including inlining rendered to the
> default wav soundfile in 2:16 on my Dell Pentium II 480 MHz with 128 MB Ram
> and 8 GB free on the EIDE hard disk. [...]
> I think Csound would have rendered a similar file in less
> than real time.
In sfront, pc is spending most of its time computing the buzz() core
opcode, which presently is implemented in a way that runs linearly
with the number of harmonics in sfront. There is a nice series
summation for the general form of the buzz function, that reduces
computation to be independent of number of harmonics -- I'm in the
process of adapting this summation to buzz's actual function form,
and implementing it in sfront.
Expect more "hot spot" surprises like this in sfront's library --
for example, fft and ifft are currently DFT's!
> The soundfile had some click artifacts (Cool Edit showed they were not
> just clipping).
I get a few click artifacts also, but I couldn't track down whether it
was due to the pc.saol file, or sfront -- if someone can come up with a
small example that shows the artifact, it would speed up the debugging
process.
> I also succeeded with the pc example, although again I had to write a patch
> (for drand48).
On the list of things to do for the VC++ - compatible source release
[elpelele MIDI file]
[from gogins@nyc.pipeline.com and rwd@cableinet.co.uk]
Interesting, I'll look into what's going on here, this file reads and
renders correctly using Linux/HPUX/IRIX with gcc and with Solaris with
Sun's cc, so zero-order problems won't be an issue here ...
> With this, sfront executes, and generates sa.c, which in turn compiles
> and eventually crunches out elpelele.wav. Except that there ~is~ a
> problem, because the music comes to an abrupt halt (notes linger for a
> few seconds and fade) around 110 seconds in
Hmm, I wonder if the problem here is that the elpelele.mid file is corrupted
somehow during the process of moving it over to Windows -- you might
try downloading the file directly from Eric's site:
http://sound.media.mit.edu/~eds/mpeg4-old/examples/elpelele.mid
and diff'ing it with the one you have.
If it is corrupt, I think sfront did the right thing in not trying to
recover from the error -- having looked at sox's code, where it anticipates
the bugs lots of popular software packages make in writing AIFF and WAV
files, it takes a lot of work to write a fault-tolerant binary file reader,
--jl
This archive was generated by hypermail 2b29 : Wed May 10 2000 - 12:15:28 EDT