Date: Tue, 26 Mar 1996 08:48:13 -0500 (EST) From: rhh@ct.picker.com (Randall Hopper) To: haver@harding.et.tudelft.nl (Bert Haverkamp) Cc: speak-freely@fourmilab.ch, freebsd-multimedia@freebsd.org, linux-sound@vger.rutgers.edu Subject: Re: Speak Freely v6.0 on VoxWare/FreeBSD/Linux (was speak-freely-digest V1 #16) Message-ID: <199603261348.IAA28365@elmer.picker.com> In-Reply-To: <199603261329.OAA04254@rumil.et.tudelft.nl> from "Bert Haverkamp" at Mar 26, 96 02:29:34 pm
next in thread | previous in thread | raw e-mail | index | archive | help
>The first patch you suggested works fine. the problem with sfspeaker >have disappeared. Glad to hear it! >>2) As I recall, the other problem I had was caused by the first hack. >> soundbyte.c:soundflush's read() was blocking. Commented that out and >> wasn't any the worse for it. Seemed to work fine. > >This second patch I don't really understand. What part do I need to >comment out? I'm not an experienced C-programmer, and my confusion is >doubled by the fact that I found two declarations for soundflush() in >soundbyte.c I tried to exclude the read command in the first >soundflush, but without result. I tried a few other things, but I kept >the same error. >I added soundbyte.c, maybe it can refresh your memory:) >The problem I now have are with sfmike: >> sfmike echo.fourmilab.ch >Space bar switches talk/pause, Esc or "q" to quit >Talk: soundflush: Interrupted system call >Talk: soundflush: Interrupted system call >Talk: soundflush: Interrupted system call >Talk: soundflush: Interrupted system call Yep. Same symptom that caused me to make the second hack. The second soundflush is for SGI's, so the first soundflush is the one to modify. I think the patch I made was to comment out the soundflush code that kicks in for Voxware/FreeBSD/Linux. ... > Sound interface for Speak Freely for Unix >/* SOUNDFLUSH -- Flush any queued sound. */ > >void soundflush() >{ > char sb[BUFL]; >#ifndef sun > int c; >#endif > >#ifndef sun #ifdef RHH_REMOVED_THIS_STUFF > while (TRUE) { > c = read(audiof, sb, BUFL < abuf_size ? BUFL : abuf_size); > if (c < 0 && errno == EAGAIN) > c = 0; > if (c < 0) > perror("soundflush"); > if (c <= 0) > break; > } #endif >#else ... Hope this helps! Randall Hopper rhh@ct.picker.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199603261348.IAA28365>