/** data specific to the alsa writer */
struct private_alsa_data {
- snd_pcm_t *handle;
- size_t bytes_per_frame;
+/** the alsa handle */
+snd_pcm_t *handle;
+/** determined and set by alsa_open() */
+size_t bytes_per_frame;
};
/*
return -E_SW_PARAMS;
pad->bytes_per_frame = snd_pcm_format_physical_width(FORMAT)
* conf.channels_arg / 8;
+// if (snd_pcm_nonblock(pad->handle, 1))
+// PARA_ERROR_LOG("%s\n", "failed to set nonblock mode");
return period_size * pad->bytes_per_frame;
}
free(pad);
}
+/** the init function of the alsa writer */
void alsa_writer_init(struct writer *w)
{
w->open = alsa_open;