--- ao_oss.c.prev 2007-10-07 22:49:27.000000000 +0300 +++ ao_oss.c 2008-11-29 21:51:21.000000000 +0200 @@ -433,6 +433,7 @@ static void reset(void){ fcntl(audio_fd, F_SETFD, FD_CLOEXEC); #endif + ioctl (audio_fd, SNDCTL_DSP_SPEED, &ao_data.samplerate); oss_format = format2oss(ao_data.format); ioctl (audio_fd, SNDCTL_DSP_SETFMT, &oss_format); if(ao_data.format != AF_FORMAT_AC3) { @@ -442,7 +443,6 @@ static void reset(void){ int c = ao_data.channels-1; ioctl (audio_fd, SNDCTL_DSP_STEREO, &c); } - ioctl (audio_fd, SNDCTL_DSP_SPEED, &ao_data.samplerate); } }