Я хочу, чтобы звуковая колонка на компьютере тишина в течение 2 секунд, записывая данные 0 на устройство "по умолчанию", используя ALSA (Advanced Linux Sound Architecture). Ниже приведен фрагмент кода.
int val
int size = 24000;
u_char *tmp_buffer = (u_char *)malloc(size);
memset(tmp_buffer,0,size);
if ((val = snd_pcm_writei(pcm_handle, tmp_buffer, size)) == -EPIPE)
{
snd_pcm_prepare(pcm_handle);
}
else if (val < 0)
{
qDebug()<<"ERROR. Can't write to PCM device " << snd_strerror(val);
}
free(tmp_buffer);
С приведенным выше кодом, он отображается как «Чак Чак ..» шум, а не тишина.
Как сделать вывод молчания на динамик за 2 секунды?