I'm not any further, but this is what I've found:
I seem to get the segfault it SoundPlayer>>playLoop at:
self primSoundPlaySamples: count from: Buffer startingAt: 1.
But, I don' know really where to go from here. I checked out SoundPlugin and sqUnixSoundALSA.c and they both have the function:
int snd_PlaySamplesFromAtLength(int frameCount, int arrayIndex, int startIndex)
which I assume is what is being called from Squeak.
When I run 'configure', the audio section that is sent to the terminal looks correct:
checking for Advanced Linux Sound Architecture... yes checking for Mac OS X CoreAudio... no ******** disabling vm-sound-MacOSX checking for Network Audio System... no ******** disabling vm-sound-NAS checking for Advanced Linux Sound Architecture... yes checking for SunOS/Solaris audio... no ******** disabling vm-sound-Sun checking for custom sound support... no ******** disabling vm-sound-custom
(don't know why ALSA is mentioned twice, though.)
Here's the segfault again:
Segmentation fault
20547312 [] in >playLoop 20547404 [] in Semaphore>critical: 20547220 BlockContext>ensure: 20547128 Semaphore>critical: 20515212 >playLoop 20515028 [] in >startPlayerProcessBufferSize:rate:stereo:sound: 20515120 [] in BlockContext>newProcess Aborted
BTW, it didn't matter when I changed the sample rate to 44100, still had the segfault.
I don't know where to turn from here, short of compiling with debug flag on and starting up gdb. Any ideas much appreciated. If someone knows the architecture of what happens when the primitive is called and what should happen in the ALSA plugin code that could be helpful.
thanks for reading!