static PaError mixer_init()
{
int source, soft_audio_mute, mute, volume, fd = 0;
PaError result = paNoError;
PA_DEBUG(( "mixer_init executed.\n" ));
ENSURE_((fd = open(DEVICE_MIXER_BASE, O_WRONLY)), paInternalError);
source = SOUND_MASK_PCM;
ENSURE_(ioctl(fd, EMPEG_MIXER_WRITE_SOURCE, &source), paInternalError);
soft_audio_mute = 0;
ENSURE_(ioctl(fd, EMPEG_MIXER_SET_SAM, &soft_audio_mute), paInternalError);
mute = 0;
ENSURE_(ioctl(fd, EMPEG_MIXER_WRITE_FLAGS, &mute), paInternalError);
volume = 100 | (100 << 8);
ENSURE_(ioctl(fd, MIXER_WRITE( SOUND_MIXER_VOLUME ), &volume), paInternalError);
error:
if (fd) close(fd);
return result;
}