err = snd_pcm_open (&pcm, pcmname, SND_PCM_STREAM_PLAYBACK,
SND_PCM_NONBLOCK);
if (0 > err) {
err = snd_pcm_open (&pcm, pcmname, SND_PCM_STREAM_PLAYBACK,
SND_PCM_NONBLOCK);
if (0 > err) {
err = snd_pcm_hw_params_set_access (pcm, hw,
SND_PCM_ACCESS_MMAP_INTERLEAVED);
if (0 > err) {
err = snd_pcm_hw_params_set_access (pcm, hw,
SND_PCM_ACCESS_MMAP_INTERLEAVED);
if (0 > err) {
case 44100:
err = snd_pcm_hw_params_set_rate_near (pcm, hw, &rate, 0);
if (0 > err) {
case 44100:
err = snd_pcm_hw_params_set_rate_near (pcm, hw, &rate, 0);
if (0 > err) {
goto error;
}
err = snd_pcm_hw_params_set_period_size_near (pcm, hw, &frag_size, 0);
if (0 > err) {
goto error;
}
err = snd_pcm_hw_params_set_period_size_near (pcm, hw, &frag_size, 0);
if (0 > err) {
(int) frag_size, snd_strerror (err));
goto error;
}
err = snd_pcm_hw_params (pcm, hw);
if (0 > err) {
(int) frag_size, snd_strerror (err));
goto error;
}
err = snd_pcm_hw_params (pcm, hw);
if (0 > err) {