X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=alsa_writer.c;h=466f1e8d5cbfa53ed124f1a8a89d30808ed27d56;hp=355da05e60b029982501f30393b06bb310ff4c7d;hb=53d2ded13e848052f8d84fae2f29d0dcb46898cc;hpb=a95093cd8b62d411b9448aa77768774e1bdd81e5 diff --git a/alsa_writer.c b/alsa_writer.c index 355da05e..466f1e8d 100644 --- a/alsa_writer.c +++ b/alsa_writer.c @@ -83,7 +83,7 @@ static int alsa_open(struct writer_node *w) w->private_data = pad; snd_pcm_info_alloca(&info); err = snd_pcm_open(&pad->handle, conf->device_arg, - SND_PCM_STREAM_PLAYBACK, 0); + SND_PCM_STREAM_PLAYBACK, SND_PCM_NONBLOCK); if (err < 0) return -E_PCM_OPEN; if ((err = snd_pcm_info(pad->handle, info)) < 0) @@ -196,8 +196,8 @@ static void alsa_write_post_select(struct sched *s, struct task *t) t->ret = -E_ALSA_WRITE; return; } -// ms2tv(pad->buffer_time / 4000, &tv); - ms2tv(1, &tv); + ms2tv(pad->buffer_time / 4000, &tv); +// ms2tv(1, &tv); tv_add(&s->now, &tv, &pad->next_chunk); t->ret = ret * pad->bytes_per_frame; // PARA_INFO_LOG("ret: %d, frames: %zd\n", t->ret, frames);