Sound under OS-X

Eric Scharff Eric.Scharff at Colorado.EDU
Mon Oct 22 03:59:39 UTC 2001


On Sun, 21 Oct 2001, John M McIntosh wrote:

> Andrew C. Greenberg had reported some issues with sound under OS-X.
> Now I'm wondering if others have seen this with 10.1 Using the latest
> VM, you get lousy sound unless you increase BufferMSecs to say 300 in
> SoundPlayer>>initialize.

Didn't even know about this call. :)

I'm using 10.1, a mostly updated 3.1a image, and the Carbon 3.0.18 VM.
Same results with a 3.1.2 Carbon VM.  I was able to listen to a MIDI file
without any sound problems.  In fact, it is playing in the background, and
I am using the OS X terminal in the foreground to write this mail.

> I noted when squeak classic is in the foreground we get 0% idle time,
> however if I put all the classic apps in the background then idle CPU
> goes to about 44%, other stuff eats some time so TruBlueEnv is
> getting about 33%. Seems the TruBlueEnv naps when in the background,
> this makes the sound even uglier.

I am not running any Classic apps and avoid Classic because I don't have
tons of memory.  Classic is a hog.  Speed problems could be due to that.
Are you getting a lot of paging?

Is there a reason to run Squeak in classic?

> However if I run the carbon version of Squeak then we have about 28%
> idle cpu regardless if squeak is in the foreground or background,
> also the sound is fine. If you change BufferMSecs to say 300 then you
> eliminate most of the pops when going to the dock etc.
>
> So I'm wondering what others have observed.

I'd never tried running Squeak in the dock before that.  Cool. :)  I was
getting some pauses when switching between Terminal and Squeak (on my B&W
G3).  Increasing the BufferMSecs to 300 eliminated this almost completely.
Sometimes I get a break when switching BACK to Squeak, probably because of
the redrawing taking place.

Not sure if this would help, but the Carbon Event Manager is supposed to
provide more reliable idle timing than the classic WaitNextEvent stuff.
I'm not sure if the Carbon Event Manager (an event-based paradigm) would
play well with Squeak (a polling paradigm?)

-Eric





More information about the Squeak-dev mailing list